RigsofRods
Soft-body Physics Simulation
Data Structures | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Member Functions | Static Private Member Functions | Private Attributes
RigDef::Parser Class Reference

Checks the rig-def file syntax and pulls data to File object. More...

#include <RigDef_Parser.h>

+ Collaboration diagram for RigDef::Parser:

Data Structures

struct  Token
 

Public Member Functions

 Parser ()
 
void Prepare ()
 
void Finalize ()
 
void ProcessOgreStream (Ogre::DataStream *stream, Ogre::String resource_group)
 
void ProcessRawLine (const char *line)
 
RigDef::DocumentPtr GetFile ()
 
SequentialImporterGetSequentialImporter ()
 

Static Public Member Functions

static void ProcessForsetLine (RigDef::Flexbody &def, const std::string &line, int line_number=-1)
 
static Keyword IdentifyKeyword (const std::string &line)
 
static SpecialProp IdentifySpecialProp (const std::string &str)
 

Static Public Attributes

static const int LINE_BUFFER_LENGTH = 2000
 
static const int LINE_MAX_ARGS = 100
 

Private Member Functions

void ProcessGlobalDirective (Keyword keyword)
 Directives that should only appear in root module. More...
 
void ParseDirectiveAddAnimation ()
 
void ParseDirectiveBackmesh ()
 
void ParseDirectiveDefaultSkin ()
 
void ParseDirectiveDetacherGroup ()
 
void ParseDirectiveFlexbodyCameraMode ()
 
void ParseDirectiveForset ()
 
void ParseDirectivePropCameraMode ()
 
void ParseDirectiveSection ()
 
void ParseDirectiveSectionConfig ()
 
void ParseDirectiveSetBeamDefaults ()
 
void ParseDirectiveSetBeamDefaultsScale ()
 
void ParseDirectiveSetDefaultMinimass ()
 
void ParseDirectiveSetInertiaDefaults ()
 
void ParseDirectiveSetManagedMaterialsOptions ()
 
void ParseDirectiveSetNodeDefaults ()
 
void ParseDirectiveSubmesh ()
 
void ParseAirbrakes ()
 
void ParseAnimator ()
 
void ParseAntiLockBrakes ()
 
void ParseAssetpacks ()
 
void ParseAuthor ()
 
void ParseAxles ()
 
void ParseBeams ()
 
void ParseBrakes ()
 
void ParseCab ()
 
void ParseCameras ()
 
void ParseCameraRails ()
 
void ParseCinecam ()
 
void ParseCollisionBox ()
 
void ParseCommandsUnified ()
 
void ParseContacter ()
 
void ParseCruiseControl ()
 
void ParseDescription ()
 
void ParseEngine ()
 
void ParseEngoption ()
 
void ParseEngturbo ()
 
void ParseExhaust ()
 
void ParseExtCamera ()
 
void ParseFileFormatVersion ()
 
void ParseFileinfo ()
 
void ParseFixes ()
 
void ParseFlaresUnified ()
 
void ParseFlares3 ()
 
void ParseFlaregroupsNoImport ()
 
void ParseFlexbody ()
 
void ParseFlexBodyWheel ()
 
void ParseFusedrag ()
 
void ParseGlobals ()
 
void ParseGuid ()
 
void ParseGuiSettings ()
 
void ParseHelp ()
 
void ParseHook ()
 
void ParseHydros ()
 
void ParseInterAxles ()
 
void ParseLockgroups ()
 
void ParseManagedMaterials ()
 
void ParseMaterialFlareBindings ()
 
void ParseMeshWheel ()
 
void ParseMeshWheel2 ()
 
void ParseMinimass ()
 
void ParseNodesUnified ()
 
void ParseParticles ()
 
void ParsePistonprops ()
 
void ParseProps ()
 
void ParseRailGroups ()
 
void ParseRopables ()
 
void ParseRopes ()
 
void ParseRotatorsUnified ()
 
void ParseScrewprops ()
 
void ParseScripts ()
 
void ParseSetCollisionRange ()
 
void ParseSetSkeletonSettings ()
 
void ParseShock ()
 
void ParseShock2 ()
 
void ParseShock3 ()
 
void ParseSlidenodes ()
 
void ParseSoundsources ()
 
void ParseSoundsources2 ()
 
void ParseSpeedLimiter ()
 
void ParseSubmeshGroundModel ()
 
void ParseTexcoords ()
 
void ParseTies ()
 
void ParseTorqueCurve ()
 
void ParseTractionControl ()
 
void ParseTransferCase ()
 
void ParseTriggers ()
 
void ParseTurbojets ()
 
void ParseTurbopropsUnified ()
 
