|
| | SET_OUTPUTS (Contact, F1Position, F1Jacobian, F1Velocity, F1NormalAcceleration, F2Position, F2Jacobian, F2Velocity, F2NormalAcceleration) Contact(FramePtr f1 |
| |
| const Frame & | f1 () const |
| |
| const Frame & | f2 () const |
| |
| const std::vector< sva::PTransformd > & | f1Points () const |
| |
| const sva::PTransformd & | X_f1_f2 () const |
| |
| const sva::PTransformd & | X_f2_f1 () const |
| |
| const std::vector< sva::PTransformd > & | f2Points () const |
| |
| const View | f1View () const |
| |
| const View | f2View () const |
| |
| const Id & | id () const |
| |
| template<typename EnumT > |
| bool | isUpdateEnabled (EnumT e) const |
| |
| virtual bool | isUpdateStaticallyEnabled (int) const |
| |
| virtual bool | isUpdateCustomEnabled (int) const |
| |
| virtual | ~AbstractNode ()=default |
| |
| void | update (int i) |
| |
| virtual | ~Inputs ()=default |
| |
| template<typename T , typename EnumI , typename... Args> |
| void | addInput (std::shared_ptr< T > source, EnumI i, Args... args) |
| |
| template<typename T , typename EnumI , typename... Args, typename std::enable_if< std::is_base_of< abstract::Outputs, T >::value, int >::type = 0> |
| void | addInput (T &source, EnumI i, Args... args) |
| |
| template<typename T > |
| void | removeInput (T *source) |
| |
| template<typename T , typename... Args> |
| void | removeInput (T *source, Args... args) |
| |
| template<typename T > |
| Iterator | getInput (T *source) |
| |
| template<typename T > |
| Iterator | getInput (const std::shared_ptr< T > &source) |
| |
| virtual | ~Outputs ()=default |
| |
| template<typename EnumT > |
| bool | isOutputEnabled (EnumT e) const |
| |
| bool | isOutputEnabled (int i) const |
| |
| virtual bool | isOutputStaticallyEnabled (int) const |
| |
| virtual bool | isOutputCustomEnabled (int) const |
| |
|
| enum class | Update_ |
| |
| using | UpdateParent = AbstractNode |
| |
| using | UpdateBase = AbstractNode |
| |
| using | inputs_t = std::unordered_map< abstract::Outputs *, std::set< int > > |
| |
| using | store_t = std::unordered_set< std::shared_ptr< abstract::Outputs > > |
| |
| enum class | Output_ |
| |
| using | OutputParent = Outputs |
| |
| using | OutputBase = Outputs |
| |
| static constexpr const char * | UpdateName (Update_) |
| |
| template<typename EnumT > |
| static constexpr bool | UpdateStaticallyEnabled (EnumT) |
| |
| static constexpr const char * | OutputName (Output_) |
| |
| template<typename EnumT > |
| static constexpr bool | OutputStaticallyEnabled (EnumT) |
| |
| static constexpr unsigned int | UpdateSize = 0 |
| |
| static constexpr auto | UpdateBaseName = "AbstractNode" |
| |
| static constexpr unsigned int | OutputSize = 0 |
| |
| static constexpr auto | OutputBaseName = "Outputs" |
| |
| using | input_dependency_t = std::map< Outputs *, std::set< int > > |
| |
| void | registerUpdates (EnumT u, void(U::*fn)(), Args... args) |
| |
| void | registerUpdates (EnumT u, void(U::*fn)()) |
| |
| void | addOutputDependency (EnumO o, EnumU u) |
| |
| void | addOutputDependency (std::initializer_list< EnumO > os, EnumU u) |
| |
| void | addInternalDependency (EnumU1 uDependent, EnumU2 u) |
| |
| void | addInputDependency (EnumU u, std::shared_ptr< S > source, EnumO i, Args... args) |
| |
| void | addInputDependency (EnumU u, S &source, EnumO i, Args... args) |
| |
| void | addDirectDependency (EnumO o, std::shared_ptr< S > source, EnumI i) |
| |
| void | addDirectDependency (EnumO o, S &source, EnumI i) |
| |
| std::map< int, std::function< void(AbstractNode &)> > | updates_ |
| |
| std::map< int, std::vector< int > > | outputDependencies_ |
| |
| std::map< int, std::vector< int > > | internalDependencies_ |
| |
| std::map< int, input_dependency_t > | inputDependencies_ |
| |
| std::map< int, std::pair< Outputs *, int > > | directDependencies_ |
| |
| bool | is_node_ = false |
| |
Represent a contact between two frames
The node forwards the signals of each frame.
Outputs:
- F1Position/F1Jacobian/F1Velocity/F1NormalAcceleration: proxy for the first frame Position/Jacobian/Velocity/NormalAcceleration signals
- F2Position/F2Jacobian/F2Velocity/F2NormalAcceleration: proxy for the second frame Position/Jacobian/Velocity/NormalAcceleration signals