RigsofRods
Soft-body Physics Simulation
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Namespaces | Data Structures | Typedefs | Enumerations | Functions | Variables
RigDef Namespace Reference

Namespaces

 Regexes
 

Data Structures

struct  AeroAnimator
 
struct  Airbrake
 
struct  Animation
 
struct  Animator
 
struct  AntiLockBrakes
 
struct  Assetpack
 
struct  Author
 
struct  Axle
 
struct  BaseMeshWheel
 
struct  BaseWheel
 
struct  BaseWheel2
 
struct  Beam
 
struct  BeamDefaults
 
struct  BeamDefaultsScale
 
struct  Brakes
 
struct  Cab
 
struct  Camera
 
struct  CameraRail
 
struct  CameraSettings
 
struct  Cinecam
 
struct  CollisionBox
 
struct  CollisionRange
 
struct  Command2
 
struct  CruiseControl
 
struct  DefaultMinimass
 
struct  DefaultSkin
 
struct  DocComment
 < Represents a comment (line starting with ';' or '//') that can be anywhere in the file. More...
 
struct  Document
 
struct  Engine
 
struct  Engoption
 
struct  Engturbo
 
struct  Exhaust
 
struct  ExtCamera
 
struct  FileFormatVersion
 
struct  Fileinfo
 
struct  Flare2
 
struct  Flare3
 
struct  FlaregroupNoImport
 
struct  Flexbody
 
struct  FlexBodyWheel
 
struct  Forvert
 Manually specified (vert => node) bindings for flexbody deformation (overrides 'forset'). More...
 
struct  Fusedrag
 
struct  Globals
 
struct  Guid
 
struct  GuiSettings
 
struct  Help
 
struct  Hook
 
struct  Hydro
 
struct  Inertia
 
struct  InterAxle
 
struct  Lockgroup
 
struct  ManagedMaterial
 
struct  ManagedMaterialsOptions
 
struct  MaterialFlareBinding
 
struct  MeshWheel
 
struct  MeshWheel2
 
struct  Minimass
 
struct  Node
 
struct  NodeDefaults
 
class  Parser
 Checks the rig-def file syntax and pulls data to File object. More...
 
struct  Particle
 
struct  Pistonprop
 
struct  Prop
 
struct  RailGroup
 
struct  Ropable
 
struct  Rope
 
struct  Rotator
 
struct  Rotator2
 
struct  Screwprop
 
struct  Script
 
class  SequentialImporter
 
class  Serializer
 Serializes the RigDef::File data structure to string. More...
 
struct  ShadowOptions
 
struct  Shock
 
struct  Shock2
 
struct  Shock3
 
struct  SkeletonSettings
 
struct  SlideNode
 
struct  SoundSource
 
struct  SoundSource2
 
struct  SpeedLimiter
 
struct  Submesh
 
struct  Texcoord
 
struct  Tie
 
struct  TorqueCurve
 
struct  TractionControl
 
struct  TransferCase
 
struct  Trigger
 
struct  Turbojet
 
struct  Turboprop2
 
class  Validator
 Performs a formal validation of the file (missing required parts, conflicts of modules, etc...) More...
 
struct  VideoCamera
 
struct  Wheel
 
struct  Wheel2
 
struct  WheelDetacher
 
struct  Wing
 

Typedefs

typedef std::shared_ptr< DocumentDocumentPtr
 
typedef std::vector< DifferentialTypeDifferentialTypeVec
 

Enumerations