void ParseVideoCamera ()
 
void ParseWheelDetachers ()
 
void ParseWheel ()
 
void ParseWheel2 ()
 
void ParseWing ()
 
void ProcessCurrentLine ()
 
int TokenizeCurrentLine ()
 
bool CheckNumArguments (int num_required_args)
 
void BeginBlock (RigDef::Keyword keyword)
 
void ProcessChangeModuleLine (Keyword keyword)
 
std::string GetArgStr (int index)
 
int GetArgInt (int index)
 
unsigned GetArgUint (int index)
 
long GetArgLong (int index)
 
float GetArgFloat (int index)
 
char GetArgChar (int index)
 
bool GetArgBool (int index)
 
WheelPropulsion GetArgPropulsion (int index)
 
WheelBraking GetArgBraking (int index)
 
Node::Ref GetArgNodeRef (int index)
 
Node::Ref GetArgRigidityNode (int index)
 
Node::Ref GetArgNullableNode (int index)
 
RoR::WheelSide GetArgWheelSide (int index)
 
WingControlSurface GetArgWingSurface (int index)
 
RoR::FlareType GetArgFlareType (int index)
 
RoR::ExtCameraMode GetArgExtCameraMode (int index)
 
std::string GetArgManagedTex (int index)
 
MinimassOption GetArgMinimassOption (int index)
 
BitMask_t GetArgCabOptions (int index)
 
BitMask_t GetArgTriggerOptions (int index)
 
BitMask_t GetArgBeamOptions (int index)
 
BitMask_t GetArgHydroOptions (int index)
 
BitMask_t GetArgShockOptions (int index)
 
BitMask_t GetArgShock2Options (int index)
 
BitMask_t GetArgShock3Options (int index)
 
BitMask_t GetArgNodeOptions (int index)
 
EngineType GetArgEngineType (int index)
 
ManagedMaterialType GetArgManagedMatType (int index)
 
RoR::VideoCamRole GetArgVideoCamRole (int index)
 
float ParseArgFloat (const char *str)
 
int ParseArgInt (const char *str)
 
unsigned ParseArgUint (const char *str)
 
unsigned ParseArgUint (const std::string &s)
 
float ParseArgFloat (const std::string &s)
 
void LogMessage (RoR::Console::MessageType type, std::string const &msg)
 Adds a message to console. More...
 
Node::Ref _ParseNodeRef (std::string const &node_id_str)
 
void _ParseDifferentialTypes (DifferentialTypeVec &diff_types, std::string const &options_str)
 
void _ParseBaseMeshWheel (BaseMeshWheel &mesh_wheel)
 
void ParseOptionalInertia (Inertia &inertia, int index)
 

Static Private Member Functions

static void _TrimTrailingComments (std::string const &line_in, std::string &line_out)
 

Private Attributes

std::shared_ptr< Inertiam_ror_default_inertia
 
std::shared_ptr< NodeDefaultsm_ror_node_defaults
 
std::shared_ptr< Inertiam_user_default_inertia
 
std::shared_ptr< BeamDefaultsm_user_beam_defaults
 
std::shared_ptr< NodeDefaultsm_user_node_defaults
 
std::shared_ptr< DefaultMinimassm_set_default_minimass
 
int m_current_detacher_group
 
ManagedMaterialsOptions m_current_managed_material_options
 
std::shared_ptr< Document::Modulem_root_module
 
std::shared_ptr< Document::Modulem_current_module
 
unsigned int m_current_line_number
 
char m_current_line [LINE_BUFFER_LENGTH]
 
Token m_args [LINE_MAX_ARGS]
 Tokens of current line. More...
 
int m_num_args
 Number of tokens on current line. More...
 
Keyword m_current_block = Keyword::INVALID
 
Keyword m_log_keyword = Keyword::INVALID
 
bool m_any_named_node_defined
 Parser state. More...
 
std::shared_ptr< Submeshm_current_submesh
 Parser state. More...
 
std::shared_ptr< CameraRailm_current_camera_rail
 Parser state. More...
 
SequentialImporter m_sequential_importer
 
Ogre::String m_filename
 
Ogre::String m_resource_group
 
RigDef::DocumentPtr m_definition
 

Detailed Description

Checks the rig-def file syntax and pulls data to File object.

Author
Petr Ohlidal

For every section/directive, there is a data-container struct defined in File.h. The Parser should preferably only read data as-is, without validation.

Every time a line of a particular section is parsed, an instance of the struct is saved into an array container in struct RigDef::Document. There are exceptions to this rule.

Keywords 'set_[node|beam|inertia]_defaults' are 'presets' and are managed by dyn. allocated objects. For every preset, there are 2 pointers:

