Simbody  3.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SimTK::ForceSubsystem::Guts Class Referenceabstract

Public declaration of internals for ForceSubsystem extension. More...

#include <ForceSubsystemGuts.h>

+ Inheritance diagram for SimTK::ForceSubsystem::Guts:

Public Member Functions

 Guts (const String &name, const String &version)
 
virtual ~Guts ()
 
const MultibodySystem & getMultibodySystem () const
 
virtual Real calcPotentialEnergy (const State &state) const =0
 Get this subsystem's contribution to the potential energy. More...
 
 SimTK_DOWNCAST (ForceSubsystem::Guts, Subsystem::Guts)
 
- Public Member Functions inherited from SimTK::Subsystem::Guts
 Guts (const Guts &)
 
Guts & operator= (const Guts &)
 
 Guts (const String &name="<NONAME>", const String &version="0.0.0")
 
const String & getName () const
 
const String & getVersion () const
 
QIndex allocateQ (State &s, const Vector &qInit) const
 
UIndex allocateU (State &s, const Vector &uInit) const
 
ZIndex allocateZ (State &s, const Vector &zInit) const
 
DiscreteVariableIndex allocateDiscreteVariable (State &s, Stage g, AbstractValue *v) const
 
DiscreteVariableIndex allocateAutoUpdateDiscreteVariable (State &, Stage invalidates, AbstractValue *v, Stage updateDependsOn) const
 
CacheEntryIndex allocateCacheEntry (const State &, Stage dependsOn, Stage computedBy, AbstractValue *v) const
 
CacheEntryIndex allocateCacheEntry (const State &state, Stage g, AbstractValue *v) const
 
CacheEntryIndex allocateLazyCacheEntry (const State &state, Stage earliest, AbstractValue *v) const
 
QErrIndex allocateQErr (const State &s, int nqerr) const
 
UErrIndex allocateUErr (const State &s, int nuerr) const
 
UDotErrIndex allocateUDotErr (const State &s, int nudoterr) const
 
EventTriggerByStageIndex allocateEventTriggersByStage (const State &, Stage, int ntriggers) const
 
const Vector & getQ (const State &) const
 
const Vector & getU (const State &) const
 
const Vector & getZ (const State &) const
 
const Vector & getUWeights (const State &) const
 
const Vector & getZWeights (const State &) const
 
const Vector & getQDot (const State &) const
 
const Vector & getUDot (const State &) const
 
const Vector & getZDot (const State &) const
 
const Vector & getQDotDot (const State &) const
 
const Vector & getQErr (const State &) const
 
const Vector & getUErr (const State &) const
 
const Vector & getQErrWeights (const State &) const
 
const Vector & getUErrWeights (const State &) const
 
const Vector & getUDotErr (const State &) const
 
const Vector & getMultipliers (const State &) const
 
const Vector & getEventTriggersByStage (const State &, Stage) const
 
Vector & updQ (State &) const
 
Vector & updU (State &) const
 
Vector & updZ (State &) const
 
void setQ (State &s, const Vector &q) const
 
void setU (State &s, const Vector &u) const
 
void setZ (State &s, const Vector &z) const
 
Vector & updQDot (const State &) const
 
Vector & updUDot (const State &) const
 
Vector & updZDot (const State &) const
 
Vector & updQDotDot (const State &) const
 
Vector & updQErr (const State &) const
 
Vector & updUErr (const State &) const
 
Vector & updUDotErr (const State &) const
 
Vector & updMultipliers (const State &) const
 
Vector & updEventTriggersByStage (const State &, Stage) const
 
Stage getStage (const State &) const
 
const AbstractValue & getDiscreteVariable (const State &, DiscreteVariableIndex) const
 
Real getDiscreteVarLastUpdateTime (const State &s, DiscreteVariableIndex dx) const
 
CacheEntryIndex getDiscreteVarUpdateIndex (const State &s, DiscreteVariableIndex dx) const
 
const AbstractValue & getDiscreteVarUpdateValue (const State &s, DiscreteVariableIndex dx) const
 
AbstractValue & updDiscreteVarUpdateValue (const State &s, DiscreteVariableIndex dx) const
 
bool isDiscreteVarUpdateValueRealized (const State &s, DiscreteVariableIndex dx) const
 
void markDiscreteVarUpdateValueRealized (const State &s, DiscreteVariableIndex dx) const
 
AbstractValue & updDiscreteVariable (State &, DiscreteVariableIndex) const
 
const AbstractValue & getCacheEntry (const State &, CacheEntryIndex) const
 
AbstractValue & updCacheEntry (const State &, CacheEntryIndex) const
 
bool isCacheValueRealized (const State &, CacheEntryIndex) const
 
void markCacheValueRealized (const State &, CacheEntryIndex) const
 
void markCacheValueNotRealized (const State &, CacheEntryIndex) const
 
SystemQIndex getQStart (const State &) const
 
int getNQ (const State &) const
 
SystemUIndex getUStart (const State &) const
 
int getNU (const State &) const
 
SystemZIndex getZStart (const State &) const
 
int getNZ (const State &) const
 
SystemQErrIndex getQErrStart (const State &) const
 
int getNQErr (const State &) const
 
SystemUErrIndex getUErrStart (const State &) const
 
int getNUErr (const State &) const
 
SystemUDotErrIndex getUDotErrStart (const State &) const
 