enum  Keyword {
  Keyword::INVALID = 0, Keyword::ADD_ANIMATION = 1, Keyword::AIRBRAKES, Keyword::ANIMATORS,
  Keyword::ANTILOCKBRAKES, Keyword::ASSETPACKS, Keyword::AUTHOR, Keyword::AXLES,
  Keyword::BACKMESH, Keyword::BEAMS, Keyword::BRAKES, Keyword::CAB,
  Keyword::CAMERARAIL, Keyword::CAMERAS, Keyword::CINECAM, Keyword::COLLISIONBOXES,
  Keyword::COMMANDS, Keyword::COMMANDS2, Keyword::COMMENT, Keyword::CONTACTERS,
  Keyword::CRUISECONTROL, Keyword::DEFAULT_SKIN, Keyword::DESCRIPTION, Keyword::DETACHER_GROUP,
  Keyword::DISABLEDEFAULTSOUNDS, Keyword::ENABLE_ADVANCED_DEFORMATION, Keyword::END, Keyword::END_COMMENT,
  Keyword::END_DESCRIPTION, Keyword::END_SECTION, Keyword::ENGINE, Keyword::ENGOPTION,
  Keyword::ENGTURBO, Keyword::ENVMAP, Keyword::EXHAUSTS, Keyword::EXTCAMERA,
  Keyword::FILEFORMATVERSION, Keyword::FILEINFO, Keyword::FIXES, Keyword::FLARES,
  Keyword::FLARES2, Keyword::FLARES3, Keyword::FLAREGROUPS_NO_IMPORT, Keyword::FLEXBODIES,
  Keyword::FLEXBODY_CAMERA_MODE, Keyword::FLEXBODYWHEELS, Keyword::FORSET, Keyword::FORVERT,
  Keyword::FORWARDCOMMANDS, Keyword::FUSEDRAG, Keyword::GLOBALS, Keyword::GUID,
  Keyword::GUISETTINGS, Keyword::HELP, Keyword::HIDEINCHOOSER, Keyword::HOOKGROUP,
  Keyword::HOOKS, Keyword::HYDROS, Keyword::IMPORTCOMMANDS, Keyword::INTERAXLES,
  Keyword::LOCKGROUPS, Keyword::LOCKGROUP_DEFAULT_NOLOCK, Keyword::MANAGEDMATERIALS, Keyword::MATERIALFLAREBINDINGS,
  Keyword::MESHWHEELS, Keyword::MESHWHEELS2, Keyword::MINIMASS, Keyword::NODECOLLISION,
  Keyword::NODES, Keyword::NODES2, Keyword::PARTICLES, Keyword::PISTONPROPS,
  Keyword::PROP_CAMERA_MODE, Keyword::PROPS, Keyword::RAILGROUPS, Keyword::RESCUER,
  Keyword::RIGIDIFIERS, Keyword::ROLLON, Keyword::ROPABLES, Keyword::ROPES,
  Keyword::ROTATORS, Keyword::ROTATORS2, Keyword::SCREWPROPS, Keyword::SCRIPTS,
  Keyword::SECTION, Keyword::SECTIONCONFIG, Keyword::SET_BEAM_DEFAULTS, Keyword::SET_BEAM_DEFAULTS_SCALE,
  Keyword::SET_COLLISION_RANGE, Keyword::SET_DEFAULT_MINIMASS, Keyword::SET_INERTIA_DEFAULTS, Keyword::SET_MANAGEDMATERIALS_OPTIONS,
  Keyword::SET_NODE_DEFAULTS, Keyword::SET_SHADOWS, Keyword::SET_SKELETON_SETTINGS, Keyword::SHOCKS,
  Keyword::SHOCKS2, Keyword::SHOCKS3, Keyword::SLIDENODE_CONNECT_INSTANTLY, Keyword::SLIDENODES,
  Keyword::SLOPE_BRAKE, Keyword::SOUNDSOURCES, Keyword::SOUNDSOURCES2, Keyword::SPEEDLIMITER,
  Keyword::SUBMESH, Keyword::SUBMESH_GROUNDMODEL, Keyword::TEXCOORDS, Keyword::TIES,
  Keyword::TORQUECURVE, Keyword::TRACTIONCONTROL, Keyword::TRANSFERCASE, Keyword::TRIGGERS,
  Keyword::TURBOJETS, Keyword::TURBOPROPS, Keyword::TURBOPROPS2, Keyword::VIDEOCAMERA,
  Keyword::WHEELDETACHERS, Keyword::WHEELS, Keyword::WHEELS2, Keyword::WINGS
}
 
enum  SpecialProp {
  SpecialProp::NONE, SpecialProp::MIRROR_LEFT, SpecialProp::MIRROR_RIGHT, SpecialProp::DASHBOARD_LEFT,
  SpecialProp::DASHBOARD_RIGHT, SpecialProp::AERO_PROP_SPIN, SpecialProp::AERO_PROP_BLADE, SpecialProp::DRIVER_SEAT,
  SpecialProp::DRIVER_SEAT_2, SpecialProp::BEACON, SpecialProp::REDBEACON, SpecialProp::LIGHTBAR
}
 
enum  ManagedMaterialType {
  ManagedMaterialType::INVALID, ManagedMaterialType::FLEXMESH_STANDARD, ManagedMaterialType::FLEXMESH_TRANSPARENT, ManagedMaterialType::MESH_STANDARD,
  ManagedMaterialType::MESH_TRANSPARENT
}
 
enum  EngineType { EngineType::c_CAR = 'c', EngineType::e_ECAR = 'e', EngineType::t_TRUCK = 't' }
 
enum  DifferentialType : char { DifferentialType::o_OPEN = 'o', DifferentialType::l_LOCKED = 'l', DifferentialType::s_SPLIT = 's', DifferentialType::v_VISCOUS = 'v' }
 
enum  MinimassOption : char { MinimassOption::n_DUMMY = 'n', MinimassOption::l_SKIP_LOADED = 'l' }
 
enum  WingControlSurface : char {
  WingControlSurface::n_NONE = 'n', WingControlSurface::a_RIGHT_AILERON = 'a', WingControlSurface::b_LEFT_AILERON = 'b', WingControlSurface::f_FLAP = 'f',
  WingControlSurface::e_ELEVATOR = 'e', WingControlSurface::r_RUDDER = 'r', WingControlSurface::S_RIGHT_HAND_STABILATOR = 'S', WingControlSurface::T_LEFT_HAND_STABILATOR = 'T',
  WingControlSurface::c_RIGHT_ELEVON = 'c', WingControlSurface::d_LEFT_ELEVON = 'd', WingControlSurface::g_RIGHT_FLAPERON = 'g', WingControlSurface::h_LEFT_FLAPERON = 'h',
  WingControlSurface::U_RIGHT_HAND_TAILERON = 'U', WingControlSurface::V_LEFT_HAND_TAILERON = 'V', WingControlSurface::i_RIGHT_RUDDERVATOR = 'i', WingControlSurface::j_LEFT_RUDDERVATOR = 'j'
}
 
enum  TieOption : char { TieOption::n_DUMMY = 'n', TieOption::v_DUMMY = 'v', TieOption::i_INVISIBLE = 'i', TieOption::s_NO_SELF_LOCK = 's' }
 
enum  CabOption : char {
  CabOption::n_DUMMY = 'n', CabOption::c_CONTACT = 'c', CabOption::b_BUOYANT = 'b', CabOption::p_10xTOUGHER = 'p',
  CabOption::u_INVULNERABLE = 'u', CabOption::s_BUOYANT_NO_DRAG = 's', CabOption::r_BUOYANT_ONLY_DRAG = 'r', CabOption::D_CONTACT_BUOYANT = 'D',
  CabOption::F_10xTOUGHER_BUOYANT = 'F', CabOption::S_INVULNERABLE_BUOYANT = 'S'
}
 
enum  TriggerOption : char {
  TriggerOption::i_INVISIBLE = 'i', TriggerOption::c_COMMAND_STYLE = 'c', TriggerOption::x_START_DISABLED = 'x', TriggerOption::b_KEY_BLOCKER = 'b',
  TriggerOption::B_TRIGGER_BLOCKER = 'B', TriggerOption::A_INV_TRIGGER_BLOCKER = 'A', TriggerOption::s_CMD_NUM_SWITCH = 's', TriggerOption::h_UNLOCKS_HOOK_GROUP = 'h',
  TriggerOption::H_LOCKS_HOOK_GROUP = 'H', TriggerOption::t_CONTINUOUS = 't', TriggerOption::E_ENGINE_TRIGGER = 'E'
}
 
enum  BeamOption : char { BeamOption::v_DUMMY = 'v', BeamOption::i_INVISIBLE = 'i', BeamOption::r_ROPE = 'r', BeamOption::s_SUPPORT = 's' }
 
enum  HydroOption : char {
  HydroOption::n_INPUT_NORMAL = 'n', HydroOption::j_INVISIBLE = 'j', HydroOption::i_INVISIBLE_INPUT_NORMAL = 'i', HydroOption::s_DISABLE_ON_HIGH_SPEED = 's',
  HydroOption::a_INPUT_AILERON = 'a', HydroOption::r_INPUT_RUDDER = 'r', HydroOption::e_INPUT_ELEVATOR = 'e', HydroOption::u_INPUT_AILERON_ELEVATOR = 'u',
  HydroOption::v_INPUT_InvAILERON_ELEVATOR = 'v', HydroOption::x_INPUT_AILERON_RUDDER = 'x', HydroOption::y_INPUT_InvAILERON_RUDDER = 'y', HydroOption::g_INPUT_ELEVATOR_RUDDER = 'g',
  HydroOption::h_INPUT_InvELEVATOR_RUDDER = 'h'
}
 
enum  ShockOption : char {
  ShockOption::n_DUMMY = 'n', ShockOption::v_DUMMY = 'v', ShockOption::i_INVISIBLE = 'i', ShockOption::L_ACTIVE_LEFT = 'L',
  ShockOption::R_ACTIVE_RIGHT = 'R', ShockOption::m_METRIC = 'm'
}
 
enum  Shock2Option : char {
  Shock2Option::n_DUMMY = 'n', Shock2Option::v_DUMMY = 'v', Shock2Option::i_INVISIBLE = 'i', Shock2Option::s_SOFT_BUMP_BOUNDS = 's',
  Shock2Option::m_METRIC = 'm', Shock2Option::M_ABSOLUTE_METRIC = 'M'
}
 
enum  Shock3Option : char {
  Shock3Option::n_DUMMY = 'n', Shock3Option::v_DUMMY = 'v', Shock3Option::i_INVISIBLE = 'i', Shock3Option::m_METRIC = 'm',
  Shock3Option::M_ABSOLUTE_METRIC = 'M'
}
 
enum  NodeOption : char {
  NodeOption::n_DUMMY = 'n', NodeOption::m_NO_MOUSE_GRAB = 'm', NodeOption::f_NO_SPARKS = 'f', NodeOption::x_EXHAUST_POINT = 'x',
  NodeOption::y_EXHAUST_DIRECTION = 'y', NodeOption::c_NO_GROUND_CONTACT = 'c', NodeOption::h_HOOK_POINT = 'h', NodeOption::e_TERRAIN_EDIT_POINT = 'e',
  NodeOption::b_EXTRA_BUOYANCY = 'b', NodeOption::p_NO_PARTICLES = 'p', NodeOption::L_LOG = 'L', NodeOption::l_LOAD_WEIGHT = 'l'
}
 

Functions

const char * KeywordToString (RigDef::Keyword keyword)
 
bool IsWhitespace (char c)
 
bool IsSeparator (char c)
 
bool StrEqualsNocase (std::string const &s1, std::string const &s2)
 

Variables

const char * ROOT_MODULE_NAME = "_Root_"
 

Typedef Documentation

◆ DifferentialTypeVec

Definition at line 105 of file RigDef_File.h.

◆ DocumentPtr

