![]() |
Trax3 3.1.0
trax track library
|
A Signal that triggers a Train to jump to a jump site. More...
#include <C:/Trend/Development/Trax3/Code/trax/Signal.h>

Public Member Functions | |
| virtual void | Target (const Location &target)=0 |
| Sets the target to a location. | |
| virtual void | Target (std::shared_ptr< Depot > pDepot)=0 |
| Sets the target to a depot. | |
| virtual bool | IsTargetLocation () const =0 |
| virtual const Location & | TargetLocation () const =0 |
| virtual std::shared_ptr< Depot > | TargetDepot () const =0 |
| virtual Jack & | JackOnJump ()=0 |
| Gets a Jack that pulses its Plug if the signal is set to jump. | |
| virtual Jack & | JackOnChangeToJump ()=0 |
| Gets a Jack that pulses its Plug if the signal is set to jump and was not set so before. | |
| virtual MultiPlug & | PlugToJump ()=0 |
| Gets a Plug that sets the signal to jump. | |
| virtual Jack & | JackOnClear ()=0 |
| Gets a Jack that pulses its Plug if the signal is set to clear. | |
| virtual Jack & | JackOnChangeToClear ()=0 |
| Gets a Jack that pulses its Plug if the signal is set to clear and was not set so before. | |
| virtual MultiPlug & | PlugToClear ()=0 |
| Gets a Plug that sets the signal to clear. | |
| 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 TrackBuilder * | TrackAttached () 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 MultiPlug & | PlugToToggle ()=0 |
| virtual Jack & | JackOnChange ()=0 |
| virtual Jack & | JackOn (Status status)=0 |
| Gets a Jack that pulses its Plug if the specified Status is set. | |
| virtual Jack & | JackOnChangeTo (Status status)=0 |
| Gets a Jack that pulses its Plug if the specified Status is set and was not set before. | |
| virtual MultiPlug & | PlugTo (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< JumpSite > | Make () noexcept |
| Makes a JumpSite 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. | |
A Signal that triggers a Train to jump to a jump site.
A 'train jump' will be performed as soon as the train's first WheelFrame will pass the JumpSite's range starting point and will jump to the attached JumpSite's range end point plus that piece of arc length that it overshot the starting point in the simulation step. The train will keep its velocities and will move in the target JumpSite's direction. A JumpSite with range 0 and itself as a jump target will not alter the train movement, since it performes a jump to the location of the next simulation step.
|
pure virtual |
|
pure virtual |
|
pure virtual |