|
AGX Dynamics 2.42.3.0
|
Interface for system node behavioral implementations intended to have multiple states/instances (SystemNodeProxy/ies) in the system graph. More...
#include <SystemNodeProxy.h>
Inheritance diagram for agxSensor::ISystemNodeProxy:Public Types | |
| using | CallbackData = SystemNode::CallbackData |
Public Member Functions | |
| virtual bool | addNotification (SystemNodeProxy &proxy) |
| Called when this system node has been added to a sensor environment. | |
| virtual void | cleanup (SystemNodeProxy &proxy)=0 |
| The sensor environment is being put down, clean everything. | |
| virtual void | complete (SystemNodeProxy &proxy) |
| Complete the execution of this system, finishing the integration forward in time. | |
| virtual SystemNodeProxyRef | createProxy ()=0 |
| virtual void | execute (SystemNodeProxy &proxy, const CallbackData &data) |
Execute this system, integrating it data.dt forward in time. | |
| virtual bool | onAdd (SystemNodeProxy &proxy, agx::Referenced &instance) |
| Called when an object has been added to the sensor environment. | |
| virtual void | onChildAdded (SystemNodeProxy &proxy, SystemNode &child) |
Called when child has been added to this parent. | |
| virtual void | onChildRemoved (SystemNodeProxy &proxy, SystemNode &child) |
Called when child has been removed from this parent. | |
| virtual bool | onRemove (SystemNodeProxy &proxy, agx::Referenced &instance) |
| Called when an object has been removed from the sensor environment. | |
| virtual void | removeNotification (SystemNodeProxy &proxy) |
| Called when this system node is being removed from a sensor environment. | |
| virtual void | result (SystemNodeProxy &proxy, const CallbackData &data) |
If necessary assemble, and fetch results related to this system node after a step by data.dt has been completed. | |
| virtual void | synchronize (SystemNodeProxy &proxy, const CallbackData &data) |
| Synchronization from the main thread. | |
| virtual void | synchronizeGraphics (SystemNodeProxy &proxy, const agxRender::RenderManager &renderManager) |
| At the very end of a step, synchronize any graphics related aspects of the system node. | |
Public Member Functions inherited from agx::Referenced | |
| Referenced () | |
| Default constructor. | |
| Referenced (const Referenced &) | |
| template<typename T > | |
| T * | as () |
| Subclass casting. | |
| template<typename T > | |
| const T * | as () const |
| template<typename T > | |
| T * | asSafe () |
| Safe subclass casting, return nullptr if template type does not match. | |
| template<typename T > | |
| const T * | asSafe () const |
| int | getReferenceCount () const |
| template<typename T > | |
| bool | is () const |
| Subclass test. | |
| Referenced & | operator= (const Referenced &) |
| Assignment operator. Will increment the number of references to the referenced object. | |
| void | reference (void *ptr=nullptr) const |
| Explicitly increment the reference count by one, indicating that this object has another pointer which is referencing it. | |
| void | unreference (void *ptr=nullptr) const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it. | |
| void | unreference_nodelete () const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it. | |
Public Member Functions inherited from agxStream::Serializable | |
| virtual | ~Serializable () |
| Destructor for normal C++ use but hidden from SWIG bindings. | |
| virtual const char * | getClassName () const |
| bool | getEnableSerialization () const |
| bool | getEnableUuidGeneration () |
| agx::UInt32 | getIndex () const |
| This index is given at creation of this object. | |
| virtual StorageAgent * | getStorageAgent () const =0 |
| agx::Uuid | getUuid () const |
| bool | isFinished () const |
| void | setEnableSerialization (bool flag) |
| Set to false to disable serialization of this object. | |
| void | setFinished () |
| Tells this class that it is restored correctly and should not be deleted during destruction of an Archive. | |
| void | setUuid (const agx::Uuid &uuid) |
| Explicitly set a Uuid on a serializable object. | |
Additional Inherited Members | |
Static Public Member Functions inherited from agx::Referenced | |
| template<typename T > | |
| static bool | ValidateCast (const Referenced *object) |
Static Public Member Functions inherited from agxStream::Serializable | |
| static void | setEnableUuidGeneration (bool flag) |
| Specify if there should be UUID:s generated for each new Serializable object. By default it is enabled. | |
Protected Member Functions inherited from agx::Referenced | |
| virtual | ~Referenced () |
| Destructor. | |
| void | allocateObserverVector () const |
| void | deleteUsingDeleteHandler () const |
Protected Member Functions inherited from agxStream::Serializable | |
| Serializable () | |
| Default constructor. | |
| Serializable (const Serializable &other) | |
| Copy constructor. | |
| void | generateUuid () |
Static Protected Member Functions inherited from agx::Referenced | |
| static DeleteHandler * | getDeleteHandler () |
| static void | setDeleteHandler (DeleteHandler *handler) |
| Internal: Set a DeleteHandler to which deletion of all referenced counted objects will be delegated to. | |
Protected Attributes inherited from agx::Referenced | |
| Mutex | m_mutex |
| ObserverContainer | m_observers |
| AtomicValue | m_refCount |
Interface for system node behavioral implementations intended to have multiple states/instances (SystemNodeProxy/ies) in the system graph.
These implementations only store behavioral implementation parameters, while leaving the runtime state to each instance/proxy in the system graph.
Definition at line 32 of file SystemNodeProxy.h.
Definition at line 37 of file SystemNodeProxy.h.
|
virtual |
Called when this system node has been added to a sensor environment.
| proxy | - system graph instance (proxy) carrying this implementation |
|
pure virtual |
The sensor environment is being put down, clean everything.
| proxy | - system graph instance (proxy) carrying this implementation |
|
virtual |
Complete the execution of this system, finishing the integration forward in time.
This call is made from a thread separate from the main/simulation thread so it's not valid to read data from the objects being simulated.
| proxy | - system graph instance (proxy) carrying this implementation |
|
pure virtual |
|
virtual |
Execute this system, integrating it data.dt forward in time.
This call is made from a thread separate from the main/simulation thread so it's not valid to read data from the objects being simulated.
| proxy | - system graph instance (proxy) carrying this implementation |
| data | - runtime step data |
|
virtual |
Called when an object has been added to the sensor environment.
| proxy | - system graph instance (proxy) carrying this implementation |
| instance | - object that was added to the sensor environment |
|
virtual |
Called when child has been added to this parent.
| proxy | - system graph instance (proxy) carrying this implementation |
| child | - child that has been added |
|
virtual |
Called when child has been removed from this parent.
| proxy | - system graph instance (proxy) carrying this implementation |
| child | - child that has been removed |
|
virtual |
Called when an object has been removed from the sensor environment.
| proxy | - system graph instance (proxy) carrying this implementation |
| instance | - object that was removed from the sensor environment |
|
virtual |
Called when this system node is being removed from a sensor environment.
| proxy | - system graph instance (proxy) carrying this implementation |
|
virtual |
If necessary assemble, and fetch results related to this system node after a step by data.dt has been completed.
This call is made from the main thread, post-step, and thus allows the latest possible data from objects/simulation to be read and processed.
| proxy | - system graph instance (proxy) carrying this implementation |
| data | - runtime step data |
|
virtual |
Synchronization from the main thread.
Read data from objects/simulation should be done here before execute/stepping is made separate from the main thread.
| proxy | - system graph instance (proxy) carrying this implementation |
| data | - runtime step data |
|
virtual |
At the very end of a step, synchronize any graphics related aspects of the system node.
| proxy | - system graph instance (proxy) carrying this implementation |
| renderManager | - simulation render manager |