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

A Fleet holds Trains and (topmost) Bogies via their common interface RailRunner. More...

#include <C:/Trend/Development/Trax3/Code/trax/rigid/trains/collections/Fleet.h>

Inheritance diagram for trax::Fleet:

Public Member Functions

virtual void EnableTrainGeneration (bool bEnable=true) noexcept=0
 Enables or disables generation of trains due to decoupling.
virtual bool IsTrainGenerationEnabled () const noexcept=0
Public Member Functions inherited from trax::Collection< Fleet, Train >
virtual const char * TypeName () const noexcept=0
virtual bool IsValid () const noexcept=0
 Checks whether the elements in this collection are valid.
virtual IDType Add (std::shared_ptr< Train > pValue_Type)=0
 Adds an element to the container and returns its index in the container.
virtual IDType AddRelaxed (std::shared_ptr< Train > pTraxType)=0
 Adds an element to the container and returns its index in the container. Does not throw.
virtual bool Remove (Train *pValue_Type, bool zeroIDs=false)=0
 Removes an element from this container.
virtual int Take (Fleet &collection_Type)=0
 Moves all the items from another container to this container.
virtual void Clear ()=0
 Removes all the elements from this container.
virtual int Count () const=0
virtual iterator begin ()=0
virtual const_iterator cbegin () const=0
virtual iterator end ()=0
virtual const_iterator cend () const=0
virtual std::shared_ptr< TrainGetFirst () const=0
virtual std::shared_ptr< TrainGetNext (const std::shared_ptr< Train > &pValue_Type) const=0
virtual std::shared_ptr< TrainGetLast () const=0
virtual std::shared_ptr< TrainGetPrevious (const std::shared_ptr< Train > &pValue_Type) const=0
virtual void PushActive (IDType id)=0
 Pushes an element on the activety stack.
virtual void PopActive ()=0
 Pops an element from the activity stack.
virtual std::shared_ptr< TrainGetActive () const=0
virtual void ShiftIDs (int offset)=0
 Adds an offset to all ids.
virtual IDType MaxID () const=0
virtual IDType MinID () const=0
 Collection (const Collection &)=delete
Collection & operator= (const Collection &)=delete
virtual std::shared_ptr< TrainGet (IDType id) const=0
virtual bool IsMember (const value_type &item) const=0
Public Member Functions inherited from trax::Simulated
virtual bool Start (Scene &scene)=0
 Called if the simulation is started.
virtual void Idle ()=0
 Called during the simulation calculations, to perform tasks foreign to the physical simulation.
virtual void Update (Time dt=fixed_timestep)=0
 Called to update the simulated object after the simuation step finishes.
virtual void Pause () noexcept=0
 Called if the simulation is paused.
virtual void Resume () noexcept=0
 Called if the simulation is resumed after pause.
virtual void Stop () noexcept=0
 Called if the simulation is stopped.

Static Public Member Functions

static dclspc std::unique_ptr< FleetMake () noexcept
 Makes a standard TrackCollection object.

Additional Inherited Members

Public Types inherited from trax::Collection< Fleet, Train >
using iterator
using const_iterator
using collection_type
using value_type
Protected Member Functions inherited from trax::Collection< Fleet, Train >
virtual void SetDecorator (Fleet *pCollection_TypeDecorator)=0
Protected Attributes inherited from trax::Collection< Fleet, Train >
friend Decorator< Collection_Type >

Detailed Description

A Fleet holds Trains and (topmost) Bogies via their common interface RailRunner.

Member Function Documentation

◆ EnableTrainGeneration()

virtual void trax::Fleet::EnableTrainGeneration ( bool bEnable = true)
pure virtualnoexcept

Enables or disables generation of trains due to decoupling.

Parameters
bEnabletrue to enable, false to disable.

◆ IsTrainGenerationEnabled()

virtual bool trax::Fleet::IsTrainGenerationEnabled ( ) const
pure virtualnoexcept
Returns
true if the train generation feature is enabled.

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