Definition at line 56 of file RigDef_Parser.h.

Constructor & Destructor Documentation

◆ Parser()

RigDef::Parser::Parser ( )

Definition at line 69 of file RigDef_Parser.cpp.

Member Function Documentation

◆ _ParseBaseMeshWheel()

void RigDef::Parser::_ParseBaseMeshWheel ( BaseMeshWheel mesh_wheel)
private

Definition at line 654 of file RigDef_Parser.cpp.

◆ _ParseDifferentialTypes()

void RigDef::Parser::_ParseDifferentialTypes ( DifferentialTypeVec diff_types,
std::string const &  options_str 
)
private

Definition at line 2547 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ _ParseNodeRef()

Node::Ref RigDef::Parser::_ParseNodeRef ( std::string const &  node_id_str)
private

Definition at line 2033 of file RigDef_Parser.cpp.

◆ _TrimTrailingComments()

void RigDef::Parser::_TrimTrailingComments ( std::string const &  line_in,
std::string &  line_out 
)
staticprivate

Definition at line 2325 of file RigDef_Parser.cpp.

◆ BeginBlock()

void RigDef::Parser::BeginBlock ( RigDef::Keyword  keyword)
private

Definition at line 2758 of file RigDef_Parser.cpp.

◆ CheckNumArguments()

bool RigDef::Parser::CheckNumArguments ( int  num_required_args)
private

Definition at line 310 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ Finalize()

void RigDef::Parser::Finalize ( )

Definition at line 2850 of file RigDef_Parser.cpp.

+ Here is the caller graph for this function:

◆ GetArgBeamOptions()

BitMask_t RigDef::Parser::GetArgBeamOptions ( int  index)
private

Definition at line 3168 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgBool()

bool RigDef::Parser::GetArgBool ( int  index)
private

Definition at line 3059 of file RigDef_Parser.cpp.

◆ GetArgBraking()

WheelBraking RigDef::Parser::GetArgBraking ( int  index)
private

Definition at line 2943 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgCabOptions()

BitMask_t RigDef::Parser::GetArgCabOptions ( int  index)
private

Definition at line 3116 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgChar()

char RigDef::Parser::GetArgChar ( int  index)
private

Definition at line 2865 of file RigDef_Parser.cpp.

◆ GetArgEngineType()

EngineType RigDef::Parser::GetArgEngineType ( int  index)
private

Definition at line 3341 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgExtCameraMode()

ExtCameraMode RigDef::Parser::GetArgExtCameraMode ( int  index)
private

Definition at line 3009 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgFlareType()

FlareType RigDef::Parser::GetArgFlareType ( int  index)
private

Definition at line 2981 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgFloat()

float RigDef::Parser::GetArgFloat ( int  index)
private

Definition at line 3021 of file RigDef_Parser.cpp.

◆ GetArgHydroOptions()

BitMask_t RigDef::Parser::GetArgHydroOptions ( int  index)
private

Definition at line 3189 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgInt()

int RigDef::Parser::GetArgInt ( int  index)
private

Definition at line 2911 of file RigDef_Parser.cpp.

◆ GetArgLong()

long RigDef::Parser::GetArgLong ( int  index)
private

Definition at line 2886 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgManagedMatType()

ManagedMaterialType RigDef::Parser::GetArgManagedMatType ( int  index)
private

Definition at line 3357 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgManagedTex()

std::string RigDef::Parser::GetArgManagedTex ( int  index)
private

Definition at line 3093 of file RigDef_Parser.cpp.

◆ GetArgMinimassOption()

MinimassOption RigDef::Parser::GetArgMinimassOption ( int  index)
private

Definition at line 3099 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgNodeOptions()

BitMask_t RigDef::Parser::GetArgNodeOptions ( int  index)
private

Definition at line 3296 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgNodeRef()

Node::Ref RigDef::Parser::GetArgNodeRef ( int  index)
private

Definition at line 2962 of file RigDef_Parser.cpp.

◆ GetArgNullableNode()

Node::Ref RigDef::Parser::GetArgNullableNode ( int  index)
private

Definition at line 2967 of file RigDef_Parser.cpp.

◆ GetArgPropulsion()

WheelPropulsion RigDef::Parser::GetArgPropulsion ( int  index)
private

Definition at line 2926 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgRigidityNode()

Node::Ref RigDef::Parser::GetArgRigidityNode ( int  index)
private

Definition at line 2916 of file RigDef_Parser.cpp.

◆ GetArgShock2Options()

BitMask_t RigDef::Parser::GetArgShock2Options ( int  index)
private

Definition at line 3251 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgShock3Options()

