|
|
virtual void | SetMaterial (const Material &material) noexcept=0 |
| | Sets the physical material for the static track.
|
|
virtual const Material & | GetMaterial () const noexcept=0 |
| | Gets the physical material for the static track.
|
| virtual const Shape & | GetShape () const noexcept=0 |
| virtual void | Attach (std::shared_ptr< const Section > pSection) noexcept=0 |
| | Sets a Section describing the lateral geometry as a profile.
|
| virtual std::shared_ptr< const Section > | DetachSection () noexcept=0 |
| | Detaches the Section from the track.
|
| virtual std::shared_ptr< const Section > | GetSection () const noexcept=0 |
| virtual void | Attach (std::shared_ptr< const Curve > pCurve, common::Interval< Length > curveSegment={0_m,+infinite__length})=0 |
| | Attaches a Curve to the track.
|
| virtual void | Attach (std::pair< std::shared_ptr< const Curve >, common::Interval< Length > > curve)=0 |
| | Attaches a Curve to the track.
|
| virtual void | Attach (std::pair< std::unique_ptr< const Curve >, common::Interval< Length > > &curve)=0 |
| | Attaches a Curve to the track.
|
| virtual void | Attach (std::unique_ptr< RoadwayTwist > pTwist)=0 |
| virtual void | Attach (std::shared_ptr< Sensor > pSensor, const TrackLocation &tracklocation)=0 |
| | Attaches a Sensor at the specified location to this track. If already attached, the Sensor will be detached from its previous location.
|
| virtual void | Attach (std::shared_ptr< Signal > pSignal, const common::Interval< Length > &trackRange)=0 |
| | Attaches a Signal to the specified range to this track.
|
| virtual void | Attach (std::shared_ptr< Signal > pSignal, const TrackLocation &location)=0 |
| | Attaches a Signal to the specified location to this track.
|
|
virtual const spat::Frame< Length, One > & | GetFrame () const noexcept=0 |
| | Gets the pose of the track relative to its parent TrackCollection.
|
| virtual const spat::Frame< Length, One > & | GetAbsoluteFrame () const noexcept=0 |
| | Gets the frame relative to the Module, this track is attached to. I.e. the TrackCollection's transformation.
|
| virtual void | Couple (std::pair< std::shared_ptr< TrackBuilder >, Track::EndType > thisEnd, std::pair< std::shared_ptr< TrackBuilder >, Track::EndType > othersEnd)=0 |
| | Couple this track at thisend with pOtherTrack at othersend.
|
| virtual void | DeCouple (EndType thisEnd=EndType::any, bool oneSided=false)=0 |
| | Remove coupling from this end.
|
| virtual void | Flip (bool flipAttached=false)=0 |
| | Exchanges start and end of the track, but keeps geometry.
|
| virtual void | CreateEndTransitionSignal (EndType atend)=0 |
| | Creates an internal Signal at the end of the track, so that a SignalTarget receives a message if it enters the track.
|
| virtual void | DestroyEndTransitionSignal (EndType atend)=0 |
| | Destroys the internal transition Signal.
|
|
virtual void | SetFrame (const spat::Frame< Length, One > &frame) noexcept=0 |
| | Sets the frame directly.
|
| virtual void | SetFrame (const spat::Frame< Length, One > &start, Length s, bool bAllowTwistOffset=true)=0 |
| | Sets the frame so that Transition(s,start) will give start.
|
| virtual std::pair< std::shared_ptr< const Curve >, common::Interval< Length > > | DetachCurve () noexcept=0 |
| | Detaches the Curve from the track.
|
| virtual std::pair< std::shared_ptr< const Curve >, common::Interval< Length > > | GetCurve () const noexcept=0 |
| virtual std::unique_ptr< RoadwayTwist > | DetachTwist ()=0 |
| | Detaches the current Twist from the track.
|
| virtual RoadwayTwist & | GetTwist () const noexcept=0 |
|
virtual bool | Attached (const Sensor &sensor, TrackLocation *pTrackLocation=nullptr) const =0 |
| | Gets information about an attached Sensor.
|
|
virtual void | Detach (const Sensor &sensor) noexcept=0 |
| | Detaches a Sensor from the track.
|
| virtual std::shared_ptr< Sensor > | GetSensor (int idx) const noexcept=0 |
| virtual int | CountSensors () const =0 |
|
virtual bool | Attached (const Signal &signal, TrackRange *pTrackRange=nullptr) const =0 |
| | Gets information about an attached Signal.
|
| virtual void | Detach (const Signal &signal)=0 |
| | Detaches a Signal from the track and all adjacent tracks.
|
| virtual const char * | TypeName () const noexcept=0 |
|
virtual TrackType | GetTrackType () const noexcept=0 |
| virtual std::shared_ptr< const Body > | GetBody () const noexcept=0 |
| virtual bool | IsValid () const noexcept=0 |
| virtual Length | GetLength () const noexcept=0 |
| virtual common::Interval< Length > | Range () const noexcept=0 |
| virtual bool | IsCoupled (EndType atend=EndType::any) const noexcept=0 |
| virtual AnglePerLength | Curvature (Length s) const =0 |
| virtual AnglePerLength | Torsion (Length s) const =0 |
| virtual Angle | GetTwistValue (Length s) const =0 |
| virtual AnglePerLength | GetTwistD1 (Length s) const =0 |
| virtual bool | IsFlat () const noexcept=0 |
| virtual spat::Vector< One > | LocalUp () const =0 |
| | Gives the Curve's idiosyncratic up direction transformed by the track's frame. Some curves maintain some idea about where they have their upside, either because of their form (e.g Helix) or because it is extra defined (e.g. for Line). Some curves maintain no such notion (e.g. Cubic).
|
| virtual void | TNBFrame (Length s, spat::Frame< Length, One > &frame) const =0 |
| | Receives the TNB - Frame of the curve at the location.
|
| virtual TrackEnd | TransitionEnd (EndType thisEnd) const noexcept=0 |
| | Gives the Track coupled to this at the specified end.
|
| virtual void | DoTrigger (const common::Interval< Length > &range, const Event &_event) const =0 |
| virtual bool | DoSignal (const common::Interval< Length > &range, Orientation orientation, SignalTarget &signalTarget) const =0 |
| virtual Signal * | GetSignal (const TrackLocation &loc) const noexcept=0 |
| | Gets the first Signal in the direction given by loc.
|
| virtual Connector * | GetConnector (EndType atend) const noexcept=0 |
| | retreives a connector (e.g. a Switch) at the respective track end.
|
| virtual Connector * | GetConnector (const Orientation &inDirection) const noexcept=0 |
| | retrieves the next connector (e.g. a Switch) that can be found in the given direction.
|
| virtual void | UserData (TrackUserData *pData) noexcept=0 |
| | Sets a pointer to user provided data.
|
| virtual TrackUserData * | UserData () const noexcept=0 |
| virtual std::shared_ptr< const TrackBuilder > | This () const noexcept=0 |
| | Gets a shared pointer to this.
|
| virtual std::shared_ptr< TrackBuilder > | This () noexcept=0 |
| virtual std::shared_ptr< const MovableTrack > | GetMovableTrack () const noexcept=0 |
| virtual std::shared_ptr< MovableTrack > | GetMovableTrack () noexcept=0 |
| virtual std::shared_ptr< const ParallelizableTrack > | GetParallelizableTrack () const noexcept=0 |
| virtual std::shared_ptr< ParallelizableTrack > | GetParallelizableTrack () noexcept=0 |
|
virtual void | Transition (Length s, spat::Position< Length > &pos) const =0 |
| | Gives information about the pose on the track at the specified parameter value.
|
|
virtual void | Transition (Length s, spat::Vector< One > &tan) const =0 |
| | Gives information about the pose on the track at the specified parameter value.
|
|
virtual void | Transition (Length s, spat::VectorBundle< Length, One > &bundle) const =0 |
| | Gives information about the pose on the track at the specified parameter value.
|
|
virtual void | Transition (Length s, spat::VectorBundle2< Length, One > &bundle) const =0 |
| | Gives information about the pose on the track at the specified parameter value.
|
|
virtual void | Transition (Length s, spat::Frame< Length, One > &frame) const =0 |
| | Gives information about the pose on the track at the specified parameter value.
|
|
virtual void | Transition (Length s, TrackData< Real > &td, Real engine_meters_per_unit) const =0 |
| | Gives information about the pose on the track at the specified parameter value.
|
| virtual void | Reserve (common::Interval< Length > range, IDType forID)=0 |
| | Reserves a parameter range on the track for a specified id.
|
| virtual ReservationIterator | BeginReservations () const noexcept=0 |
| virtual ReservationIterator | EndReservations () const noexcept=0 |
| virtual void | DeleteReservation (common::Interval< Length > inRange, IDType forID=anyID) noexcept=0 |
| | Deletes a reservation with specified ID, if it overlaps with the specified range.
|
|
virtual bool | IsReserved (common::Interval< Length > inRange, IDType forID=anyID) const noexcept=0 |
| | Is here a reservation for the specified ID inside the range on the track?
|
| virtual std::vector< Overlap > | Overlaps (IDType forID) const =0 |
| | Finds overlapping areas for reservations.
|
| virtual const std::string & | Reference (const std::string &name) const=0 |
| | Gets a reference that was set for this object by name.
|
|
virtual const std::vector< char const * > & | ReferenceNames (const std::string &namePart) const=0 |
| | Searches for all reference names that countain namePart as substring in the name.
|
| virtual IDType | ID () const noexcept=0 |
|
| Identified (const Identified &)=delete |
|
Identified & | operator= (const Identified &)=delete |