X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibmarklin%2Fblock.h;h=770a3520289227830b37d40df45ce1d12ca83cc8;hb=39566dc89cdadf4f6e701a14b5d9049f22b591fb;hp=076637240a21835c2579a269ef1fa05aba0503ab;hpb=1d735b80482317fd930eb47ca255ab9f1f120a7d;p=r2c2.git diff --git a/source/libmarklin/block.h b/source/libmarklin/block.h index 0766372..770a352 100644 --- a/source/libmarklin/block.h +++ b/source/libmarklin/block.h @@ -1,3 +1,10 @@ +/* $Id$ + +This file is part of the MSP Märklin suite +Copyright © 2006-2009 Mikkosoft Productions, Mikko Rasa +Distributed under the GPL +*/ + #ifndef MARKLIN_3D_BLOCK_H_ #define MARKLIN_3D_BLOCK_H_ @@ -15,9 +22,9 @@ class Block public: struct Endpoint { - Track *track; + Track *track; unsigned track_ep; - Block *link; + Block *link; unsigned routes; Endpoint(Track *, unsigned); @@ -25,20 +32,22 @@ public: private: TrafficManager &trfc_mgr; - unsigned id; - unsigned sensor_id; - std::set tracks; + unsigned id; + unsigned sensor_id; + unsigned turnout_id; + std::set tracks; std::vector endpoints; - const Train *train; + const Train *train; public: Block(TrafficManager &, Track &); unsigned get_sensor_id() const { return sensor_id; } + unsigned get_turnout_id() const { return turnout_id; } const std::set &get_tracks() const { return tracks; } const std::vector &get_endpoints() const { return endpoints; } int get_endpoint_by_link(const Block &) const; - int traverse(unsigned) const; + int traverse(unsigned, float * =0) const; void check_link(Block &); Block *get_link(unsigned) const; bool reserve(const Train *);