BitMask_t RigDef::Parser::GetArgShock3Options ( int  index)
private

Definition at line 3274 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgShockOptions()

BitMask_t RigDef::Parser::GetArgShockOptions ( int  index)
private

Definition at line 3228 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgStr()

std::string RigDef::Parser::GetArgStr ( int  index)
private

Definition at line 2860 of file RigDef_Parser.cpp.

◆ GetArgTriggerOptions()

BitMask_t RigDef::Parser::GetArgTriggerOptions ( int  index)
private

Definition at line 3141 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgUint()

unsigned RigDef::Parser::GetArgUint ( int  index)
private

Definition at line 2976 of file RigDef_Parser.cpp.

◆ GetArgVideoCamRole()

VideoCamRole RigDef::Parser::GetArgVideoCamRole ( int  index)
private

Definition at line 3370 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgWheelSide()

WheelSide RigDef::Parser::GetArgWheelSide ( int  index)
private

Definition at line 2870 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetArgWingSurface()

WingControlSurface RigDef::Parser::GetArgWingSurface ( int  index)
private

Definition at line 3064 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ GetFile()

RigDef::DocumentPtr RigDef::Parser::GetFile ( )
inline

Definition at line 77 of file RigDef_Parser.h.

+ Here is the caller graph for this function:

◆ GetSequentialImporter()

SequentialImporter* RigDef::Parser::GetSequentialImporter ( )
inline

Definition at line 82 of file RigDef_Parser.h.

+ Here is the caller graph for this function:

◆ IdentifyKeyword()

Keyword RigDef::Parser::IdentifyKeyword ( const std::string &  line)
static

Definition at line 2712 of file RigDef_Parser.cpp.

◆ IdentifySpecialProp()

SpecialProp RigDef::Parser::IdentifySpecialProp ( const std::string &  str)
static

Definition at line 3325 of file RigDef_Parser.cpp.

+ Here is the caller graph for this function:

◆ LogMessage()

void RigDef::Parser::LogMessage ( RoR::Console::MessageType  type,
std::string const &  msg 
)
private

Adds a message to console.

Definition at line 2703 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseAirbrakes()

void RigDef::Parser::ParseAirbrakes ( )
private

Definition at line 1632 of file RigDef_Parser.cpp.

◆ ParseAnimator()

void RigDef::Parser::ParseAnimator ( )
private

Definition at line 2595 of file RigDef_Parser.cpp.

◆ ParseAntiLockBrakes()

void RigDef::Parser::ParseAntiLockBrakes ( )
private

Definition at line 1269 of file RigDef_Parser.cpp.

◆ ParseArgFloat() [1/2]

float RigDef::Parser::ParseArgFloat ( const char *  str)
private

Definition at line 3026 of file RigDef_Parser.cpp.

◆ ParseArgFloat() [2/2]

float RigDef::Parser::ParseArgFloat ( const std::string &  s)
private

Definition at line 3031 of file RigDef_Parser.cpp.

◆ ParseArgInt()

int RigDef::Parser::ParseArgInt ( const char *  str)
private

Definition at line 3054 of file RigDef_Parser.cpp.

◆ ParseArgUint() [1/2]

unsigned RigDef::Parser::ParseArgUint ( const char *  str)
private

Definition at line 3036 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseArgUint() [2/2]

unsigned RigDef::Parser::ParseArgUint ( const std::string &  s)
private

Definition at line 3049 of file RigDef_Parser.cpp.

◆ ParseAssetpacks()

void RigDef::Parser::ParseAssetpacks ( )
private

Definition at line 1655 of file RigDef_Parser.cpp.

◆ ParseAuthor()

void RigDef::Parser::ParseAuthor ( )
private

Definition at line 2685 of file RigDef_Parser.cpp.

◆ ParseAxles()

void RigDef::Parser::ParseAxles ( )
private

Definition at line 1575 of file RigDef_Parser.cpp.

◆ ParseBeams()

void RigDef::Parser::ParseBeams ( )
private

Definition at line 2568 of file RigDef_Parser.cpp.

◆ ParseBrakes()

void RigDef::Parser::ParseBrakes ( )
private

Definition at line 1562 of file RigDef_Parser.cpp.

◆ ParseCab()

void RigDef::Parser::ParseCab ( )
private

Definition at line 827 of file RigDef_Parser.cpp.

◆ ParseCameraRails()

void RigDef::Parser::ParseCameraRails ( )
private

Definition at line 1557 of file RigDef_Parser.cpp.

◆ ParseCameras()

void RigDef::Parser::ParseCameras ( )
private

Definition at line 1697 of file RigDef_Parser.cpp.

◆ ParseCinecam()

void RigDef::Parser::ParseCinecam ( )
private

Definition at line 1517 of file RigDef_Parser.cpp.

◆ ParseCollisionBox()

void RigDef::Parser::ParseCollisionBox ( )
private

Definition at line 1503 of file RigDef_Parser.cpp.

◆ ParseCommandsUnified()

void RigDef::Parser::ParseCommandsUnified ( )
private

Definition at line 1404 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseContacter()

void RigDef::Parser::ParseContacter ( )
private

Definition at line 1397 of file RigDef_Parser.cpp.

◆ ParseCruiseControl()

void RigDef::Parser::ParseCruiseControl ( )
private

Definition at line 1078 of file RigDef_Parser.cpp.

◆ ParseDescription()

void RigDef::Parser::ParseDescription ( )
private

Definition at line 1089 of file RigDef_Parser.cpp.

◆ ParseDirectiveAddAnimation()

void RigDef::Parser::ParseDirectiveAddAnimation ( )
private

Definition at line 1094 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseDirectiveBackmesh()

void RigDef::Parser::ParseDirectiveBackmesh ( )
private

Definition at line 624 of file RigDef_Parser.cpp.

◆ ParseDirectiveDefaultSkin()

void RigDef::Parser::ParseDirectiveDefaultSkin ( )
private

Definition at line 1053 of file RigDef_Parser.cpp.

◆ ParseDirectiveDetacherGroup()

void RigDef::Parser::ParseDirectiveDetacherGroup ( )
private

Definition at line 1064 of file RigDef_Parser.cpp.

◆ ParseDirectiveFlexbodyCameraMode()

void RigDef::Parser::ParseDirectiveFlexbodyCameraMode ( )
private

Definition at line 813 of file RigDef_Parser.cpp.

◆ ParseDirectiveForset()

void RigDef::Parser::ParseDirectiveForset ( )
private

Definition at line 883 of file RigDef_Parser.cpp.

◆ ParseDirectivePropCameraMode()

void RigDef::Parser::ParseDirectivePropCameraMode ( )
private

Definition at line 604 of file RigDef_Parser.cpp.

◆ ParseDirectiveSection()

void RigDef::Parser::ParseDirectiveSection ( )
private

Definition at line 2840 of file RigDef_Parser.cpp.

◆ ParseDirectiveSectionConfig()

void RigDef::Parser::ParseDirectiveSectionConfig ( )
private

Definition at line 2845 of file RigDef_Parser.cpp.

◆ ParseDirectiveSetBeamDefaults()

void RigDef::Parser::ParseDirectiveSetBeamDefaults ( )
private

Definition at line 569 of file RigDef_Parser.cpp.

◆ ParseDirectiveSetBeamDefaultsScale()

void RigDef::Parser::ParseDirectiveSetBeamDefaultsScale ( )
private

Definition at line 555 of file RigDef_Parser.cpp.

◆ ParseDirectiveSetDefaultMinimass()

void RigDef::Parser::ParseDirectiveSetDefaultMinimass ( )
private

Definition at line 2060 of file RigDef_Parser.cpp.

◆ ParseDirectiveSetInertiaDefaults()

void RigDef::Parser::ParseDirectiveSetInertiaDefaults ( )
private

Definition at line 2093 of file RigDef_Parser.cpp.

◆ ParseDirectiveSetManagedMaterialsOptions()

void RigDef::Parser::ParseDirectiveSetManagedMaterialsOptions ( )
private

Definition at line 547 of file RigDef_Parser.cpp.

◆ ParseDirectiveSetNodeDefaults()

void RigDef::Parser::ParseDirectiveSetNodeDefaults ( )
private

Definition at line 528 of file RigDef_Parser.cpp.

◆ ParseDirectiveSubmesh()

void RigDef::Parser::ParseDirectiveSubmesh ( )
private

Definition at line 618 of file RigDef_Parser.cpp.

◆ ParseEngine()

void RigDef::Parser::ParseEngine ( )
private

Definition at line 1365 of file RigDef_Parser.cpp.

◆ ParseEngoption()

void RigDef::Parser::ParseEngoption ( )
private

Definition at line 1314 of file RigDef_Parser.cpp.

◆ ParseEngturbo()

void RigDef::Parser::ParseEngturbo ( )
private

Definition at line 1335 of file RigDef_Parser.cpp.

◆ ParseExhaust()

void RigDef::Parser::ParseExhaust ( )
private

Definition at line 1028 of file RigDef_Parser.cpp.

◆ ParseExtCamera()

void RigDef::Parser::ParseExtCamera ( )
private

Definition at line 1017 of file RigDef_Parser.cpp.

