sofa::core::objectmodel::Context Class Reference

Implementation of BaseContext, storing all shared parameters in Datas. More...

#include <Context.h>

Inheritance diagram for sofa::core::objectmodel::Context:

Inheritance graph
[legend]
Collaboration diagram for sofa::core::objectmodel::Context:

Collaboration graph
[legend]

Public Types

typedef BaseContext::Frame Frame
typedef BaseContext::Vec3 Vec3
typedef BaseContext::Quat Quat
typedef BaseContext::SpatialVector SpatialVector

Public Member Functions

 Context ()
virtual ~Context ()
void copyContext (const Context &c)
 Copy the context variables from the given instance.
void copySimulationContext (const Context &c)
 Copy the context variables of visualization from the given instance.
void copyVisualContext (const Context &c)
 Copy the context variables of visualization from the given instance.
Parameters
virtual bool isActive () const
 The Context is active.
virtual void setActive (bool val)
 State of the context.
virtual Vec3 getLocalGravity () const
 Gravity in the local coordinate system.
virtual const Vec3 & getGravityInWorld () const
 Gravity in the local coordinate system.
virtual void setGravityInWorld (const Vec3 &)
 Gravity in world coordinates.
virtual double getDt () const
 Simulation timestep.
virtual double getTime () const
 Simulation time.
virtual bool getAnimate () const
 Animation flag.
virtual bool getMultiThreadSimulation () const
 MultiThreading activated.
virtual bool getShowCollisionModels () const
 Display flags: Collision Models.
virtual bool getShowBoundingCollisionModels () const
 Display flags: Bounding Collision Models.
virtual bool getShowBehaviorModels () const
 Display flags: Behavior Models.
virtual bool getShowVisualModels () const
 Display flags: Visual Models.
virtual bool getShowMappings () const
 Display flags: Mappings.
virtual bool getShowMechanicalMappings () const
 Display flags: Mechanical Mappings.
virtual bool getShowForceFields () const
 Display flags: ForceFields.
virtual bool getShowInteractionForceFields () const
 Display flags: InteractionForceFields.
virtual bool getShowWireFrame () const
 Display flags: WireFrame.
virtual bool getShowNormals () const
 Display flags: Normals.
virtual int getCurrentLevel () const
 Multiresolution support (UNSTABLE).
virtual int getCoarsestLevel () const
 Multiresolution support (UNSTABLE).
virtual int getFinestLevel () const
 Multiresolution support (UNSTABLE).
Local Coordinate System
Projection from the local coordinate system to the world coordinate system.

virtual const Frame & getPositionInWorld () const
 Projection from the local coordinate system to the world coordinate system.
virtual void setPositionInWorld (const Frame &)
 Projection from the local coordinate system to the world coordinate system.
virtual const SpatialVector & getVelocityInWorld () const
 Spatial velocity (linear, angular) of the local frame with respect to the world.
virtual void setVelocityInWorld (const SpatialVector &)
 Spatial velocity (linear, angular) of the local frame with respect to the world.
virtual const Vec3 & getVelocityBasedLinearAccelerationInWorld () const
 Linear acceleration of the origin induced by the angular velocity of the ancestors.
virtual void setVelocityBasedLinearAccelerationInWorld (const Vec3 &)
 Linear acceleration of the origin induced by the angular velocity of the ancestors.
Parameters Setters
virtual void setDt (double dt)
 Simulation timestep.
virtual void setTime (double t)
 Simulation time.
virtual void setAnimate (bool val)
 Animation flag.
virtual void setMultiThreadSimulation (bool val)
 MultiThreading activated.
virtual void setShowCollisionModels (bool val)
 Display flags: Collision Models.
virtual void setShowBehaviorModels (bool val)
 Display flags: Behavior Models.
virtual void setShowBoundingCollisionModels (bool val)
 Display flags: Bounding Collision Models.
virtual void setShowVisualModels (bool val)
 Display flags: Visual Models.
virtual void setShowMappings (bool val)
 Display flags: Mappings.
virtual void setShowMechanicalMappings (bool val)
 Display flags: Mechanical Mappings.
virtual void setShowForceFields (bool val)
 Display flags: ForceFields.
virtual void setShowInteractionForceFields (bool val)
 Display flags: InteractionForceFields.
virtual void setShowWireFrame (bool val)
 Display flags: WireFrame.
virtual void setShowNormals (bool val)
 Display flags: Normals.
virtual bool setCurrentLevel (int l)
 Multiresolution support (UNSTABLE) : Set the current level, return false if l >= coarsestLevel.
virtual void setCoarsestLevel (int l)
 Multiresolution support (UNSTABLE).
