![]() |
RigsofRods
2023.09
Soft-body Physics Simulation
|
Checks the rig-def file syntax and pulls data to File object. More...
#include <RigDef_Parser.h>
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 () |
SequentialImporter * | GetSequentialImporter () |
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 |
Static Private Member Functions | |
static void | _TrimTrailingComments (std::string const &line_in, std::string &line_out) |
Checks the rig-def file syntax and pulls data to File object.
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.
RigDef::Parser::Parser | ( | ) |
Definition at line 69 of file RigDef_Parser.cpp.
|
private |
Definition at line 678 of file RigDef_Parser.cpp.
|
private |
Definition at line 2680 of file RigDef_Parser.cpp.
|
private |
Definition at line 2151 of file RigDef_Parser.cpp.
|
staticprivate |
Definition at line 2452 of file RigDef_Parser.cpp.
|
private |
Definition at line 2894 of file RigDef_Parser.cpp.
|
private |
Definition at line 325 of file RigDef_Parser.cpp.
void RigDef::Parser::Finalize | ( | ) |
Definition at line 3000 of file RigDef_Parser.cpp.
|
private |
Definition at line 2976 of file RigDef_Parser.cpp.
|
private |
Definition at line 3319 of file RigDef_Parser.cpp.
|
private |
Definition at line 3209 of file RigDef_Parser.cpp.
|
private |
Definition at line 3093 of file RigDef_Parser.cpp.
|
private |
Definition at line 3266 of file RigDef_Parser.cpp.
|
private |
Definition at line 3015 of file RigDef_Parser.cpp.
|
private |
Definition at line 3492 of file RigDef_Parser.cpp.
|
private |
Definition at line 3159 of file RigDef_Parser.cpp.
|
private |
Definition at line 3131 of file RigDef_Parser.cpp.
|
private |
Definition at line 3171 of file RigDef_Parser.cpp.
|
private |
Definition at line 3340 of file RigDef_Parser.cpp.
|
private |
Definition at line 3061 of file RigDef_Parser.cpp.
|
private |
Definition at line 3036 of file RigDef_Parser.cpp.
|
private |
Definition at line 3508 of file RigDef_Parser.cpp.
|
private |
Definition at line 3243 of file RigDef_Parser.cpp.
|
private |
Definition at line 3249 of file RigDef_Parser.cpp.
|
private |
Definition at line 3447 of file RigDef_Parser.cpp.
|
private |
Definition at line 3112 of file RigDef_Parser.cpp.
|
private |
Definition at line 3117 of file RigDef_Parser.cpp.
|
private |
Definition at line 3076 of file RigDef_Parser.cpp.
|
private |
Definition at line 3066 of file RigDef_Parser.cpp.
|
private |
Definition at line 3402 of file RigDef_Parser.cpp.
|
private |
Definition at line 3425 of file RigDef_Parser.cpp.
|
private |
Definition at line 3379 of file RigDef_Parser.cpp.
|
private |
Definition at line 3010 of file RigDef_Parser.cpp.
|
private |
Definition at line 3292 of file RigDef_Parser.cpp.
|
private |
Definition at line 3126 of file RigDef_Parser.cpp.
|
private |
Definition at line 3521 of file RigDef_Parser.cpp.
|
private |
Definition at line 3020 of file RigDef_Parser.cpp.
|
private |
Definition at line 3214 of file RigDef_Parser.cpp.
|
inline |
Definition at line 77 of file RigDef_Parser.h.
|
inline |
Definition at line 82 of file RigDef_Parser.h.
|
static |
Definition at line 2848 of file RigDef_Parser.cpp.
|
static |
Definition at line 3476 of file RigDef_Parser.cpp.
|
private |
Adds a message to console.
Definition at line 2839 of file RigDef_Parser.cpp.
|
private |
Definition at line 1736 of file RigDef_Parser.cpp.
|
private |
Definition at line 2729 of file RigDef_Parser.cpp.
|
private |
Definition at line 1362 of file RigDef_Parser.cpp.
|
private |
Definition at line 3176 of file RigDef_Parser.cpp.
|
private |
Definition at line 3181 of file RigDef_Parser.cpp.
|
private |
Definition at line 3204 of file RigDef_Parser.cpp.
|
private |
Definition at line 3186 of file RigDef_Parser.cpp.
|
private |
Definition at line 3199 of file RigDef_Parser.cpp.
|
private |
Definition at line 1760 of file RigDef_Parser.cpp.
|
private |
Definition at line 2820 of file RigDef_Parser.cpp.
|
private |
Definition at line 1677 of file RigDef_Parser.cpp.
|
private |
Definition at line 2701 of file RigDef_Parser.cpp.
|
private |
Definition at line 1663 of file RigDef_Parser.cpp.
|
private |
Definition at line 858 of file RigDef_Parser.cpp.
|
private |
Definition at line 1658 of file RigDef_Parser.cpp.
|
private |
Definition at line 1804 of file RigDef_Parser.cpp.
|
private |
Definition at line 1617 of file RigDef_Parser.cpp.
|
private |
Definition at line 1602 of file RigDef_Parser.cpp.
|
private |
Definition at line 1502 of file RigDef_Parser.cpp.
|
private |
Definition at line 1494 of file RigDef_Parser.cpp.
|
private |
Definition at line 1170 of file RigDef_Parser.cpp.
|
private |
Definition at line 1182 of file RigDef_Parser.cpp.
|
private |
Definition at line 1187 of file RigDef_Parser.cpp.
|
private |
Definition at line 648 of file RigDef_Parser.cpp.
|
private |
Definition at line 1144 of file RigDef_Parser.cpp.
|
private |
Definition at line 1156 of file RigDef_Parser.cpp.
|
private |
Definition at line 844 of file RigDef_Parser.cpp.
|
private |
Definition at line 917 of file RigDef_Parser.cpp.
|
private |
Definition at line 928 of file RigDef_Parser.cpp.
|
private |
Definition at line 628 of file RigDef_Parser.cpp.
|
private |
Definition at line 2990 of file RigDef_Parser.cpp.
|
private |
Definition at line 2995 of file RigDef_Parser.cpp.
|
private |
Definition at line 593 of file RigDef_Parser.cpp.
|
private |
Definition at line 579 of file RigDef_Parser.cpp.
|
private |
Definition at line 2178 of file RigDef_Parser.cpp.
|
private |
Definition at line 2211 of file RigDef_Parser.cpp.
|
private |
Definition at line 571 of file RigDef_Parser.cpp.
|
private |
Definition at line 552 of file RigDef_Parser.cpp.
|
private |
Definition at line 642 of file RigDef_Parser.cpp.
|
private |
Definition at line 1461 of file RigDef_Parser.cpp.
|
private |
Definition at line 1408 of file RigDef_Parser.cpp.
|
private |
Definition at line 1430 of file RigDef_Parser.cpp.
|
private |
Definition at line 1118 of file RigDef_Parser.cpp.
|
private |
Definition at line 1106 of file RigDef_Parser.cpp.
|
private |
Definition at line 1133 of file RigDef_Parser.cpp.
|
private |
Definition at line 2312 of file RigDef_Parser.cpp.
|
private |
Definition at line 1101 of file RigDef_Parser.cpp.
|
private |
Definition at line 2186 of file RigDef_Parser.cpp.
|
private |
Definition at line 1067 of file RigDef_Parser.cpp.
|
private |
Definition at line 1028 of file RigDef_Parser.cpp.
|
private |
Definition at line 897 of file RigDef_Parser.cpp.
|
private |
Definition at line 2549 of file RigDef_Parser.cpp.
|
private |
Definition at line 816 of file RigDef_Parser.cpp.
|
private |
Definition at line 802 of file RigDef_Parser.cpp.
|
private |
Definition at line 791 of file RigDef_Parser.cpp.
|
private |
Definition at line 779 of file RigDef_Parser.cpp.
|
private |
Definition at line 772 of file RigDef_Parser.cpp.
|
private |
Definition at line 733 of file RigDef_Parser.cpp.
|
private |
Definition at line 2646 of file RigDef_Parser.cpp.
|
private |
Definition at line 1709 of file RigDef_Parser.cpp.
|
private |
Definition at line 2630 of file RigDef_Parser.cpp.
|
private |
Definition at line 2598 of file RigDef_Parser.cpp.
|
private |
Definition at line 2586 of file RigDef_Parser.cpp.
|
private |
Definition at line 701 of file RigDef_Parser.cpp.
|
private |
Definition at line 717 of file RigDef_Parser.cpp.
|
private |
Definition at line 2537 of file RigDef_Parser.cpp.
|
private |
Definition at line 2482 of file RigDef_Parser.cpp.
|
private |
Definition at line 2672 of file RigDef_Parser.cpp.
|
private |
Definition at line 2438 of file RigDef_Parser.cpp.
|
private |
Definition at line 2418 of file RigDef_Parser.cpp.
|
private |
Definition at line 2377 of file RigDef_Parser.cpp.
|
private |
Definition at line 2359 of file RigDef_Parser.cpp.
|
private |
Definition at line 2345 of file RigDef_Parser.cpp.
|
private |
Definition at line 2329 of file RigDef_Parser.cpp.
|
private |
Definition at line 2263 of file RigDef_Parser.cpp.
|
private |
Definition at line 2236 of file RigDef_Parser.cpp.
|
private |
Definition at line 2251 of file RigDef_Parser.cpp.
|
private |
Definition at line 360 of file RigDef_Parser.cpp.
|
private |
Definition at line 534 of file RigDef_Parser.cpp.
|
private |
Definition at line 2130 of file RigDef_Parser.cpp.
|
private |
Definition at line 2102 of file RigDef_Parser.cpp.
|
private |
Definition at line 2072 of file RigDef_Parser.cpp.
|
private |
Definition at line 1993 of file RigDef_Parser.cpp.
|
private |
Definition at line 1961 of file RigDef_Parser.cpp.
|
private |
Definition at line 1973 of file RigDef_Parser.cpp.
|
private |
Definition at line 522 of file RigDef_Parser.cpp.
|
private |
Definition at line 514 of file RigDef_Parser.cpp.
|
private |
Definition at line 878 of file RigDef_Parser.cpp.
|
private |
Definition at line 1914 of file RigDef_Parser.cpp.
|
private |
Definition at line 1887 of file RigDef_Parser.cpp.
|
private |
Definition at line 451 of file RigDef_Parser.cpp.
|
private |
Definition at line 498 of file RigDef_Parser.cpp.
|
private |
Definition at line 1867 of file RigDef_Parser.cpp.
|
private |
Definition at line 1848 of file RigDef_Parser.cpp.
|
private |
Definition at line 1817 of file RigDef_Parser.cpp.
|
private |
Definition at line 1772 of file RigDef_Parser.cpp.
|
private |
Definition at line 406 of file RigDef_Parser.cpp.
|
private |
Definition at line 371 of file RigDef_Parser.cpp.
|
private |
Definition at line 438 of file RigDef_Parser.cpp.
|
private |
Definition at line 340 of file RigDef_Parser.cpp.
void RigDef::Parser::Prepare | ( | ) |
Definition at line 2869 of file RigDef_Parser.cpp.
|
private |
Definition at line 2927 of file RigDef_Parser.cpp.
|
private |
Definition at line 76 of file RigDef_Parser.cpp.
|
static |
Definition at line 981 of file RigDef_Parser.cpp.
|
private |
Directives that should only appear in root module.
Definition at line 660 of file RigDef_Parser.cpp.
void RigDef::Parser::ProcessOgreStream | ( | Ogre::DataStream * | stream, |
Ogre::String | resource_group | ||
) |
Definition at line 3572 of file RigDef_Parser.cpp.
void RigDef::Parser::ProcessRawLine | ( | const char * | line | ) |
Definition at line 3596 of file RigDef_Parser.cpp.
|
private |
Definition at line 3537 of file RigDef_Parser.cpp.
|
static |
Definition at line 61 of file RigDef_Parser.h.
|
static |
Definition at line 62 of file RigDef_Parser.h.
|
private |
Parser state.
Definition at line 280 of file RigDef_Parser.h.
|
private |
Tokens of current line.
Definition at line 276 of file RigDef_Parser.h.
|
private |
Definition at line 278 of file RigDef_Parser.h.
|
private |
Parser state.
Definition at line 282 of file RigDef_Parser.h.
|
private |
Definition at line 267 of file RigDef_Parser.h.
|
private |
Definition at line 275 of file RigDef_Parser.h.
|
private |
Definition at line 274 of file RigDef_Parser.h.
|
private |
Definition at line 268 of file RigDef_Parser.h.
|
private |
Definition at line 272 of file RigDef_Parser.h.
|
private |
Parser state.
Definition at line 281 of file RigDef_Parser.h.
|
private |
Definition at line 290 of file RigDef_Parser.h.
|
private |
Definition at line 287 of file RigDef_Parser.h.
|
private |
Definition at line 279 of file RigDef_Parser.h.
|
private |
Number of tokens on current line.
Definition at line 277 of file RigDef_Parser.h.
|
private |
To be linked with the following element.
Definition at line 283 of file RigDef_Parser.h.
|
private |
Definition at line 288 of file RigDef_Parser.h.
|
private |
Definition at line 271 of file RigDef_Parser.h.
|
private |
Definition at line 258 of file RigDef_Parser.h.
|
private |
Definition at line 259 of file RigDef_Parser.h.
|
private |
Definition at line 285 of file RigDef_Parser.h.
|
private |
Definition at line 266 of file RigDef_Parser.h.
|
private |
Definition at line 264 of file RigDef_Parser.h.
|
private |
Definition at line 263 of file RigDef_Parser.h.
|
private |
Definition at line 265 of file RigDef_Parser.h.