◆ ParseFileFormatVersion()

void RigDef::Parser::ParseFileFormatVersion ( )
private

Definition at line 1042 of file RigDef_Parser.cpp.

◆ ParseFileinfo()

void RigDef::Parser::ParseFileinfo ( )
private

Definition at line 2190 of file RigDef_Parser.cpp.

◆ ParseFixes()

void RigDef::Parser::ParseFixes ( )
private

Definition at line 1012 of file RigDef_Parser.cpp.

◆ ParseFlaregroupsNoImport()

void RigDef::Parser::ParseFlaregroupsNoImport ( )
private

Definition at line 2068 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseFlares3()

void RigDef::Parser::ParseFlares3 ( )
private

Definition at line 979 of file RigDef_Parser.cpp.

◆ ParseFlaresUnified()

void RigDef::Parser::ParseFlaresUnified ( )
private

Definition at line 941 of file RigDef_Parser.cpp.

◆ ParseFlexbody()

void RigDef::Parser::ParseFlexbody ( )
private

Definition at line 864 of file RigDef_Parser.cpp.

◆ ParseFlexBodyWheel()

void RigDef::Parser::ParseFlexBodyWheel ( )
private

Definition at line 2421 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseFusedrag()

void RigDef::Parser::ParseFusedrag ( )
private

Definition at line 786 of file RigDef_Parser.cpp.

◆ ParseGlobals()

void RigDef::Parser::ParseGlobals ( )
private

Definition at line 773 of file RigDef_Parser.cpp.

◆ ParseGuid()

void RigDef::Parser::ParseGuid ( )
private

Definition at line 763 of file RigDef_Parser.cpp.

◆ ParseGuiSettings()

void RigDef::Parser::ParseGuiSettings ( )
private

Definition at line 752 of file RigDef_Parser.cpp.

◆ ParseHelp()

void RigDef::Parser::ParseHelp ( )
private

Definition at line 745 of file RigDef_Parser.cpp.

◆ ParseHook()

void RigDef::Parser::ParseHook ( )
private

Definition at line 707 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseHydros()

void RigDef::Parser::ParseHydros ( )
private

Definition at line 2514 of file RigDef_Parser.cpp.

◆ ParseInterAxles()

void RigDef::Parser::ParseInterAxles ( )
private

Definition at line 1606 of file RigDef_Parser.cpp.

◆ ParseLockgroups()

void RigDef::Parser::ParseLockgroups ( )
private

Definition at line 2499 of file RigDef_Parser.cpp.

◆ ParseManagedMaterials()

void RigDef::Parser::ParseManagedMaterials ( )
private

Definition at line 2468 of file RigDef_Parser.cpp.

◆ ParseMaterialFlareBindings()

void RigDef::Parser::ParseMaterialFlareBindings ( )
private

Definition at line 2457 of file RigDef_Parser.cpp.

◆ ParseMeshWheel()

void RigDef::Parser::ParseMeshWheel ( )
private

Definition at line 677 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseMeshWheel2()

void RigDef::Parser::ParseMeshWheel2 ( )
private

Definition at line 692 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseMinimass()

void RigDef::Parser::ParseMinimass ( )
private

Definition at line 2409 of file RigDef_Parser.cpp.

◆ ParseNodesUnified()

void RigDef::Parser::ParseNodesUnified ( )
private

Definition at line 2355 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseOptionalInertia()

void RigDef::Parser::ParseOptionalInertia ( Inertia inertia,
int  index 
)
private

Definition at line 2539 of file RigDef_Parser.cpp.

◆ ParseParticles()

void RigDef::Parser::ParseParticles ( )
private

Definition at line 2312 of file RigDef_Parser.cpp.

◆ ParsePistonprops()

void RigDef::Parser::ParsePistonprops ( )
private

Definition at line 2292 of file RigDef_Parser.cpp.

◆ ParseProps()

void RigDef::Parser::ParseProps ( )
private

Definition at line 2252 of file RigDef_Parser.cpp.

◆ ParseRailGroups()

void RigDef::Parser::ParseRailGroups ( )
private

Definition at line 2235 of file RigDef_Parser.cpp.

◆ ParseRopables()

void RigDef::Parser::ParseRopables ( )
private

Definition at line 2222 of file RigDef_Parser.cpp.

◆ ParseRopes()

void RigDef::Parser::ParseRopes ( )
private

Definition at line 2207 of file RigDef_Parser.cpp.

◆ ParseRotatorsUnified()

void RigDef::Parser::ParseRotatorsUnified ( )
private

Definition at line 2143 of file RigDef_Parser.cpp.

◆ ParseScrewprops()

void RigDef::Parser::ParseScrewprops ( )
private

