Component storing all state vectors of a simulated body (position, velocity, etc), using the datatype specified in the template.
More...
|
| | SOFA_CLASS2 (SOFA_TEMPLATE(MechanicalState, TDataTypes), BaseMechanicalState, SOFA_TEMPLATE(State, TDataTypes)) |
| |
| Size | getCoordDimension () const override |
| |
| Size | getDerivDimension () const override |
| |
| virtual void | getIndicesInSpace (sofa::type::vector< Index > &, Real, Real, Real, Real, Real, Real) const =0 |
| | Get the indices of the particles located in the given bounding box. More...
|
| |
| void | copyToBuffer (SReal *dst, ConstVecId src, unsigned n) const override |
| |
| void | copyFromBuffer (VecId dst, const SReal *src, unsigned n) override |
| |
| void | addFromBuffer (VecId dst, const SReal *src, unsigned n) override |
| |
| | SOFA_ABSTRACT_CLASS (BaseMechanicalState, BaseState) |
| |
| | SOFA_BASE_CAST_IMPLEMENTATION (BaseMechanicalState) |
| |
| bool | insertInNode (objectmodel::BaseNode *node) override |
| |
| bool | removeInNode (objectmodel::BaseNode *node) override |
| |
| virtual SReal | getPX (Index) const |
| |
| virtual SReal | getPY (Index) const |
| |
| virtual SReal | getPZ (Index) const |
| |
| virtual void | beginIntegration (SReal) |
| | Called at the beginning of each integration step. More...
|
| |
| virtual void | endIntegration (const ExecParams *params, SReal) |
| | Called at the end of each integration step. More...
|
| |
| virtual void | resetForce (const ExecParams *params, VecDerivId f=vec_id::write_access::force) |
| | Set F = 0. More...
|
| |
| virtual void | resetAcc (const ExecParams *params, VecDerivId a=vec_id::write_access::dx) |
| | Set Acc =0. More...
|
| |
| virtual void | accumulateForce (const ExecParams *params, VecDerivId f=vec_id::write_access::force) |
| | Add stored external forces to F. More...
|
| |
| virtual void | resetConstraint (const ConstraintParams *params)=0 |
| | Reset the constraint matrix. More...
|
| |
| virtual void | getConstraintJacobian (const ConstraintParams *params, sofa::linearalgebra::BaseMatrix *J, unsigned int &off)=0 |
| | build the jacobian of the constraint in a baseMatrix More...
|
| |
| virtual void | buildIdentityBlocksInJacobian (const sofa::type::vector< unsigned int > &list_n, core::MatrixDerivId &mID)=0 |
| | fill the jacobian matrix (of the constraints) with identity blocks on the provided list of nodes(dofs) More...
|
| |
| virtual std::list< ConstraintBlock > | constraintBlocks (const std::list< unsigned int > &) const |
| | Express the matrix L in term of block of matrices, using the indices of the lines in the MatrixDeriv container. More...
|
| |
| virtual SReal | getConstraintJacobianTimesVecDeriv (unsigned int, ConstVecId) |
| | Compute the error given a state vector and a line of the Jacobian (line in vector C) More...
|
| |
| virtual void | handleStateChange () |
| |
| virtual void | handleStateChange (core::topology::Topology *t) |
| | Handle state Changes from a given Topology. More...
|
| |
| virtual void | writeState (std::ostream &out) |
| | Write current state to the given output stream. More...
|
| |
| virtual void | applyTranslation (const SReal dx, const SReal dy, const SReal dz)=0 |
| | Translate the current state. More...
|
| |
| virtual void | applyRotation (const SReal, const SReal, const SReal) |
| | Rotate the current state. More...
|
| |
| virtual void | applyRotation (const type::Quat< SReal > q)=0 |
| | Rotate the current state. More...
|
| |
| virtual void | applyScale (const SReal, const SReal, const SReal)=0 |
| | Scale the current state. More...
|
| |
| virtual type::Vec3 | getScale () const |
| |
| virtual bool | addBBox (SReal *, SReal *) |
| |
| virtual bool | pickParticles (const ExecParams *, double, double, double, double, double, double, double, double, std::multimap< double, std::pair< sofa::core::behavior::BaseMechanicalState *, int > > &) |
| | Find mechanical particles hit by the given ray. More...
|
| |
| virtual Size | getMatrixBlockSize () const |
| | Get the number of scalars per Deriv value, as necessary to build mechanical matrices and vectors. More...
|
| |
| virtual Size | getMatrixSize () const |
| | Get the number of rows necessary to build mechanical matrices and vectors. More...
|
| |
| virtual void | copyToBaseVector (linearalgebra::BaseVector *dest, ConstVecId src, unsigned int &offset)=0 |
| | Copy data to a global BaseVector from the state stored in a local vector. More...
|
| |
| virtual void | copyFromBaseVector (VecId dest, const linearalgebra::BaseVector *src, unsigned int &offset)=0 |
| | Copy data to a local vector from the state stored in a global BaseVector. More...
|
| |
| virtual void | copyToBaseMatrix (linearalgebra::BaseMatrix *dest, ConstMatrixDerivId src, unsigned int &offset)=0 |
| | Copy data to a global BaseMatrix from the state stored in a local vector. More...
|
| |
| virtual void | copyToBuffer (SReal *dst, ConstVecId src, unsigned int n) const =0 |
| | Copy data to an external, user-allocated buffer. More...
|
| |
| virtual void | copyFromBuffer (VecId dst, const SReal *src, unsigned int n)=0 |
| | Copy data from an external, user-allocated buffer. More...
|
| |
| virtual void | addFromBuffer (VecId dst, const SReal *src, unsigned int n)=0 |
| | Add data from an external, user-allocated buffer. More...
|
| |
| virtual void | addToBaseVector (linearalgebra::BaseVector *dest, ConstVecId src, unsigned int &offset)=0 |
| | Add data to a global BaseVector from the state stored in a local vector. More...
|
| |
| virtual void | addFromBaseVectorSameSize (VecId dest, const linearalgebra::BaseVector *src, unsigned int &offset)=0 |
| | Perform dest[i][j] += src[offset + i][j] 0<= i < src_entries 0<= j < 3 (for 3D objects) 0 <= j < 2 (for 2D objects) More...
|
| |
| virtual void | addFromBaseVectorDifferentSize (VecId dest, const linearalgebra::BaseVector *src, unsigned int &offset)=0 |
| | Perform dest[ offset + i ][j] += src[i][j] 0<= i < src_entries 0<= j < 3 (for 3D objects) 0 <= j < 2 (for 2D objects) More...
|
| |
| virtual void | printDOF (ConstVecId v, std::ostream &out=std::cerr, int firstIndex=0, int range=-1) const =0 |
| |
| virtual unsigned | printDOFWithElapsedTime (ConstVecId, unsigned=0, unsigned=0, std::ostream &=std::cerr) |
| |
| virtual void | initGnuplot (const std::string) |
| |
| virtual void | exportGnuplot (SReal) |
| |
| virtual void | writeVec (ConstVecId v, std::ostream &out)=0 |
| |
| virtual void | readVec (VecId v, std::istream &in)=0 |
| |
| virtual SReal | compareVec (ConstVecId v, std::istream &in)=0 |
| |
| virtual void | vAvail (const ExecParams *params, VecCoordId &v)=0 |
| |
| virtual void | vAvail (const ExecParams *params, VecDerivId &v)=0 |
| | Increment the index of the given VecDerivId, so that all 'allocated' vectors in this state have a lower index. More...
|
| |
| virtual void | vAlloc (const ExecParams *params, VecCoordId v, const core::VecIdProperties &properties={})=0 |
| | Increment the index of the given MatrixDerivId, so that all 'allocated' vectors in this state have a lower index. More...
|
| |
| virtual void | vAlloc (const ExecParams *params, VecDerivId v, const core::VecIdProperties &properties={})=0 |
| | Allocate a new temporary vector. More...
|
| |
| virtual void | vRealloc (const ExecParams *params, VecCoordId v, const core::VecIdProperties &properties={})=0 |
| | Allocate a new temporary vector. More...
|
| |
| virtual void | vRealloc (const ExecParams *params, VecDerivId v, const core::VecIdProperties &properties={})=0 |
| | Reallocate a new temporary vector. More...
|
| |
| virtual void | vFree (const ExecParams *params, VecCoordId v)=0 |
| | Free a temporary vector. More...
|
| |
| virtual void | vFree (const ExecParams *params, VecDerivId v)=0 |
| | Free a temporary vector. More...
|
| |
| virtual void | vInit (const ExecParams *params, VecCoordId v, ConstVecCoordId vSrc)=0 |
| | Free a temporary vector. More...
|
| |
| virtual void | vInit (const ExecParams *params, VecDerivId v, ConstVecDerivId vSrc)=0 |
| | Initialize an unset vector. More...
|
| |
| virtual void | vOp (const ExecParams *params, VecId v, ConstVecId a=ConstVecId::null(), ConstVecId b=ConstVecId::null(), SReal f=1.0)=0 |
| | Initialize an unset vector. More...
|
| |
| virtual void | vMultiOp (const ExecParams *params, const VMultiOp &ops) |
| | Perform a sequence of linear vector accumulation operation $r_i = sum_j (v_j*f_{ij})$. More...
|
| |
| virtual SReal | vDot (const ExecParams *params, ConstVecId a, ConstVecId b)=0 |
| | Compute the scalar products between two vectors. More...
|
| |
| virtual SReal | vSum (const ExecParams *params, ConstVecId a, unsigned l)=0 |
| | Sum of the entries of state vector a at the power of l>0. This is used to compute the l-norm of the vector. More...
|
| |
| virtual SReal | vMax (const ExecParams *params, ConstVecId a)=0 |
| | Maximum of the absolute values of the entries of state vector a. This is used to compute the infinite-norm of the vector. More...
|
| |
| virtual Size | vSize (const ExecParams *params, ConstVecId v)=0 |
| | Get vector size. More...
|
| |
| virtual void | vThreshold (VecId a, SReal threshold)=0 |
| | Apply a threshold (lower bound) to all entries. More...
|
| |
| | SOFA_ABSTRACT_CLASS (BaseState, objectmodel::BaseObject) |
| |
| virtual Size | getSize () const =0 |
| | Current size of all stored vectors. More...
|
| |
| virtual void | resize (Size vsize)=0 |
| | Resize all stored vector. More...
|
| |
| | SOFA_CLASS (BaseObject, Base) |
| |
| virtual void | draw (const core::visual::VisualParams *) |
| | Render internal data of this object, for debugging purposes. More...
|
| |
| void | setSrc (const std::string &v, std::vector< std::string > *attributeList=nullptr) |
| | Sets a source Object and parses it to collect dependent Data. More...
|
| |
| void | setSrc (const std::string &v, const BaseObject *loader, std::vector< std::string > *attributeList=nullptr) |
| |
| Base * | findLinkDestClass (const BaseClass *destType, const std::string &path, const BaseLink *link) override |
| |
| virtual std::string | getPathName () const override |
| | Return the full path name of this object. More...
|
| |
| SReal | getTime () const |
| | Current time. More...
|
| |
| const BaseContext * | getContext () const |
| |
| BaseContext * | getContext () |
| |
| const BaseObject * | getMaster () const |
| |
| BaseObject * | getMaster () |
| |
| const VecSlaves & | getSlaves () const |
| |
| BaseObject * | getSlave (const std::string &name) const |
| |
| virtual void | addSlave (BaseObject::SPtr s) |
| |
| virtual void | removeSlave (BaseObject::SPtr s) |
| |
| virtual void | handleEvent (Event *) |
| | Handle an event. More...
|
| |
| virtual void | handleTopologyChange () |
| |
| virtual void | handleTopologyChange (core::topology::Topology *t) |
| |
| void | parse (BaseObjectDescription *arg) override |
| | Parse the given description to assign values to this object's fields and potentially other parameters. More...
|
| |
| virtual void | init () |
| | Initialization method called at graph creation and modification, during top-down traversal. More...
|
| |
| virtual void | bwdInit () |
| | Initialization method called at graph creation and modification, during bottom-up traversal. More...
|
| |
| virtual void | reinit () |
| | Update method called when variables used in precomputation are modified. More...
|
| |
| void | updateInternal () |
| | Update method called when variables (used to compute other internal variables) are modified. More...
|
| |
| virtual void | storeResetState () |
| | Save the initial state for later uses in reset() More...
|
| |
| virtual void | reset () |
| | Reset to initial state. More...
|
| |
| virtual void | cleanup () |
| |
| virtual const BaseClass * | getClass () const |
| |
| void | addDeprecatedAttribute (lifecycle::DeprecatedData *attribute) |
| |
| void | addUpdateCallback (const std::string &name, std::initializer_list< BaseData * > inputs, std::function< sofa::core::objectmodel::ComponentState(const DataTracker &)> function, std::initializer_list< BaseData * > outputs) |
| |
| void | addOutputsToCallback (const std::string &name, std::initializer_list< BaseData * > outputs) |
| |
| const std::string & | getName () const |
| | Accessor to the object name. More...
|
| |
| void | setName (const std::string &n) |
| | Set the name of this object. More...
|
| |
| void | setName (const std::string &n, int counter) |
| | Set the name of this object, adding an integer counter. More...
|
| |
| std::string | getTypeName () const |
| | Get the type name of this object (i.e. class and template types) More...
|
| |
| virtual std::string | getClassName () const |
| | Get the class name of this object. More...
|
| |
| virtual std::string | getTemplateName () const final |
| | Get the template type names (if any) used to instantiate this object. More...
|
| |
| std::string | getNameSpaceName () const |
| | Get the template type names (if any) used to instantiate this object. More...
|
| |
| void | setDefinitionSourceFileName (const std::string &sourceFileName) |
| | Set the source filename (where the component is implemented) More...
|
| |
| const std::string & | getDefinitionSourceFileName () const |
| | Get the source filename (where the component is implemented) More...
|
| |
| void | setDefinitionSourceFilePos (const int) |
| | Set the source location (where the component is implemented) More...
|
| |
| int | getDefinitionSourceFilePos () const |
| | Get the source location (where the component is implemented) More...
|
| |
| void | setInstanciationSourceFileName (const std::string &sourceFileName) |
| |
| const std::string & | getInstanciationSourceFileName () const |
| |
| void | setInstanciationSourceFilePos (const int) |
| |
| int | getInstanciationSourceFilePos () const |
| |
| void | addMessage (const sofa::helper::logging::Message &m) const |
| |
| size_t | countLoggedMessages (sofa::helper::logging::Message::TypeSet t=sofa::helper::logging::Message::AnyTypes) const |
| |
| const std::deque< sofa::helper::logging::Message > & | getLoggedMessages () const |
| |
| const std::string | getLoggedMessagesAsString (sofa::helper::logging::Message::TypeSet t=sofa::helper::logging::Message::AnyTypes) const |
| |
| void | clearLoggedMessages () const |
| |
| bool | notMuted () const |
| |
| const sofa::core::objectmodel::TagSet & | getTags () const |
| | Represents the subsets the object belongs to. More...
|
| |
| bool | hasTag (Tag t) const |
| | Return true if the object belong to the given subset. More...
|
| |
| void | addTag (Tag t) |
| | Add a subset qualification to the object. More...
|
| |
| void | removeTag (Tag t) |
| | Remove a subset qualification to the object. More...
|
| |
| ComponentState | getComponentState () const |
| |
| bool | isComponentStateValid () const |
| |
| bool | isComponentStateInvalid () const |
| |
| | SOFA_ATTRIBUTE_DEPRECATED__TOBASECONSTRAINT () virtual const behavior |
| |
| virtual bool | parseField (const std::string &attribute, const std::string &value) |
| | Assign one field value (Data or Link) More...
|
| |
| virtual bool | hasField (const std::string &attribute) const |
| | Check if a given Data field or Link exists. More...
|
| |
| void | parseFields (const std::list< std::string > &str) |
| | Assign the field values stored in the given list of name + value pairs of strings. More...
|
| |
| virtual void | parseFields (const std::map< std::string, std::string * > &str) |
| | Assign the field values stored in the given map of name -> value pairs. More...
|
| |
| void | writeDatas (std::map< std::string, std::string * > &str)=delete |
| | Write the current field values to the given map of name -> value pairs. More...
|
| |
| void | writeDatas (std::ostream &out, const std::string &separator=" ") |
| |
| BaseData * | findData (const std::string &name) const |
| |
| std::vector< BaseData * > | findGlobalField (const std::string &name) const |
| | Find data fields given a name: several can be found as we look into the alias map. More...
|
| |
| BaseLink * | findLink (const std::string &name) const |
| |
| std::vector< BaseLink * > | findLinks (const std::string &name) const |
| | Find link fields given a name: several can be found as we look into the alias map. More...
|
| |
| virtual void | updateLinks (bool logErrors=true) |
| | Update pointers in case the pointed-to objects have appeared. More...
|
| |
| template<class T > |
| BaseData::BaseInitData | initData (::sofa::core::objectmodel::Data< T > *field, const char *name, const char *help, ::sofa::core::objectmodel::BaseData::DataFlags dataflags) |
| | Helper method used to initialize a data field containing a value of type T. More...
|
| |
| template<class T > |
| BaseData::BaseInitData | initData (Data< T > *field, const char *name, const char *help, bool isDisplayed=true, bool isReadOnly=false) |
| | Helper method used to initialize a data field containing a value of type T. More...
|
| |
| template<class T > |
| Data< T >::InitData | initData (Data< T > *field, const T &value, const char *name, const char *help, bool isDisplayed=true, bool isReadOnly=false) |
| | Helper method used to initialize a data field containing a value of type T. More...
|
| |
| void | addData (BaseData *f, const std::string &name) |
| |
| void | addData (BaseData *f) |
| |
| void | removeData (BaseData *f) |
| | Remove a data field. More...
|
| |
| void | addAlias (BaseData *field, const char *alias) |
| | Add an alias to a Data. More...
|
| |
| void | addLink (BaseLink *l) |
| | Add a link. More...
|
| |
| void | addAlias (BaseLink *link, const char *alias) |
| | Add an alias to a Link. More...
|
| |
| const VecData & | getDataFields () const |
| | Accessor to the vector containing all the fields of this object. More...
|
| |
| const MapData & | getDataAliases () const |
| | Accessor to the map containing all the aliases of this object. More...
|
| |
| const VecLink & | getLinks () const |
| | Accessor to the vector containing all the fields of this object. More...
|
| |
| const MapLink & | getLinkAliases () const |
| | Accessor to the map containing all the aliases of this object. More...
|
| |
| virtual bool | findDataLinkDest (BaseData *&ptr, const std::string &path, const BaseLink *link) |
| |
| template<class T > |
| bool | findLinkDest (T *&ptr, const std::string &path, const BaseLink *link) |
| |
| | SOFA_CLASS (SOFA_TEMPLATE(State, TDataTypes), BaseState) |
| |
| sofa::type::TBoundingBox< Real > | computeBBox () const |
| | Compute the bounding box independently from the visibility parameters. More...
|
| |
| void | computeBBox (const core::ExecParams *params, bool onlyVisible=false) override |
| |
| virtual Data< VecCoord > * | write (VecCoordId v)=0 |
| |
| virtual const Data< VecCoord > * | read (ConstVecCoordId v) const =0 |
| |
| virtual Data< VecDeriv > * | write (VecDerivId v)=0 |
| |
| virtual const Data< VecDeriv > * | read (ConstVecDerivId v) const =0 |
| |
| virtual Data< MatrixDeriv > * | write (MatrixDerivId v)=0 |
| |
| virtual const Data< MatrixDeriv > * | read (ConstMatrixDerivId v) const =0 |
| |
| objectmodel::BaseData * | baseWrite (VecId v) override |
| |
| const objectmodel::BaseData * | baseRead (ConstVecId v) const override |
| |
| ReadVecCoord | readPositions () const |
| |
| WriteVecCoord | writePositions () |
| |
| WriteOnlyVecCoord | writeOnlyPositions () |
| |
| ReadVecCoord | readRestPositions () const |
| |
| WriteVecCoord | writeRestPositions () |
| |
| WriteOnlyVecCoord | writeOnlyRestPositions () |
| |
| ReadVecDeriv | readVelocities () const |
| |
| WriteVecDeriv | writeVelocities () |
| |
| WriteOnlyVecDeriv | writeOnlyVelocities () |
| |
| ReadVecDeriv | readForces () const |
| |
| WriteVecDeriv | writeForces () |
| |
| WriteOnlyVecDeriv | writeOnlyForces () |
| |
| ReadVecDeriv | readDx () const |
| |
| WriteVecDeriv | writeDx () |
| |
| WriteOnlyVecDeriv | writeOnlyDx () |
| |
| ReadVecDeriv | readNormals () const |
| |
| const AccumulationVecId< TDataTypes, V_DERIV, V_READ > & | readTotalForces () const |
| | Returns a proxy objects offering simplified access to elements of the cumulative sum of all force containers. More...
|
| |
| void | addToTotalForces (core::ConstVecDerivId forceId) override |
| | The provided VecDerivId will contribute to the sum of all force containers. More...
|
| |
| void | removeFromTotalForces (core::ConstVecDerivId forceId) override |
| |