libnolimits  1.0.0-beta
A NoLimits Roller Coaster 1 and 2 Library written in C++, which provides functionality to manipulate and create NoLimits 2 Parks or NoLimits 1 Tracks programmatically.
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
NoLimits::NoLimits2::SpecialTrack Class Reference

#include <SpecialTrack.h>

Collaboration diagram for NoLimits::NoLimits2::SpecialTrack:
[legend]

Public Types

enum  SpecialTrackType { None, SwitchTrackFork, SwitchTrackMerge, Transfer }
 
enum  DisplayStructure { Simple, Off }
 
enum  TrackType { None, Custom, SpecialTrack }
 

Public Member Functions

 SpecialTrack ()
 
 SpecialTrack (SpecialTrackType specialTrackType)
 
void debug ()
 
SpecialTrackType getSpecialTrackType () const
 
void setSpecialTrackType (const SpecialTrackType &specialTrackType)
 
std::string getName () const
 
void setName (const std::string &value)
 
glm::vec3 getPosition () const
 
void setPosition (const glm::vec3 &value)
 
glm::vec3 getRotation () const
 
void setRotation (const glm::vec3 &value)
 
std::vector< uint32_t > getInput () const
 
uint32_t insertInput (uint32_t value)
 
std::vector< uint32_t > getOutput () const
 
uint32_t insertOutput (uint32_t value)
 
float getSwitchTime () const
 
void setSwitchTime (float value)
 
std::vector< Segment * > getSegment () const
 
uint32_t insertSegment (Segment *value)
 
TrackType getTrackType () const
 
void setTrackType (const TrackType &value)
 
virtual SectiongetSectionByName (std::string name)
 

Static Public Member Functions

static SpecialTrackcreateSpecialTrackFromType (SpecialTrackType specialTrackType)
 

Private Attributes

SpecialTrackType _specialTrackType
 
std::string name
 
glm::vec3 position
 
glm::vec3 rotation
 
std::vector< uint32_t > input
 
std::vector< uint32_t > output
 
float switchTime
 
std::vector< Segment * > segment
 

Member Enumeration Documentation

◆ DisplayStructure

Enumerator
Simple 
Off 

◆ SpecialTrackType

Enumerator
None 
SwitchTrackFork 
SwitchTrackMerge 
Transfer 

◆ TrackType

Enumerator
None 
Custom 
SpecialTrack 

Constructor & Destructor Documentation

◆ SpecialTrack() [1/2]

NoLimits::NoLimits2::SpecialTrack::SpecialTrack ( )
inline

◆ SpecialTrack() [2/2]

NoLimits::NoLimits2::SpecialTrack::SpecialTrack ( SpecialTrackType  specialTrackType)
inline

Member Function Documentation

◆ createSpecialTrackFromType()

SpecialTrack * NoLimits::NoLimits2::SpecialTrack::createSpecialTrackFromType ( SpecialTrack::SpecialTrackType  specialTrackType)
static

◆ debug()

void NoLimits::NoLimits2::SpecialTrack::debug ( )
inlinevirtual

◆ getInput()

std::vector< uint32_t > NoLimits::NoLimits2::SpecialTrack::getInput ( ) const

◆ getName()

std::string NoLimits::NoLimits2::SpecialTrack::getName ( ) const

◆ getOutput()

std::vector< uint32_t > NoLimits::NoLimits2::SpecialTrack::getOutput ( ) const

◆ getPosition()

glm::vec3 NoLimits::NoLimits2::SpecialTrack::getPosition ( ) const

◆ getRotation()

glm::vec3 NoLimits::NoLimits2::SpecialTrack::getRotation ( ) const

◆ getSectionByName()

virtual Section* NoLimits::NoLimits2::Track::getSectionByName ( std::string  name)
inlinevirtualinherited

◆ getSegment()

std::vector< Segment * > NoLimits::NoLimits2::SpecialTrack::getSegment ( ) const

◆ getSpecialTrackType()

SpecialTrack::SpecialTrackType NoLimits::NoLimits2::SpecialTrack::getSpecialTrackType ( ) const

◆ getSwitchTime()

float NoLimits::NoLimits2::SpecialTrack::getSwitchTime ( ) const

◆ getTrackType()

Track::TrackType NoLimits::NoLimits2::Track::getTrackType ( ) const
inherited

◆ insertInput()

uint32_t NoLimits::NoLimits2::SpecialTrack::insertInput ( uint32_t  value)

◆ insertOutput()

uint32_t NoLimits::NoLimits2::SpecialTrack::insertOutput ( uint32_t  value)

◆ insertSegment()

uint32_t NoLimits::NoLimits2::SpecialTrack::insertSegment ( Segment value)

◆ setName()

void NoLimits::NoLimits2::SpecialTrack::setName ( const std::string &  value)

◆ setPosition()

void NoLimits::NoLimits2::SpecialTrack::setPosition ( const glm::vec3 &  value)

◆ setRotation()

void NoLimits::NoLimits2::SpecialTrack::setRotation ( const glm::vec3 &  value)

◆ setSpecialTrackType()

void NoLimits::NoLimits2::SpecialTrack::setSpecialTrackType ( const SpecialTrackType specialTrackType)

◆ setSwitchTime()

void NoLimits::NoLimits2::SpecialTrack::setSwitchTime ( float  value)

◆ setTrackType()

void NoLimits::NoLimits2::Track::setTrackType ( const TrackType value)
inherited

Member Data Documentation

◆ _specialTrackType

SpecialTrackType NoLimits::NoLimits2::SpecialTrack::_specialTrackType
private

◆ input

std::vector<uint32_t> NoLimits::NoLimits2::SpecialTrack::input
private

◆ name

std::string NoLimits::NoLimits2::SpecialTrack::name
private

◆ output

std::vector<uint32_t> NoLimits::NoLimits2::SpecialTrack::output
private

◆ position

glm::vec3 NoLimits::NoLimits2::SpecialTrack::position
private

◆ rotation

glm::vec3 NoLimits::NoLimits2::SpecialTrack::rotation
private

◆ segment

std::vector<Segment*> NoLimits::NoLimits2::SpecialTrack::segment
private

◆ switchTime

float NoLimits::NoLimits2::SpecialTrack::switchTime
private

The documentation for this class was generated from the following files: