RigsofRods
Soft-body Physics Simulation
Public Member Functions | Private Member Functions | Private Attributes
RoR::ProceduralManager Class Reference

#include <ProceduralManager.h>

+ Inheritance diagram for RoR::ProceduralManager:
+ Collaboration diagram for RoR::ProceduralManager:

Public Member Functions

 ProceduralManager (Ogre::SceneNode *groupingSceneNode)
 
virtual ~ProceduralManager () override
 
void addObject (ProceduralObjectPtr po)
 Generates road mesh and adds to internal list. More...
 
void removeObject (ProceduralObjectPtr po)
 Clears road mesh and removes from internal list. More...
 
int getNumObjects ()
 
ProceduralObjectPtr getObject (int pos)
 
void logDiagnostics ()
 
void removeAllObjects ()
 
- Public Member Functions inherited from RefCountingObject< ProceduralManager >
 RefCountingObject ()
 
virtual ~RefCountingObject ()
 
void AddRef ()
 
void Release ()
 

Private Member Functions

void updateObject (ProceduralObjectPtr po)
 Rebuilds the road mesh. More...
 
void deleteObject (ProceduralObjectPtr po)
 Deletes the road mesh. More...
 

Private Attributes

std::vector< ProceduralObjectPtrpObjects
 
Ogre::SceneNode * pGroupingSceneNode = nullptr
 

Additional Inherited Members

- Static Public Member Functions inherited from RefCountingObject< ProceduralManager >
static void RegisterRefCountingObject (AS_NAMESPACE_QUALIFIER asIScriptEngine *engine, const char *name)
 
- Data Fields inherited from RefCountingObject< ProceduralManager >
int m_refcount
 
std::mutex m_refcount_mtx
 

Detailed Description

Definition at line 79 of file ProceduralManager.h.

Constructor & Destructor Documentation

◆ ProceduralManager()

ProceduralManager::ProceduralManager ( Ogre::SceneNode *  groupingSceneNode)

Definition at line 64 of file ProceduralManager.cpp.

◆ ~ProceduralManager()

ProceduralManager::~ProceduralManager ( )
overridevirtual

Definition at line 69 of file ProceduralManager.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ addObject()

void ProceduralManager::addObject ( ProceduralObjectPtr  po)

Generates road mesh and adds to internal list.

Definition at line 174 of file ProceduralManager.cpp.

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

◆ deleteObject()

void ProceduralManager::deleteObject ( ProceduralObjectPtr  po)
private

Deletes the road mesh.

Definition at line 95 of file ProceduralManager.cpp.

+ Here is the caller graph for this function:

◆ getNumObjects()

int RoR::ProceduralManager::getNumObjects ( )
inline

Definition at line 91 of file ProceduralManager.h.

+ Here is the caller graph for this function:

◆ getObject()

ProceduralObjectPtr ProceduralManager::getObject ( int  pos)

Definition at line 74 of file ProceduralManager.cpp.

+ Here is the caller graph for this function:

◆ logDiagnostics()

void ProceduralManager::logDiagnostics ( )

Definition at line 180 of file ProceduralManager.cpp.

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

◆ removeAllObjects()

void ProceduralManager::removeAllObjects ( )

Definition at line 86 of file ProceduralManager.cpp.

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

◆ removeObject()

void ProceduralManager::removeObject ( ProceduralObjectPtr  po)

Clears road mesh and removes from internal list.

Definition at line 104 of file ProceduralManager.cpp.

◆ updateObject()

void ProceduralManager::updateObject ( ProceduralObjectPtr  po)
private

Rebuilds the road mesh.

Definition at line 115 of file ProceduralManager.cpp.

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

Field Documentation

◆ pGroupingSceneNode

Ogre::SceneNode* RoR::ProceduralManager::pGroupingSceneNode = nullptr
private

Definition at line 106 of file ProceduralManager.h.

◆ pObjects

std::vector<ProceduralObjectPtr> RoR::ProceduralManager::pObjects
private

Definition at line 105 of file ProceduralManager.h.


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