int getNUDotErr (const State &) const
 
SystemMultiplierIndex getMultipliersStart (const State &) const
 
int getNMultipliers (const State &) const
 
SystemEventTriggerByStageIndex getEventTriggerStartByStage (const State &, Stage) const
 
int getNEventTriggersByStage (const State &, Stage) const
 
MeasureIndex adoptMeasure (AbstractMeasure &m)
 
AbstractMeasure getMeasure (MeasureIndex) const
 
template<class T >
Measure_< T > getMeasure_ (MeasureIndex mx) const
 
bool isInSystem () const
 
bool isInSameSystem (const Subsystem &otherSubsystem) const
 
const System & getSystem () const
 
System & updSystem ()
 
SubsystemIndex getMySubsystemIndex () const
 
const Subsystem & getOwnerSubsystemHandle () const
 
Subsystem & updOwnerSubsystemHandle ()
 
void setOwnerSubsystemHandle (Subsystem &)
 
bool hasOwnerSubsystemHandle () const
 
void setSystem (System &, SubsystemIndex)
 
 Guts (GutsRep *r)
 
bool hasRep () const
 
const GutsRep & getRep () const
 
GutsRep & updRep () const
 
void setRep (GutsRep &r)
 
bool subsystemTopologyHasBeenRealized () const
 
void invalidateSubsystemTopologyCache () const
 
Subsystem::Guts * clone () const
 
void realizeSubsystemTopology (State &) const
 
void realizeSubsystemModel (State &) const
 
void realizeSubsystemInstance (const State &) const
 
void realizeSubsystemTime (const State &) const
 
void realizeSubsystemPosition (const State &) const
 
void realizeSubsystemVelocity (const State &) const
 
void realizeSubsystemDynamics (const State &) const
 
void realizeSubsystemAcceleration (const State &) const
 
void realizeSubsystemReport (const State &) const
 
void calcDecorativeGeometryAndAppend (const State &, Stage, Array_< DecorativeGeometry > &) const
 
void createScheduledEvent (const State &state, EventId &eventId) const
 
void createTriggeredEvent (const State &state, EventId &eventId, EventTriggerByStageIndex &triggerFunctionIndex, Stage stage) const
 
void calcEventTriggerInfo (const State &, Array_< EventTriggerInfo > &) const
 
void calcTimeOfNextScheduledEvent (const State &, Real &tNextEvent, Array_< EventId > &eventIds, bool includeCurrentTime) const
 
void calcTimeOfNextScheduledReport (const State &, Real &tNextEvent, Array_< EventId > &eventIds, bool includeCurrentTime) const
 
void handleEvents (State &, Event::Cause, const Array_< EventId > &eventIds, const HandleEventsOptions &options, HandleEventsResults &results) const
 
void reportEvents (const State &, Event::Cause, const Array_< EventId > &eventIds) const
 

Additional Inherited Members

- Protected Member Functions inherited from SimTK::Subsystem::Guts
virtual Subsystem::Guts * cloneImpl () const =0
 
virtual int realizeSubsystemTopologyImpl (State &s) const
 
virtual int realizeSubsystemModelImpl (State &s) const
 
virtual int realizeSubsystemInstanceImpl (const State &s) const
 
virtual int realizeSubsystemTimeImpl (const State &s) const
 
virtual int realizeSubsystemPositionImpl (const State &s) const
 
virtual int realizeSubsystemVelocityImpl (const State &s) const
 
virtual int realizeSubsystemDynamicsImpl (const State &s) const
 
virtual int realizeSubsystemAccelerationImpl (const State &s) const
 
virtual int realizeSubsystemReportImpl (const State &s) const
 
virtual int calcDecorativeGeometryAndAppendImpl (const State &, Stage, Array_< DecorativeGeometry > &) const
 
virtual void calcEventTriggerInfoImpl (const State &, Array_< EventTriggerInfo > &) const
 
virtual void calcTimeOfNextScheduledEventImpl (const State &, Real &tNextEvent, Array_< EventId > &eventIds, bool includeCurrentTime) const
 
virtual void calcTimeOfNextScheduledReportImpl (const State &, Real &tNextEvent, Array_< EventId > &eventIds, bool includeCurrentTime) const
 
virtual void handleEventsImpl (State &, Event::Cause, const Array_< EventId > &eventIds, const HandleEventsOptions &options, HandleEventsResults &results) const
 
virtual void reportEventsImpl (const State &, Event::Cause, const Array_< EventId > &eventIds) const
 
void advanceToStage (const State &s, Stage g) const
 

Detailed Description

Public declaration of internals for ForceSubsystem extension.

Constructor & Destructor Documentation

SimTK::ForceSubsystem::Guts::Guts ( const String &  name,
const String &  version 
)
inline
virtual SimTK::ForceSubsystem::Guts::~Guts ( )
inlinevirtual

Reimplemented from SimTK::Subsystem::Guts.

Member Function Documentation

const MultibodySystem& SimTK::ForceSubsystem::Guts::getMultibodySystem ( ) const
inline
virtual Real SimTK::ForceSubsystem::Guts::calcPotentialEnergy ( const State &  state) const
pure virtual

Get this subsystem's contribution to the potential energy.

The state must be at Dynamics stage or later.

SimTK::ForceSubsystem::Guts::SimTK_DOWNCAST ( ForceSubsystem::Guts  ,
Subsystem::Guts   
)

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