namespace Marklin {
+class Block;
class Layout;
class TrackType;
private:
Layout &layout;
const TrackType &type;
+ Block *block;
Point pos;
float rot;
float slope;
Layout &get_layout() const { return layout; }
const TrackType &get_type() const { return type; }
+ void set_block(Block *);
+ Block &get_block() const;
void set_position(const Point &);
void set_rotation(float);
void set_slope(float);
void set_active_path(unsigned);
unsigned get_active_path() const { return active_path; }
- int get_endpoint_by_link(const Track &) const;
+ int get_endpoint_by_link(Track &) const;
Point get_endpoint_position(unsigned) const;
float get_endpoint_direction(unsigned) const;
bool snap_to(Track &, bool);