DART
6.7.3
|
NodeManagerJoiner allows classes that inherit from various SpecializedNodeManager types to be inherited by a single derived class. More...
#include <NodeManagerJoiner.hpp>
Public Member Functions | |
NodeManagerJoinerForBodyNode ()=default | |
Default constructor. More... | |
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. More... | |
template<typename Base1Arg > | |
NodeManagerJoinerForBodyNode (Base1Arg &&arg1, common::NoArgTag) | |
This constructor passes one argument to the Base1 constructor and no arguments to the Base2 constructor. More... | |
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. More... | |
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 |
Static Public Member Functions | |
template<class NodeType > | |
static constexpr bool | isSpecializedForNode () |
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.
|
default |
Default constructor.
dart::dynamics::NodeManagerJoinerForBodyNode< Base1, Base2 >::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.
dart::dynamics::NodeManagerJoinerForBodyNode< Base1, Base2 >::NodeManagerJoinerForBodyNode | ( | Base1Arg && | arg1, |
common::NoArgTag | |||
) |
This constructor passes one argument to the Base1 constructor and no arguments to the Base2 constructor.
dart::dynamics::NodeManagerJoinerForBodyNode< Base1, Base2 >::NodeManagerJoinerForBodyNode | ( | common::NoArgTag | , |
Base2Args &&... | args2 | ||
) |
This constructor passes no arguments to the Base1 constructor and arbitrarily many arguments to the Base2 constructor.
T* dart::dynamics::NodeManagerJoinerForBodyNode< Base1, Base2 >::getNode | ( | std::size_t | index | ) |
NodeType* dart::dynamics::NodeManagerJoinerForBodyNode< Base1, Base2 >::getNode | ( | std::size_t | index | ) |
const T* dart::dynamics::NodeManagerJoinerForBodyNode< Base1, Base2 >::getNode | ( | std::size_t | index | ) | const |
const NodeType* dart::dynamics::NodeManagerJoinerForBodyNode< Base1, Base2 >::getNode | ( | std::size_t | index | ) | const |
std::size_t dart::dynamics::NodeManagerJoinerForBodyNode< Base1, Base2 >::getNumNodes |
|
staticconstexpr |