typedef std::shared_ptr<Document> RigDef::DocumentPtr

Definition at line 281 of file ForwardDeclarations.h.

Enumeration Type Documentation

◆ BeamOption

enum RigDef::BeamOption : char
strong
Enumerator
v_DUMMY 
i_INVISIBLE 
r_ROPE 
s_SUPPORT 

Definition at line 173 of file RigDef_File.h.

◆ CabOption

enum RigDef::CabOption : char
strong
Enumerator
n_DUMMY 
c_CONTACT 
b_BUOYANT 
p_10xTOUGHER 
u_INVULNERABLE 
s_BUOYANT_NO_DRAG 
r_BUOYANT_ONLY_DRAG 
D_CONTACT_BUOYANT 
F_10xTOUGHER_BUOYANT 
S_INVULNERABLE_BUOYANT 

Definition at line 144 of file RigDef_File.h.

◆ DifferentialType

enum RigDef::DifferentialType : char
strong
Enumerator
o_OPEN 
l_LOCKED 
s_SPLIT 
v_VISCOUS 

Definition at line 97 of file RigDef_File.h.

◆ EngineType

enum RigDef::EngineType
strong
Enumerator
c_CAR 
e_ECAR 
t_TRUCK 

Definition at line 90 of file RigDef_File.h.

◆ HydroOption

enum RigDef::HydroOption : char
strong
Enumerator
n_INPUT_NORMAL 
j_INVISIBLE 
i_INVISIBLE_INPUT_NORMAL 

For backwards compatibility; combines flags 'j' and 'n'.

s_DISABLE_ON_HIGH_SPEED 
a_INPUT_AILERON 
r_INPUT_RUDDER 
e_INPUT_ELEVATOR 
u_INPUT_AILERON_ELEVATOR 
v_INPUT_InvAILERON_ELEVATOR 
x_INPUT_AILERON_RUDDER 
y_INPUT_InvAILERON_RUDDER 
g_INPUT_ELEVATOR_RUDDER 
h_INPUT_InvELEVATOR_RUDDER 

Definition at line 181 of file RigDef_File.h.

◆ ManagedMaterialType

Enumerator
INVALID 
FLEXMESH_STANDARD 
FLEXMESH_TRANSPARENT 
MESH_STANDARD 
MESH_TRANSPARENT 

Definition at line 78 of file RigDef_File.h.

◆ MinimassOption

enum RigDef::MinimassOption : char
strong
Enumerator
n_DUMMY 
l_SKIP_LOADED 

Only apply minimum mass to nodes without "L" option.

Definition at line 107 of file RigDef_File.h.

◆ NodeOption

enum RigDef::NodeOption : char
strong
Enumerator
n_DUMMY 
m_NO_MOUSE_GRAB 
f_NO_SPARKS 
x_EXHAUST_POINT 
y_EXHAUST_DIRECTION 
c_NO_GROUND_CONTACT 
h_HOOK_POINT 
e_TERRAIN_EDIT_POINT 
b_EXTRA_BUOYANCY 
p_NO_PARTICLES 
L_LOG 
l_LOAD_WEIGHT 

Definition at line 229 of file RigDef_File.h.

◆ Shock2Option

enum RigDef::Shock2Option : char
strong
Enumerator
n_DUMMY 
v_DUMMY 
i_INVISIBLE 
s_SOFT_BUMP_BOUNDS 

soft bump boundaries, use when shocks reach limiters too often and "jumprebound" (default is hard bump boundaries)

m_METRIC 

metric values for shortbound/longbound applying to the length of the beam.

M_ABSOLUTE_METRIC 

Absolute metric values for shortbound/longbound, settings apply without regarding to the original length of the beam.(Use with caution, check ror.log for errors)

Definition at line 210 of file RigDef_File.h.

◆ Shock3Option

enum RigDef::Shock3Option : char
strong
Enumerator
n_DUMMY 
v_DUMMY 
i_INVISIBLE 
m_METRIC 