virtual void setFinestLevel (int l)
 Multiresolution support (UNSTABLE).

Data Fields

Data< bool > is_activated
Data< Vec3 > worldGravity_
 Gravity IN THE WORLD COORDINATE SYSTEM.
Data< double > dt_
Data< double > time_
Data< bool > animate_
Data< int > showVisualModels_
Data< int > showBehaviorModels_
Data< int > showCollisionModels_
Data< int > showBoundingCollisionModels_
Data< int > showMappings_
Data< int > showMechanicalMappings_
Data< int > showForceFields_
Data< int > showInteractionForceFields_
Data< int > showWireFrame_
Data< int > showNormals_
Data< bool > multiThreadSimulation_
Frame localFrame_
SpatialVector spatialVelocityInWorld_
Vec3 velocityBasedLinearAccelerationInWorld_
For multiresolution (UNSTABLE)
Data< int > currentLevel_
Data< int > coarsestLevel_
Data< int > finestLevel_

Friends

std::ostream & operator<< (std::ostream &out, const Context &c)

Detailed Description

Implementation of BaseContext, storing all shared parameters in Datas.

Definition at line 52 of file Context.h.


Member Typedef Documentation

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 56 of file Context.h.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 58 of file Context.h.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 59 of file Context.h.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 57 of file Context.h.


Constructor & Destructor Documentation

sofa::core::objectmodel::Context::Context (  ) 

virtual sofa::core::objectmodel::Context::~Context (  )  [inline, virtual]

Definition at line 91 of file Context.h.


Member Function Documentation

void sofa::core::objectmodel::Context::copyContext ( const Context &  c  ) 

Copy the context variables from the given instance.

Definition at line 383 of file Context.cpp.

References copySimulationContext(), and copyVisualContext().

Referenced by sofa::simulation::tree::GNode::updateContext().

void sofa::core::objectmodel::Context::copySimulationContext ( const Context &  c  ) 

void sofa::core::objectmodel::Context::copyVisualContext ( const Context &  c  ) 

bool sofa::core::objectmodel::Context::getAnimate (  )  const [virtual]

Animation flag.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 155 of file Context.cpp.

References animate_, and sofa::core::objectmodel::Data< T >::getValue().

int sofa::core::objectmodel::Context::getCoarsestLevel (  )  const [virtual]

Multiresolution support (UNSTABLE).

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 243 of file Context.cpp.

References coarsestLevel_, and sofa::core::objectmodel::Data< T >::getValue().

int sofa::core::objectmodel::Context::getCurrentLevel (  )  const [virtual]

Multiresolution support (UNSTABLE).

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 239 of file Context.cpp.

References currentLevel_, and sofa::core::objectmodel::Data< T >::getValue().

double sofa::core::objectmodel::Context::getDt (  )  const [virtual]

int sofa::core::objectmodel::Context::getFinestLevel (  )  const [virtual]

Multiresolution support (UNSTABLE).

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 247 of file Context.cpp.

References finestLevel_, and sofa::core::objectmodel::Data< T >::getValue().

const Context::Vec3 & sofa::core::objectmodel::Context::getGravityInWorld (  )  const [virtual]

Gravity in the local coordinate system.

Gravity vector in world coordinates.

Gravity in world coordinates

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 147 of file Context.cpp.

References worldGravity_.

Context::Vec3 sofa::core::objectmodel::Context::getLocalGravity (  )  const [virtual]

Gravity in the local coordinate system.

Gravity vector in local coordinates.

Gravity vector in local coordinates

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 141 of file Context.cpp.

References sofa::defaulttype::SolidTypes< R >::Transform::backProjectVector(), getPositionInWorld(), and worldGravity_.

Referenced by sofa::core::objectmodel::operator<<().

bool sofa::core::objectmodel::Context::getMultiThreadSimulation (  )  const [virtual]

MultiThreading activated.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 161 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::getValue(), and multiThreadSimulation_.

Referenced by sofa::simulation::tree::Simulation::animate().

const Context::Frame & sofa::core::objectmodel::Context::getPositionInWorld (  )  const [virtual]

Projection from the local coordinate system to the world coordinate system.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 88 of file Context.cpp.

References localFrame_.

Referenced by getLocalGravity(), sofa::core::objectmodel::operator<<(), and sofa::simulation::VisualDrawVisitor::processNodeTopDown().

bool sofa::core::objectmodel::Context::getShowBehaviorModels (  )  const [virtual]

Display flags: Behavior Models.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 181 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::getValue(), and showBehaviorModels_.

bool sofa::core::objectmodel::Context::getShowBoundingCollisionModels (  )  const [virtual]

Display flags: Bounding Collision Models.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 174 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::getValue(), and showBoundingCollisionModels_.

