X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibr2c2%2Fblock.h;h=c3b7c8742fe8faa247b5af2948c885eea7c522a7;hb=5a02a4f42dfc5dc6b4daef5fc02431bdfb2968d8;hp=7d6211b0a5b303b9e85669fb96d72882606c838d;hpb=73edcbd8841752a2722fc8b3927fee2abbbba750;p=r2c2.git diff --git a/source/libr2c2/block.h b/source/libr2c2/block.h index 7d6211b..c3b7c87 100644 --- a/source/libr2c2/block.h +++ b/source/libr2c2/block.h @@ -22,7 +22,6 @@ public: Track *track; unsigned track_ep; Block *link; - unsigned paths; Endpoint(Track *, unsigned); @@ -35,6 +34,7 @@ private: unsigned id; unsigned sensor_id; unsigned turnout_id; + bool conflict; TrackCircuit *sensor; std::vector endpoints; Train *train; @@ -44,13 +44,14 @@ public: ~Block(); private: + virtual void on_track_added(Track &); virtual Validity check_validity(Track &) const; public: unsigned get_id() const { return id; } unsigned get_sensor_id() const { return sensor_id; } unsigned get_turnout_id() const { return turnout_id; } - TrackCircuit &get_sensor() const { return *sensor; } + TrackCircuit *get_sensor() const { return sensor; } const std::vector &get_endpoints() const { return endpoints; } const Endpoint &get_endpoint(unsigned) const; int get_endpoint_by_link(Block &) const; @@ -61,7 +62,6 @@ public: bool reserve(Train *); Train *get_train() const { return train; } private: - void find_paths(const TrackIter &, unsigned); void determine_id(); };