Definition at line 2118 of file RigDef_Parser.cpp.

◆ ParseScripts()

void RigDef::Parser::ParseScripts ( )
private

Definition at line 2132 of file RigDef_Parser.cpp.

◆ ParseSetCollisionRange()

void RigDef::Parser::ParseSetCollisionRange ( )
private

Definition at line 344 of file RigDef_Parser.cpp.

◆ ParseSetSkeletonSettings()

void RigDef::Parser::ParseSetSkeletonSettings ( )
private

Definition at line 510 of file RigDef_Parser.cpp.

◆ ParseShock()

void RigDef::Parser::ParseShock ( )
private

Definition at line 2013 of file RigDef_Parser.cpp.

◆ ParseShock2()

void RigDef::Parser::ParseShock2 ( )
private

Definition at line 1986 of file RigDef_Parser.cpp.

◆ ParseShock3()

void RigDef::Parser::ParseShock3 ( )
private

Definition at line 1957 of file RigDef_Parser.cpp.

◆ ParseSlidenodes()

void RigDef::Parser::ParseSlidenodes ( )
private

Definition at line 1879 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseSoundsources()

void RigDef::Parser::ParseSoundsources ( )
private

Definition at line 1849 of file RigDef_Parser.cpp.

◆ ParseSoundsources2()

void RigDef::Parser::ParseSoundsources2 ( )
private

Definition at line 1860 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseSpeedLimiter()

void RigDef::Parser::ParseSpeedLimiter ( )
private

Definition at line 499 of file RigDef_Parser.cpp.

◆ ParseSubmeshGroundModel()

void RigDef::Parser::ParseSubmeshGroundModel ( )
private

Definition at line 492 of file RigDef_Parser.cpp.

◆ ParseTexcoords()

void RigDef::Parser::ParseTexcoords ( )
private

Definition at line 846 of file RigDef_Parser.cpp.

◆ ParseTies()

void RigDef::Parser::ParseTies ( )
private

Definition at line 1803 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseTorqueCurve()

void RigDef::Parser::ParseTorqueCurve ( )
private

Definition at line 1776 of file RigDef_Parser.cpp.

◆ ParseTractionControl()

void RigDef::Parser::ParseTractionControl ( )
private

Definition at line 431 of file RigDef_Parser.cpp.

◆ ParseTransferCase()

void RigDef::Parser::ParseTransferCase ( )
private

Definition at line 477 of file RigDef_Parser.cpp.

◆ ParseTriggers()

void RigDef::Parser::ParseTriggers ( )
private

Definition at line 1757 of file RigDef_Parser.cpp.

◆ ParseTurbojets()

void RigDef::Parser::ParseTurbojets ( )
private

Definition at line 1739 of file RigDef_Parser.cpp.

◆ ParseTurbopropsUnified()

void RigDef::Parser::ParseTurbopropsUnified ( )
private

Definition at line 1709 of file RigDef_Parser.cpp.

◆ ParseVideoCamera()

void RigDef::Parser::ParseVideoCamera ( )
private

Definition at line 1666 of file RigDef_Parser.cpp.

◆ ParseWheel()

void RigDef::Parser::ParseWheel ( )
private

Definition at line 388 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseWheel2()

void RigDef::Parser::ParseWheel2 ( )
private

Definition at line 354 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ ParseWheelDetachers()

void RigDef::Parser::ParseWheelDetachers ( )
private

Definition at line 419 of file RigDef_Parser.cpp.

◆ ParseWing()

void RigDef::Parser::ParseWing ( )
private

Definition at line 325 of file RigDef_Parser.cpp.

◆ Prepare()

void RigDef::Parser::Prepare ( )

Definition at line 2733 of file RigDef_Parser.cpp.

+ Here is the caller graph for this function:

◆ ProcessChangeModuleLine()

void RigDef::Parser::ProcessChangeModuleLine ( Keyword  keyword)
private

Definition at line 2791 of file RigDef_Parser.cpp.

◆ ProcessCurrentLine()

void RigDef::Parser::ProcessCurrentLine ( )
private

Definition at line 76 of file RigDef_Parser.cpp.

◆ ProcessForsetLine()

void RigDef::Parser::ProcessForsetLine ( RigDef::Flexbody def,
const std::string &  line,
int  line_number = -1 
)
static

Definition at line 894 of file RigDef_Parser.cpp.

◆ ProcessGlobalDirective()

void RigDef::Parser::ProcessGlobalDirective ( Keyword  keyword)
private

Directives that should only appear in root module.

Definition at line 636 of file RigDef_Parser.cpp.

◆ ProcessOgreStream()

