DART
6.7.3
|
If your Node has a State class, then that State class should inherit this Node::State class. More...
#include <Node.hpp>
Public Member Functions | |
virtual std::unique_ptr< State > | clone () const=0 |
Implement this function to allow your Cloneable type to be copied safely. More... | |
virtual void | copy (const State &anotherCloneable)=0 |
Copy the contents of anotherCloneable into this one. More... | |
If your Node has a State class, then that State class should inherit this Node::State class.
This allows us to safely serialize, store, and clone the states of arbitrary Node extensions. If your Node is stateless, then you do not have to worry about extending this class, because Node::getNodeState() will simply return a nullptr by default, which is taken to indicate that it is stateless.
The distinction between the State class and the Properties class is that State will get stored in BodyNode::ExtendedState whereas Properties will get stored in BodyNode::ExtendedProperties. Typically Properties are values that only change rarely if ever, whereas State contains values that might change as often as every time step.
|
pure virtualinherited |
Implement this function to allow your Cloneable type to be copied safely.
|
pure virtualinherited |
Copy the contents of anotherCloneable into this one.