Trax3 3.1.0
trax track library
Loading...
Searching...
No Matches
trax::TrackEndTransition Struct Referenceabstract

A Signal that can be placed at track couplings to signal that a Train runs over the coupling between two tracks. More...

#include <C:/Trend/Development/Trax3/Code/trax/Signal.h>

Inheritance diagram for trax::TrackEndTransition:

Public Member Functions

virtual TrackFrom (Track::EndType &end) const =0
virtual TrackFrom () const =0
virtual TrackTo (Track::EndType &end) const =0
virtual TrackTo () const =0
Public Member Functions inherited from trax::Signal
virtual const char * TypeName () const noexcept=0
virtual Status Set (Status status, bool pulse=true)=0
 Set the Signal's setting.
virtual void Toggle (bool pulse=true)=0
 Sets the signal state to the next setting.
virtual Status Get () const =0
 Get the Signal's setting.
virtual int CountStatus () const =0
 Gets the number of signal status the signal provides.
virtual void Attach (TrackBuilder *pTrackBuilder) noexcept=0
 Attaches the Signal to a TrackBuilder.
virtual TrackBuilderTrackAttached () const =0
virtual void GetTrackRange (TrackRange &trackRange) const =0
 Gets the range on the track on wich the signal is effective.
virtual Location GetLocation () const =0
 Creates a Location for the signals reference point on the tracks.
virtual MultiPlugPlugToToggle ()=0
virtual JackJackOnChange ()=0
virtual JackJackOn (Status status)=0
 Gets a Jack that pulses its Plug if the specified Status is set.
virtual JackJackOnChangeTo (Status status)=0
 Gets a Jack that pulses its Plug if the specified Status is set and was not set before.
virtual MultiPlugPlugTo (Status status)=0
 Gets a Plug that switches to the specified Status.
virtual void RegisterSockets (SocketRegistry &modul)=0
 Registers all the Plugs with the module and supplies the Jacks with plug ids for connecting.
virtual void UnregisterSockets (SocketRegistry &modul)=0
 Removes all references to Plugs and Jacks from the module.
Public Member Functions inherited from trax::Identified< Signal >
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

Static Public Member Functions

static dclspc std::unique_ptr< TrackEndTransitionMake (Track *pToTrack, Track::EndType toEnd) noexcept
 Makes a standard TrackEndTransition object.

Additional Inherited Members

Public Types inherited from trax::Signal
enum class  Status {
  none = -1 , stop = 0 , clear = 1 , slow ,
  velocity0 = stop , velocity1 = clear , velocity2 = slow , velocity3 ,
  velocity4 , velocity5 , velocity6 , velocity7 ,
  velocity8 , velocity9 , velocity10 , velocity11 ,
  velocity12 , velocityMax = velocity12 , caution , doors_open ,
  doors_close , uncouple , lights_on , jump ,
  count , toggle , change
}
 Various Signal status settings.

Detailed Description

A Signal that can be placed at track couplings to signal that a Train runs over the coupling between two tracks.

Member Function Documentation

◆ From() [1/2]

virtual Track * trax::TrackEndTransition::From ( ) const
pure virtual
Returns
The origin track at a track transition.

◆ From() [2/2]

virtual Track * trax::TrackEndTransition::From ( Track::EndType & end) const
pure virtual
Parameters
endReference to Track::EndType to receive the tracks end.
Returns
The origin track at a track transition.

◆ To() [1/2]

virtual Track * trax::TrackEndTransition::To ( ) const
pure virtual
Returns
The target track at a track transition.

◆ To() [2/2]

virtual Track * trax::TrackEndTransition::To ( Track::EndType & end) const
pure virtual
Parameters
endReference to Track::EndType to receive the tracks end.
Returns
The target track at a track transition.

The documentation for this struct was generated from the following file:
  • C:/Trend/Development/Trax3/Code/trax/Signal.h