43 static dclspc std::unique_ptr<Event>
Make() noexcept;
46 virtual ~Event() = default;
48 Event( Event&& ) = delete;
49 Event& operator=( const Event& ) = delete;
50 Event& operator=( Event&& ) = delete;
53 Event( const Event& ) = default;
70 static dclspc std::unique_ptr<EventFilter>
Make( EventFilter::Type type = EventFilter::Type::any )
noexcept;
73 static std::string From( Type type );
75 static Type From(
const std::string& type );
78 virtual std::string Name()
const = 0;
80 virtual void Name(
const std::string& name ) = 0;
82 virtual Type GetType() const noexcept = 0;
84 virtual
void SetType( Type type ) noexcept = 0;
86 virtual
void TrainTip(
bool bTrainTip ) noexcept = 0;
88 virtual
bool TrainTip() const noexcept = 0;
90 virtual
void TrainEnd(
bool bTrainEnd ) noexcept = 0;
92 virtual
bool TrainEnd() const noexcept = 0;
Home of the Track and TrackBuilder interfaces.
A Location specifies a position on a track system by referencing a track and a TrackLocation on it.
Definition Location.h:110
Namespace of common utility classes and methods.
Definition Helpers.h:43
Namespace of all the trax track libraries classes and methods.
Definition Collection.h:17
An interval describes the area between two numbers. It is understood to contain the near one and exlu...
Definition Interval.h:42
An event is sent to a sensor if it gets triggered.
Definition Event.h:57
static dclspc std::unique_ptr< EventFilter > Make(EventFilter::Type type=EventFilter::Type::any) noexcept
Makes a EventFilter object.
static dclspc std::unique_ptr< Event > Make() noexcept
Makes a simple unqualified Event object.