NodeManagerJoiner allows classes that inherit from various SpecializedNodeManager types to be inherited by a single derived class.
More...
|
| NodeManagerJoinerForBodyNode ()=default |
| Default constructor.
|
|
template<typename Base1Arg , typename... Base2Args> |
| NodeManagerJoinerForBodyNode (Base1Arg &&arg1, Base2Args &&... args2) |
| This constructor allows one argument to be passed to the Base1 constructor and arbitrarily many arguments to be passed to the Base2 constructor.
|
|
template<typename Base1Arg > |
| NodeManagerJoinerForBodyNode (Base1Arg &&arg1, common::NoArgTag) |
| This constructor passes one argument to the Base1 constructor and no arguments to the Base2 constructor.
|
|
template<typename... Base2Args> |
| NodeManagerJoinerForBodyNode (common::NoArgTag, Base2Args &&... args2) |
| This constructor passes no arguments to the Base1 constructor and arbitrarily many arguments to the Base2 constructor.
|
|
template<class NodeType > |
std::size_t | getNumNodes () const |
|
template<class NodeType > |
NodeType * | getNode (std::size_t index) |
|
template<class NodeType > |
const NodeType * | getNode (std::size_t index) const |
|
template<class T > |
T * | getNode (std::size_t index) |
|
template<class T > |
const T * | getNode (std::size_t index) const |
|
template<class Base1, class Base2>
class dart::dynamics::NodeManagerJoinerForBodyNode< Base1, Base2 >
NodeManagerJoiner allows classes that inherit from various SpecializedNodeManager types to be inherited by a single derived class.
This class solved the diamond-of-death problem for multiple SpecializedNodeManager inheritance.