
 SimTK_MEASURE_HANDLE_PREAMBLE (SampleAndHold, Measure_< T >) 

 SampleAndHold (Subsystem &sub, const Measure_< T > &source, EventId e) 

void  setValue (State &s, const T &value) const 
 Set the held value to a particular value, unrelated to the source. More...


void  sample (State &s) const 
 Force this Measure to sample its input at the current time. More...


const Measure_< T > &  getSource () const 

EventId  getEventId () const 

SampleAndHold &  setSource (const Measure_< T > &s) 

SampleAndHold &  setEventId (EventId) 

 SimTK_MEASURE_HANDLE_POSTSCRIPT (SampleAndHold, Measure_< T >) 

 SimTK_MEASURE_HANDLE_PREAMBLE_ABSTRACT (Measure_, AbstractMeasure) 
 This class is still abstract so we don't want it to allocate an Implementation object in its default constructor. More...


const T &  getValue (const State &s, int derivOrder=0) const 
 Retrieve the Value of this Measure or one of its time derivatives, assuming the supplied State has been realized to at least the required stage for the selected value or derivative, as reported by getDependsOnStage(). More...


Measure_ &  setDefaultValue (const T &defaultValue) 
 Change the default value associated with this Measure. More...


const T &  getDefaultValue () const 
 Obtain a reference to the default value associated with this Measure. More...


 SimTK_MEASURE_HANDLE_POSTSCRIPT (Measure_, AbstractMeasure) 

 AbstractMeasure (Implementation *g=0) 
 Provide an Implementation for this AbstractMeasure and bump its reference count. More...


 AbstractMeasure (Subsystem &, Implementation *g, const SetHandle &) 
 Construct this handle with a given Implementation object (whose reference count will be bumped) and then let the given Subsystem adopt this Measure (which will again bump the Implementation's reference count, leaving us with two new handles). More...


 AbstractMeasure (const AbstractMeasure &) 
 Shallow copy constructor copies the pointer from the source Implementation object and bumps its reference count. More...


AbstractMeasure &  operator= (const AbstractMeasure &source) 
 Shallow assignment operator results in this handle referencing the same Implementation object as does the source. More...


 ~AbstractMeasure () 
 Destructor decrements the Implementation's reference count and deletes the object if the count goes to zero. More...


AbstractMeasure &  shallowAssign (const AbstractMeasure &) 
 Shallow assignment operator destructs the current Implementation object (meaning its reference count is decremented and the object actually deleted only if the count goes to zero), then copies the Implementation pointer from the source and bumps its reference count. More...


AbstractMeasure &  deepAssign (const AbstractMeasure &source) 
 Deep assignment clones the Implementation object pointed to by the source handle, so that this handle ends up pointing to a new Measure object similar to the original but not yet contained in any Subsystem. More...


int  getNumTimeDerivatives () const 
 Every Measure can produce a value, and some can provide one or more total derivatives with respect to time of that value. More...


Stage  getDependsOnStage (int derivOrder=0) const 
 At what Stage can we expect the value of this AbstractMeasure or one of its time derivatives to be available? Users of Measures will typically impose restrictions on the levels they will accept. More...


bool  isSameMeasure (const AbstractMeasure &other) const 
 There can be multiple handles on the same Measure. More...


bool  isEmptyHandle () const 

bool  isInSubsystem () const 
 Test whether this Measure object has been adopted by a Subsystem. More...


const Subsystem &  getSubsystem () const 
 Return a reference to the Subsystem that owns this Measure. More...


MeasureIndex  getSubsystemMeasureIndex () const 
 Return the MeasureIndex by which this Measure is known to the Subsystem that owns it. More...


const Implementation &  getImpl () const 

Implementation &  updImpl () 

bool  hasImpl () const 

int  getRefCount () const 
