sofa::simulation::MechanicalVMultiOpVisitor Class Reference

Perform a sequence of linear vector accumulation operation $r_i = sum_j (v_j*f_{ij}). More...

#include <MechanicalVisitor.h>

Inheritance diagram for sofa::simulation::MechanicalVMultiOpVisitor:

Inheritance graph
[legend]
Collaboration diagram for sofa::simulation::MechanicalVMultiOpVisitor:

Collaboration graph
[legend]

Public Types

typedef
core::componentmodel::behavior::BaseMechanicalState::VMultiOp 
VMultiOp

Public Member Functions

 MechanicalVMultiOpVisitor ()
 MechanicalVMultiOpVisitor (const VMultiOp &o)
virtual Result fwdMechanicalState (simulation::Node *, core::componentmodel::behavior::BaseMechanicalState *mm)
 Process the BaseMechanicalState if it is not mapped from the parent level.
virtual Result fwdMappedMechanicalState (simulation::Node *, core::componentmodel::behavior::BaseMechanicalState *)
 Process the BaseMechanicalState if it is mapped from the parent level.
virtual bool isThreadSafe () const
 Specify whether this action can be parallelized.

Data Fields

VMultiOp ops

Detailed Description

Perform a sequence of linear vector accumulation operation $r_i = sum_j (v_j*f_{ij}).

This is used to compute in on steps operations such as $v = v + a*dt, x = x + v*dt$. Note that if the result vector appears inside the expression, it must be the first operand.

Definition at line 260 of file MechanicalVisitor.h.


Member Typedef Documentation

Definition at line 263 of file MechanicalVisitor.h.


Constructor & Destructor Documentation

sofa::simulation::MechanicalVMultiOpVisitor::MechanicalVMultiOpVisitor (  )  [inline]

Definition at line 265 of file MechanicalVisitor.h.

sofa::simulation::MechanicalVMultiOpVisitor::MechanicalVMultiOpVisitor ( const VMultiOp &  o  )  [inline]

Definition at line 267 of file MechanicalVisitor.h.


Member Function Documentation

Visitor::Result sofa::simulation::MechanicalVMultiOpVisitor::fwdMappedMechanicalState ( simulation::Node *  ,
core::componentmodel::behavior::BaseMechanicalState *   
) [virtual]

Process the BaseMechanicalState if it is mapped from the parent level.

Reimplemented from sofa::simulation::MechanicalVisitor.

Definition at line 184 of file MechanicalVisitor.cpp.

References sofa::simulation::Visitor::RESULT_CONTINUE.

Visitor::Result sofa::simulation::MechanicalVMultiOpVisitor::fwdMechanicalState ( simulation::Node *  ,
core::componentmodel::behavior::BaseMechanicalState *   
) [virtual]

Process the BaseMechanicalState if it is not mapped from the parent level.

Reimplemented from sofa::simulation::MechanicalVisitor.

Definition at line 178 of file MechanicalVisitor.cpp.

References ops, sofa::simulation::Visitor::RESULT_CONTINUE, and sofa::core::componentmodel::behavior::BaseMechanicalState::vMultiOp().

virtual bool sofa::simulation::MechanicalVMultiOpVisitor::isThreadSafe (  )  const [inline, virtual]

Specify whether this action can be parallelized.

Reimplemented from sofa::simulation::Visitor.

Definition at line 277 of file MechanicalVisitor.h.


Field Documentation


The documentation for this class was generated from the following files:

Generated on Sun Nov 23 04:24:26 2008 for Sofa by  doxygen 1.5.7.1