bool sofa::core::objectmodel::Context::getShowCollisionModels (  )  const [virtual]

Display flags: Collision Models.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 167 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::getValue(), and showCollisionModels_.

bool sofa::core::objectmodel::Context::getShowForceFields (  )  const [virtual]

Display flags: ForceFields.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 209 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::getValue(), and showForceFields_.

bool sofa::core::objectmodel::Context::getShowInteractionForceFields (  )  const [virtual]

Display flags: InteractionForceFields.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 216 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::getValue(), and showInteractionForceFields_.

bool sofa::core::objectmodel::Context::getShowMappings (  )  const [virtual]

Display flags: Mappings.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 195 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::getValue(), and showMappings_.

bool sofa::core::objectmodel::Context::getShowMechanicalMappings (  )  const [virtual]

Display flags: Mechanical Mappings.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 202 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::getValue(), and showMechanicalMappings_.

bool sofa::core::objectmodel::Context::getShowNormals (  )  const [virtual]

Display flags: Normals.

Display flags: Normal.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 230 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::getValue(), and showNormals_.

bool sofa::core::objectmodel::Context::getShowVisualModels (  )  const [virtual]

Display flags: Visual Models.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 188 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::getValue(), and showVisualModels_.

bool sofa::core::objectmodel::Context::getShowWireFrame (  )  const [virtual]

Display flags: WireFrame.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 223 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::getValue(), and showWireFrame_.

double sofa::core::objectmodel::Context::getTime (  )  const [virtual]

const Context::Vec3 & sofa::core::objectmodel::Context::getVelocityBasedLinearAccelerationInWorld (  )  const [virtual]

Linear acceleration of the origin induced by the angular velocity of the ancestors.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 110 of file Context.cpp.

References velocityBasedLinearAccelerationInWorld_.

Referenced by sofa::core::objectmodel::operator<<().

const Context::SpatialVector & sofa::core::objectmodel::Context::getVelocityInWorld (  )  const [virtual]

Spatial velocity (linear, angular) of the local frame with respect to the world.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 99 of file Context.cpp.

References spatialVelocityInWorld_.

Referenced by sofa::core::objectmodel::operator<<().

bool sofa::core::objectmodel::Context::isActive (  )  const [virtual]

void sofa::core::objectmodel::Context::setActive ( bool  val  )  [virtual]

void sofa::core::objectmodel::Context::setAnimate ( bool  val  )  [virtual]

Animation flag.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 280 of file Context.cpp.

References animate_, and sofa::core::objectmodel::Data< T >::setValue().

Referenced by main().

void sofa::core::objectmodel::Context::setCoarsestLevel ( int  l  )  [virtual]

Multiresolution support (UNSTABLE).

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 371 of file Context.cpp.

References coarsestLevel_, and sofa::core::objectmodel::Data< T >::setValue().

bool sofa::core::objectmodel::Context::setCurrentLevel ( int  l  )  [virtual]

Multiresolution support (UNSTABLE) : Set the current level, return false if l >= coarsestLevel.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 354 of file Context.cpp.

References coarsestLevel_, currentLevel_, sofa::core::objectmodel::Data< T >::getValue(), and sofa::core::objectmodel::Data< T >::setValue().

void sofa::core::objectmodel::Context::setDt ( double  dt  )  [virtual]

Simulation timestep.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 256 of file Context.cpp.

References dt_, and sofa::core::objectmodel::Data< T >::setValue().

void sofa::core::objectmodel::Context::setFinestLevel ( int  l  )  [virtual]

Multiresolution support (UNSTABLE).

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 375 of file Context.cpp.

References finestLevel_, and sofa::core::objectmodel::Data< T >::setValue().

void sofa::core::objectmodel::Context::setGravityInWorld ( const Vec3 &  g  )  [virtual]

Gravity in world coordinates.

Gravity vector.

Gravity vector

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 274 of file Context.cpp.

References worldGravity_.

Referenced by Context(), and main().

void sofa::core::objectmodel::Context::setMultiThreadSimulation ( bool  val  )  [virtual]

MultiThreading activated.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 286 of file Context.cpp.

References multiThreadSimulation_, and sofa::core::objectmodel::Data< T >::setValue().

void sofa::core::objectmodel::Context::setPositionInWorld ( const Frame &  f  )  [virtual]

Projection from the local coordinate system to the world coordinate system.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 93 of file Context.cpp.

References localFrame_.

Referenced by Context().

void sofa::core::objectmodel::Context::setShowBehaviorModels ( bool  val  )  [virtual]

Display flags: Behavior Models.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 304 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::setValue(), and showBehaviorModels_.