void RigDef::Parser::ProcessOgreStream ( Ogre::DataStream *  stream,
Ogre::String  resource_group 
)

Definition at line 3421 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ProcessRawLine()

void RigDef::Parser::ProcessRawLine ( const char *  line)

Definition at line 3444 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

◆ TokenizeCurrentLine()

int RigDef::Parser::TokenizeCurrentLine ( )
private

Definition at line 3386 of file RigDef_Parser.cpp.

+ Here is the call graph for this function:

Field Documentation

◆ LINE_BUFFER_LENGTH

const int RigDef::Parser::LINE_BUFFER_LENGTH = 2000
static

Definition at line 61 of file RigDef_Parser.h.

◆ LINE_MAX_ARGS

const int RigDef::Parser::LINE_MAX_ARGS = 100
static

Definition at line 62 of file RigDef_Parser.h.

◆ m_any_named_node_defined

bool RigDef::Parser::m_any_named_node_defined
private

Parser state.

Definition at line 278 of file RigDef_Parser.h.

◆ m_args

Token RigDef::Parser::m_args[LINE_MAX_ARGS]
private

Tokens of current line.

Definition at line 274 of file RigDef_Parser.h.

◆ m_current_block

Keyword RigDef::Parser::m_current_block = Keyword::INVALID
private

Definition at line 276 of file RigDef_Parser.h.

◆ m_current_camera_rail

std::shared_ptr<CameraRail> RigDef::Parser::m_current_camera_rail
private

Parser state.

Definition at line 280 of file RigDef_Parser.h.

◆ m_current_detacher_group

int RigDef::Parser::m_current_detacher_group
private

Definition at line 265 of file RigDef_Parser.h.

◆ m_current_line

char RigDef::Parser::m_current_line[LINE_BUFFER_LENGTH]
private

Definition at line 273 of file RigDef_Parser.h.

◆ m_current_line_number

unsigned int RigDef::Parser::m_current_line_number
private

Definition at line 272 of file RigDef_Parser.h.

◆ m_current_managed_material_options

ManagedMaterialsOptions RigDef::Parser::m_current_managed_material_options
private

Definition at line 266 of file RigDef_Parser.h.

◆ m_current_module

std::shared_ptr<Document::Module> RigDef::Parser::m_current_module
private

Definition at line 270 of file RigDef_Parser.h.

◆ m_current_submesh

std::shared_ptr<Submesh> RigDef::Parser::m_current_submesh
private

Parser state.

Definition at line 279 of file RigDef_Parser.h.

◆ m_definition

RigDef::DocumentPtr RigDef::Parser::m_definition
private

Definition at line 287 of file RigDef_Parser.h.

◆ m_filename

Ogre::String RigDef::Parser::m_filename
private

Definition at line 284 of file RigDef_Parser.h.

◆ m_log_keyword

Keyword RigDef::Parser::m_log_keyword = Keyword::INVALID
private

Definition at line 277 of file RigDef_Parser.h.

◆ m_num_args

int RigDef::Parser::m_num_args
private

Number of tokens on current line.

Definition at line 275 of file RigDef_Parser.h.

◆ m_resource_group

Ogre::String RigDef::Parser::m_resource_group
private

Definition at line 285 of file RigDef_Parser.h.

◆ m_root_module

std::shared_ptr<Document::Module> RigDef::Parser::m_root_module
private

Definition at line 269 of file RigDef_Parser.h.

◆ m_ror_default_inertia

std::shared_ptr<Inertia> RigDef::Parser::m_ror_default_inertia
private

Definition at line 256 of file RigDef_Parser.h.

◆ m_ror_node_defaults

std::shared_ptr<NodeDefaults> RigDef::Parser::m_ror_node_defaults
private

Definition at line 257 of file RigDef_Parser.h.

◆ m_sequential_importer

SequentialImporter RigDef::Parser::m_sequential_importer
private

Definition at line 282 of file RigDef_Parser.h.

◆ m_set_default_minimass

std::shared_ptr<DefaultMinimass> RigDef::Parser::m_set_default_minimass
private

Definition at line 264 of file RigDef_Parser.h.

◆ m_user_beam_defaults

std::shared_ptr<BeamDefaults> RigDef::Parser::m_user_beam_defaults
private

Definition at line 262 of file RigDef_Parser.h.

◆ m_user_default_inertia

std::shared_ptr<Inertia> RigDef::Parser::m_user_default_inertia
private

Definition at line 261 of file RigDef_Parser.h.

◆ m_user_node_defaults

std::shared_ptr<NodeDefaults> RigDef::Parser::m_user_node_defaults
private

Definition at line 263 of file RigDef_Parser.h.


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