Public Member Functions |
| Storage (int aCapacity=Storage_DEFAULT_CAPACITY, const std::string &aName="UNKNOWN") |
| Storage (const std::string &aFileName, bool readHeadersOnly=false) SWIG_DECLARE_EXCEPTION |
| Storage (const Storage &aStorage, bool aCopyData=true) |
| Storage (const Storage &aStorage, int aStateIndex, int aN, const char *aDelimiter="\t") |
virtual | ~Storage () |
Storage & | operator= (const Storage &aStorage) |
| Assignment operator to copy contents of an existing storage.
|
const std::string & | getName () const |
| Get the name of this Object.
|
const std::string & | getDescription () const |
| Get description, a one-liner summary.
|
void | setName (const std::string &aName) |
| Set the name of the Object.
|
void | setDescription (const std::string &aDescription) |
| Set description, a one-liner summary.
|
const int & | getFileVersion () const |
virtual int | getSize () const |
int | getSmallestNumberOfStates () const |
virtual StateVector * | getStateVector (int aTimeIndex) const |
virtual StateVector * | getLastStateVector () const |
virtual double | getFirstTime () const |
virtual double | getLastTime () const |
double | getMinTimeStep () const |
bool | getTime (int aTimeIndex, double &rTime, int aStateIndex=-1) const |
virtual int | getTimeColumn (double *&rTimes, int aStateIndex=-1) const |
virtual int | getTimeColumn (Array< double > &rTimes, int aStateIndex=-1) const |
virtual void | getTimeColumnWithStartTime (Array< double > &rTimes, double startTime=0.0) const |
void | addKeyValuePair (const std::string &aKey, const std::string &aValue) |
void | getValueForKey (const std::string &aKey, std::string &rValue) const |
bool | hasKey (const std::string &aKey) const |
const bool | isInDegrees () const |
void | setInDegrees (const bool isInDegrees) |
int | getData (int aTimeIndex, int aStateIndex, double &rValue) const |
int | getData (int aTimeIndex, int aStateIndex, int aN, double **rData) const |
int | getData (int aTimeIndex, int aStateIndex, int aN, double *rData) const |
int | getData (int aTimeIndex, int aN, double **rData) const |
int | getData (int aTimeIndex, int aN, double *rData) const |
int | getDataAtTime (double aTime, int aN, double **rData) const |
int | getDataAtTime (double aTime, int aN, double *rData) const |
int | getDataAtTime (double aTime, int aN, Array< double > &rData) const |
int | getDataColumn (int aStateIndex, double *&rData) const |
int | getDataColumn (int aStateIndex, Array< double > &rData) const |
void | setDataColumnToFixedValue (const std::string &columnName, double newValue) |
void | setDataColumn (int aStateIndex, const Array< double > &aData) |
int | getDataColumn (const std::string &columnName, double *&rData) const |
void | getDataColumn (const std::string &columnName, Array< double > &data, double startTime=0.0) |
void | getDataForIdentifier (const std::string &identifier, Array< Array< double > > &rData, double startTime=0.0) const |
| A data block, like a vector for a force, point, etc...
|
OpenSim::Array< int > | getColumnIndicesForIdentifier (const std::string &identifier) const |
| Get indices of columns corresponding to identifier, empty array if identifier is not found in labels.
|
void | setStepInterval (int aStepInterval) |
int | getStepInterval () const |
void | setCapacityIncrement (int aIncrement) |
int | getCapacityIncrement () const |
void | setWriteSIMMHeader (bool aTrueFalse) |
bool | getWriteSIMMHeader () const |
void | setHeaderToken (const std::string &aToken) |
const std::string & | getHeaderToken () const |
const int | getStateIndex (const std::string &aColumnName, int startIndex=0) const |
void | setColumnLabels (const Array< std::string > &aColumnLabels) |
const Array< std::string > & | getColumnLabels () const |
int | reset (int aIndex=0) |
int | reset (double aTime) |
void | purge () |
void | crop (const double newStartTime, const double newFinalTime) |
virtual int | append (const StateVector &aVec, bool aCheckForDuplicateTime=true) |
virtual int | append (const Array< StateVector > &aArray) |
virtual int | append (double aT, int aN, const double *aY, bool aCheckForDuplicateTime=true) |
virtual int | append (double aT, const SimTK::Vector &aY, bool aCheckForDuplicateTime=true) |
virtual int | append (double aT, const SimTK::Vec3 &aY, bool aCheckForDuplicateTime=true) |
virtual int | store (int aStep, double aT, int aN, const double *aY) |
void | shiftTime (double aValue) |
void | scaleTime (double aValue) |
void | add (double aValue) |
void | add (int aN, double aY[]) |
void | add (int aN, double aValue) |
void | add (StateVector *aStateVector) |
void | add (Storage *aStorage) |
void | subtract (double aValue) |
void | subtract (int aN, double aY[]) |
void | subtract (StateVector *aStateVector) |
void | subtract (Storage *aStorage) |
void | multiply (double aValue) |
void | multiplyColumn (int aIndex, double aValue) |
void | multiply (int aN, double aY[]) |
void | multiply (StateVector *aStateVector) |
void | multiply (Storage *aStorage) |
void | divide (double aValue) |
void | divide (int aN, double aY[]) |
void | divide (StateVector *aStateVector) |
void | divide (Storage *aStorage) |
Storage * | integrate (int aI1=-2, int aI2=-1) const |
Storage * | integrate (double aT1, double aT2) const |
int | computeArea (int aN, double *aArea) const |
int | computeArea (double aTI, double aTF, int aN, double *aArea) const |
int | computeAverage (int aN, double *aAve) const |
int | computeAverage (double aTI, double aTF, int aN, double *aAve) const |
void | pad (int aPadSize) |
void | smoothSpline (int aOrder, double aCutoffFrequency) |
void | lowpassIIR (double aCutoffFequency) |
void | lowpassFIR (int aOrder, double aCutoffFequency) |
void | addToRdStorage (Storage &rStorage, double aStartTime, double aEndTime) |
virtual int | findIndex (double aT) const |
virtual int | findIndex (int aI, double aT) const |
void | findFrameRange (double aStartTime, double aEndTime, int &oStartFrame, int &oEndFrame) const |
double | resample (double aDT, int aDegree) |
double | resampleLinear (double aDT) |
double | compareColumn (Storage &aOtherStorage, const std::string &aColumnName, double startTime, double endTime=-1.0) |
double | compareColumnRMS (Storage &aOtherStorage, const std::string &aColumnName, double startTime=SimTK::NaN, double endTime=SimTK::NaN) |
void | compareWithStandard (Storage &standard, Array< std::string > &columnsUsed, Array< double > &comparisons) |
bool | makeStorageLabelsUnique () |
void | print () const |
bool | print (const std::string &aFileName, const std::string &aMode="w", const std::string &aComment="") const |
int | print (const std::string &aFileName, double aDT, const std::string &aMode="w") const |
void | setOutputFileName (const std::string &aFileName) |
void | interpolateAt (const Array< double > &targetTimes) |
| StorageInterface (const std::string &aFileName) SWIG_DECLARE_EXCEPTION |
| StorageInterface (const StorageInterface &aStorageInterface) |
virtual | ~StorageInterface () |
StorageInterface & | operator= (const StorageInterface &aStorageInterface) |
virtual | ~Object () |
| Virtual destructor for cleanup.
|
virtual Object * | clone () const =0 |
| Create a new heap-allocated copy of the concrete object to which this
Object refers.
|
virtual const std::string & | getConcreteClassName () const =0 |
| Returns the class name of the concrete %Object-derived class of the
actual object referenced by this Object, as a string.
|
virtual const VisibleObject * | getDisplayer () const |
| Methods to support making the object displayable in the GUI or Visualizer Implemented only in few objects.
|
virtual VisibleObject * | updDisplayer () |
| get Non const pointer to VisibleObject
|
bool | isEqualTo (const Object &aObject) const |
| Equality operator wrapper for use from languages not supporting operator overloading.
|
Object & | operator= (const Object &aObject) |
| Copy assignment copies he base class fields, including the
properties.
|
virtual bool | operator== (const Object &aObject) const |
| Determine if two objects are equal.
|
virtual bool | operator< (const Object &aObject) const |
| Provide an ordering for objects so they can be put in sorted
containers.
|
const std::string & | getAuthors () const |
| Get Authors of this Object.
|
void | setAuthors (const std::string &authors) |
| Set Authors of this object, call this method in your constructor if needed.
|
const std::string & | getReferences () const |
| Get references or publications to cite if using this object.
|
void | setReferences (const std::string &references) |
| Set references or publications to cite if using this object.
|
int | getNumProperties () const |
| Determine how many properties are stored with this Object.
|
const AbstractProperty & | getPropertyByIndex (int propertyIndex) const |
| Get a const reference to a property by its index number, returned as
an AbstractProperty.
|
AbstractProperty & | updPropertyByIndex (int propertyIndex) |
| Get a writable reference to a property by its index number, returned as
an AbstractProperty.
|
bool | hasProperty (const std::string &name) const |
| Return true if this %Object has a property of any type with the
given name, which must not be empty.
|
const AbstractProperty & | getPropertyByName (const std::string &name) const |
| Get a const reference to a property by its name, returned as
an AbstractProperty.
|
AbstractProperty & | updPropertyByName (const std::string &name) |
| Get a writable reference to a property by its name, returned as
an AbstractProperty.
|
template<class T > |
bool | hasProperty () const |
| Return true if this %Object contains an unnamed, one-object property
that contains objects of the given template type T.
|
template<class T > |
const Property< T > & | getProperty (const PropertyIndex &index) const |
| Get property of known type Property\<T> as a const reference;
the property must be present and have the right type.
|
template<class T > |
Property< T > & | updProperty (const PropertyIndex &index) |
| Get property of known type Property\<T> as a writable reference;
the property must be present and have the right type.
|
void | setObjectIsUpToDateWithProperties () |
| When an object is initialized using the current values of its
properties, it can set a flag indicating that it is up to date.
|
bool | isObjectUpToDateWithProperties () const |
| Returns \c true if any property's value has changed since the last time
setObjectIsUpToDateWithProperties() was called.
|
void | readObjectFromXMLNodeOrFile (SimTK::Xml::Element &objectElement, int versionNumber) |
| We're given an XML element from which we are to populate this Object.
|
virtual void | updateFromXMLNode (SimTK::Xml::Element &objectElement, int versionNumber) |
| Use this method to deserialize an object from a SimTK::Xml::Element.
|
virtual void | updateXMLNode (SimTK::Xml::Element &parent) |
| Serialize this object into the XML node that represents it.
|
bool | getInlined () const |
| Inlined means an in-memory Object that is not associated with
an XMLDocument.
|
void | setInlined (bool aInlined, const std::string &aFileName="") |
| Mark this as inlined or not and optionally provide a file name
to associate with the new XMLDocument for the non-inline case.
|
std::string | getDocumentFileName () const |
| If there is a document associated with this object then return the
file name maintained by the document.
|
void | setAllPropertiesUseDefault (bool aUseDefault) |
bool | print (const std::string &fileName) |
| Write this %Object into an XML file of the given name; conventionally
the suffix to use is ".osim".
|
std::string | dump (bool dumpName=false) |
| dump the XML representation of this Object into an std::string and return it.
|
void | clearObjectIsUpToDateWithProperties () |
| For testing or debugging purposes, manually clear the "object is up to
date with respect to properties" flag.
|
virtual bool | isA (const char *type) const |
| The default implementation returns true only if the supplied string
is "Object"; each Object-derived class overrides this to match its own class name.
|
const std::string & | toString () const |
| Wrapper to be used on Java side to display objects in tree; this returns
just the object's name.
|
PropertySet & | getPropertySet () |
| OBSOLETE: Get a reference to the PropertySet maintained by the
Object.
|
const PropertySet & | getPropertySet () const |
Additional Inherited Members |
| Object () |
| The default constructor is only for use by constructors of
derived types.
|
| Object (const std::string &fileName, bool aUpdateFromXMLNode=true) SWIG_DECLARE_EXCEPTION |
| Constructor from a file, to be called from other constructors that
take a file as input.
|
| Object (const Object &source) |
| Copy constructor is invoked automatically by derived classes with
default copy constructors; otherwise it must be invoked explicitly.
|
| Object (SimTK::Xml::Element &aElement) |
| Construct the base class portion of an %Object from a given Xml
element that describes this Object.
|
template<class T > |
PropertyIndex | addProperty (const std::string &name, const std::string &comment, const T &value) |
| Define a new single-value property of known type T, with the given
name, associated comment, and initial value.
|
template<class T > |
PropertyIndex | addOptionalProperty (const std::string &name, const std::string &comment) |
| Add an optional property, meaning it can contain either no value or
a single value.
|
template<class T > |
PropertyIndex | addOptionalProperty (const std::string &name, const std::string &comment, const T &value) |
| Add an optional property, meaning it can contain either no value or
a single value.
|
template<class T > |
PropertyIndex | addListProperty (const std::string &name, const std::string &comment, int minSize, int maxSize) |
| Define a new list-valued property of known type T, with the given
name, associated comment, minimum (==0) and maximum (>0) allowable list lengths, and a zero-length initial value.
|
template<class T , template< class > class Container> |
PropertyIndex | addListProperty (const std::string &name, const std::string &comment, int minSize, int maxSize, const Container< T > &valueList) |
| Define a new list-valued property as above, but assigning an initial
value via some templatized container class that supports size() and indexing.
|
PropertyIndex | getPropertyIndex (const std::string &name) const |
| Look up a property by name and return its PropertyIndex if it is
found.
|
template<class T > |
PropertyIndex | getPropertyIndex () const |
| Look up an unnamed property by the type of object it contains,
and return its PropertyIndex if it is found.
|
void | updateFromXMLDocument () |
| Use this method only if you're deserializing from a file and the object
is at the top level; that is, primarily in constructors that take a file name as input.
|
void | setDocument (XMLDocument *doc) |
| Unconditionally set the XMLDocument associated with this object.
|
const XMLDocument * | getDocument () const |
| Get a const pointer to the document (if any) associated with this
object.
|
XMLDocument * | updDocument () |
| Get a writable pointer to the document (if any) associated with this
object.
|
#define | OpenSim_DECLARE_CONCRETE_OBJECT(ConcreteClass, SuperClass) |
| Macro to be included as the first line of the class declaration for
any non-templatized, concrete class that derives from OpenSim::Object.
|
#define | OpenSim_DECLARE_ABSTRACT_OBJECT(ConcreteClass, SuperClass) |
| Macro to be included as the first line of the class declaration for
any still-abstract class that derives from OpenSim::Object.
|
#define | OpenSim_DECLARE_CONCRETE_OBJECT_T(ConcreteClass, TArg, SuperClass) |
| Macro to be included as the first line of the class declaration for
any templatized, concrete class that derives from OpenSim::Object, like Set<T>.
|
#define | OpenSim_DECLARE_ABSTRACT_OBJECT_T(ConcreteClass, TArg, SuperClass) |
| Macro to be included as the first line of the class declaration for
any templatized, still-abstract class that derives from OpenSim::Object.
|