metric values for shortbound/longbound applying to the length of the beam.

M_ABSOLUTE_METRIC 

Absolute metric values for shortbound/longbound, settings apply without regarding to the original length of the beam.(Use with caution, check ror.log for errors)

Definition at line 220 of file RigDef_File.h.

◆ ShockOption

enum RigDef::ShockOption : char
strong
Enumerator
n_DUMMY 
v_DUMMY 
i_INVISIBLE 
L_ACTIVE_LEFT 
R_ACTIVE_RIGHT 
m_METRIC 

Definition at line 200 of file RigDef_File.h.

◆ SpecialProp

enum RigDef::SpecialProp
strong
Enumerator
NONE 
MIRROR_LEFT 
MIRROR_RIGHT 
DASHBOARD_LEFT 
DASHBOARD_RIGHT 
AERO_PROP_SPIN 
AERO_PROP_BLADE 
DRIVER_SEAT 
DRIVER_SEAT_2 
BEACON 
REDBEACON 
LIGHTBAR 

Definition at line 62 of file RigDef_File.h.

◆ TieOption

enum RigDef::TieOption : char
strong
Enumerator
n_DUMMY 
v_DUMMY 
i_INVISIBLE 
s_NO_SELF_LOCK 

Definition at line 136 of file RigDef_File.h.

◆ TriggerOption

enum RigDef::TriggerOption : char
strong
Enumerator
i_INVISIBLE 

invisible

c_COMMAND_STYLE 

trigger is set with commandstyle boundaries instead of shocksytle

x_START_DISABLED 

this trigger is disabled on startup, default is enabled

b_KEY_BLOCKER 

Set the CommandKeys that are set in a commandkeyblocker or trigger to blocked on startup, default is released.

B_TRIGGER_BLOCKER 

Blocker that enable/disable other triggers.

A_INV_TRIGGER_BLOCKER 

Blocker that enable/disable other triggers, reversed activation method (inverted Blocker style, auto-ON)

s_CMD_NUM_SWITCH 

switch that exchanges cmdshort/cmdshort for all triggers with the same commandnumbers, default false

h_UNLOCKS_HOOK_GROUP 
H_LOCKS_HOOK_GROUP 
t_CONTINUOUS 

this trigger sends values between 0 and 1

E_ENGINE_TRIGGER 

this trigger is used to control an engine

Definition at line 158 of file RigDef_File.h.

◆ WingControlSurface

enum RigDef::WingControlSurface : char
strong
Enumerator
n_NONE 
a_RIGHT_AILERON 
b_LEFT_AILERON 
f_FLAP 
e_ELEVATOR 
r_RUDDER 
S_RIGHT_HAND_STABILATOR 
T_LEFT_HAND_STABILATOR 
c_RIGHT_ELEVON 
d_LEFT_ELEVON 
g_RIGHT_FLAPERON 
h_LEFT_FLAPERON 
U_RIGHT_HAND_TAILERON 
V_LEFT_HAND_TAILERON 
i_RIGHT_RUDDERVATOR 
j_LEFT_RUDDERVATOR 

Definition at line 113 of file RigDef_File.h.

Function Documentation

◆ IsSeparator()

bool RigDef::IsSeparator ( char  c)
inline

Definition at line 54 of file RigDef_Parser.cpp.

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

◆ IsWhitespace()

bool RigDef::IsWhitespace ( char  c)
inline

Definition at line 49 of file RigDef_Parser.cpp.

+ Here is the caller graph for this function:

◆ StrEqualsNocase()

bool RigDef::StrEqualsNocase ( std::string const &  s1,
std::string const &  s2 
)
inline

Definition at line 59 of file RigDef_Parser.cpp.

Variable Documentation

◆ ROOT_MODULE_NAME

const char * RigDef::ROOT_MODULE_NAME = "_Root_"

Definition at line 35 of file RigDef_File.cpp.