Referenced by sofa::gui::qt::RealGUI::graphRemoveObject(), and main().

void sofa::core::objectmodel::Context::setShowBoundingCollisionModels ( bool  val  )  [virtual]

Display flags: Bounding Collision Models.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 298 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::setValue(), and showBoundingCollisionModels_.

Referenced by sofa::gui::qt::RealGUI::graphRemoveObject(), and main().

void sofa::core::objectmodel::Context::setShowCollisionModels ( bool  val  )  [virtual]

Display flags: Collision Models.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 292 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::setValue(), and showCollisionModels_.

Referenced by sofa::gui::qt::RealGUI::graphRemoveObject(), and main().

void sofa::core::objectmodel::Context::setShowForceFields ( bool  val  )  [virtual]

Display flags: ForceFields.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 328 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::setValue(), and showForceFields_.

Referenced by sofa::gui::qt::RealGUI::graphRemoveObject(), and main().

void sofa::core::objectmodel::Context::setShowInteractionForceFields ( bool  val  )  [virtual]

Display flags: InteractionForceFields.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 334 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::setValue(), and showInteractionForceFields_.

Referenced by sofa::gui::qt::RealGUI::graphRemoveObject(), and main().

void sofa::core::objectmodel::Context::setShowMappings ( bool  val  )  [virtual]

Display flags: Mappings.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 316 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::setValue(), and showMappings_.

Referenced by sofa::gui::qt::RealGUI::graphRemoveObject(), and main().

void sofa::core::objectmodel::Context::setShowMechanicalMappings ( bool  val  )  [virtual]

Display flags: Mechanical Mappings.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 322 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::setValue(), and showMechanicalMappings_.

Referenced by sofa::gui::qt::RealGUI::graphRemoveObject(), and main().

void sofa::core::objectmodel::Context::setShowNormals ( bool  val  )  [virtual]

Display flags: Normals.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 346 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::setValue(), and showNormals_.

Referenced by sofa::gui::qt::RealGUI::graphRemoveObject(), and main().

void sofa::core::objectmodel::Context::setShowVisualModels ( bool  val  )  [virtual]

Display flags: Visual Models.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 310 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::setValue(), and showVisualModels_.

Referenced by sofa::gui::qt::RealGUI::graphRemoveObject(), and main().

void sofa::core::objectmodel::Context::setShowWireFrame ( bool  val  )  [virtual]

Display flags: WireFrame.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 340 of file Context.cpp.

References sofa::core::objectmodel::Data< T >::setValue(), and showWireFrame_.

Referenced by sofa::gui::qt::RealGUI::graphRemoveObject(), and main().

void sofa::core::objectmodel::Context::setTime ( double  t  )  [virtual]

void sofa::core::objectmodel::Context::setVelocityBasedLinearAccelerationInWorld ( const Vec3 &  a  )  [virtual]

Linear acceleration of the origin induced by the angular velocity of the ancestors.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 115 of file Context.cpp.

References velocityBasedLinearAccelerationInWorld_.

Referenced by Context().

void sofa::core::objectmodel::Context::setVelocityInWorld ( const SpatialVector &  v  )  [virtual]

Spatial velocity (linear, angular) of the local frame with respect to the world.

Reimplemented from sofa::core::objectmodel::BaseContext.

Definition at line 104 of file Context.cpp.

References spatialVelocityInWorld_.

Referenced by Context().


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  out,
const Context &  c 
) [friend]

Definition at line 426 of file Context.cpp.


Field Documentation

Definition at line 65 of file Context.h.

Referenced by copySimulationContext(), getAnimate(), and setAnimate().

Definition at line 81 of file Context.h.

Referenced by getCoarsestLevel(), setCoarsestLevel(), and setCurrentLevel().

Definition at line 80 of file Context.h.

Referenced by getCurrentLevel(), and setCurrentLevel().

Definition at line 63 of file Context.h.

Referenced by copySimulationContext(), getDt(), and setDt().

Definition at line 82 of file Context.h.

Referenced by getFinestLevel(), and setFinestLevel().

Definition at line 86 of file Context.h.

Referenced by copySimulationContext(), getPositionInWorld(), and setPositionInWorld().

Definition at line 87 of file Context.h.

Referenced by copySimulationContext(), getVelocityInWorld(), and setVelocityInWorld().

Definition at line 64 of file Context.h.

Referenced by copySimulationContext(), getTime(), and setTime().

Gravity IN THE WORLD COORDINATE SYSTEM.

Definition at line 62 of file Context.h.

Referenced by copySimulationContext(), getGravityInWorld(), getLocalGravity(), sofa::simulation::tree::GNode::initVisualContext(), and setGravityInWorld().


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

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