#include <DataTrackerFunctor.h>

A DDGNode that will call a given Functor as soon as one of its input changes (a pointer to this DataTrackerFunctor is passed as parameter in the functor)
| Public Member Functions | |
| DataTrackerFunctor (FunctorType &functor) | |
| void | setDirtyValue () override | 
| void | update () override | 
| This method is needed by DDGNode.  More... | |
|  Public Member Functions inherited from sofa::core::objectmodel::DDGNode | |
| DDGNode () | |
| Constructor.  More... | |
| virtual | ~DDGNode () | 
| Destructor. Automatically remove remaining links.  More... | |
| void | addInput (DDGNode *n) | 
| Add a new input to this node.  More... | |
| void | delInput (DDGNode *n) | 
| Remove an input from this node.  More... | |
| void | addOutput (DDGNode *n) | 
| Add a new output to this node.  More... | |
| void | delOutput (DDGNode *n) | 
| Remove an output from this node.  More... | |
| const DDGLinkContainer & | getInputs () | 
| Get the list of inputs for this DDGNode.  More... | |
| const DDGLinkContainer & | getOutputs () | 
| Get the list of outputs for this DDGNode.  More... | |
| bool | isDirty () const | 
| Returns true if the DDGNode needs to be updated.  More... | |
| virtual void | setDirtyOutputs () | 
| Indicate the outputs needs to be updated. This method must be called after changing the value of this node.  More... | |
| void | cleanDirty () | 
| Set dirty flag to false.  More... | |
| virtual void | notifyEndEdit () | 
| Notify links that the DGNode has been modified.  More... | |
| void | updateIfDirty () const | 
| Utility method to call update if necessary. This method should be called before reading of writing the value of this node.  More... | |
| Additional Inherited Members | |
|  Protected Attributes inherited from sofa::core::objectmodel::DDGNode | |
| DDGLinkContainer | inputs | 
| DDGLinkContainer | outputs | 
|  Protected Member Functions inherited from sofa::core::objectmodel::DDGNode | |
| virtual void | doAddInput (DDGNode *n) | 
| virtual void | doDelInput (DDGNode *n) | 
| virtual void | doAddOutput (DDGNode *n) | 
| virtual void | doDelOutput (DDGNode *n) | 
| void | cleanDirtyOutputsOfInputs () | 
| the dirtyOutputs flags of all the inputs will be set to false  More... | |
| 
 | inline | 
| 
 | inlineoverridevirtual | 
The trick is here, this function is called as soon as the input data changes and can then trigger the callback
Reimplemented from sofa::core::objectmodel::DDGNode.
| 
 | inlineoverridevirtual | 
This method is needed by DDGNode.
Implements sofa::core::objectmodel::DDGNode.