| 
| void  | getForce (const SIM_Object &object, const UT_Vector3 &position, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Vector3 &force, UT_Vector3 &torque) const  | 
|   | 
| bool  | getForceSet (const SIM_Object &object, const UT_Vector3Array &positions, const UT_Vector3Array &velocities, const UT_Vector3Array &angvelocities, const UT_FloatArray &masses, UT_Vector3Array &forces, UT_Vector3Array &torques) const  | 
|   | 
| SIM_ForceResolver *  | getForceResolver (const SIM_Object &object) const  | 
|   | 
| void  | getForceOnCircle (const SIM_Object &object, const UT_Vector3 &position, const UT_Vector3 &normal, const fpreal radius, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Vector3 &force, UT_Vector3 &torque) const  | 
|   | 
| void  | getForceOnSphere (const SIM_Object &object, const UT_Vector3 &position, const fpreal radius, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Vector3 &force, UT_Vector3 &torque) const  | 
|   | 
| void  | getForceJacobian (const SIM_Object &object, const UT_Vector3 &position, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Matrix &dFdX, UT_Matrix &dFdV) const  | 
|   | 
| SIM_ForceSample  | getOptimalForceSampling () const  | 
|   | 
| void  | getPointForces (SIM_PointForceCallback &cb, const SIM_Object &object, const GU_ConstDetailHandle &gdh, const UT_DMatrix4 &geoxform, const SIM_Position *position, const SIM_Motion *motion, bool forcesinworldspace) const  | 
|   | 
| const UT_StringHolder &  | getDataType () const  | 
|   | 
| void  | initialize (const SIM_SubdataBehavior &subdatabehavior) | 
|   | 
| void  | makeEqual (const SIM_Data *source, const SIM_SubdataBehavior &subdatabehavior) | 
|   | 
| void  | setParameters (const SIM_Options &parms) | 
|   | 
| void  | interpolate (const SIM_Data *source1, const SIM_Data *source2, fpreal interp) | 
|   | 
| int64  | getMemorySize () const  | 
|   | 
| bool  | getIsAlternateRepresentation () const  | 
|   | 
| bool  | saveToFile (const char *filename, UT_CompressionType compressionType) const  | 
|   | 
| bool  | saveToStream (std::ostream &os, UT_CompressionType compressionType) const  | 
|   | 
| void  | appendFullDataPath (const SIM_Data *subdata, bool useobjectid, UT_String &datapath) const  | 
|   | 
| bool  | loadFromFile (const char *filename) | 
|   | 
| bool  | loadFromStream (UT_IStream &is, bool skiptype=false) | 
|   | 
| bool  | getIsOfType (const UT_StringRef &datatype) const  | 
|   | 
| const void *  | getConstPointerToType (const UT_StringRef &datatype) const  | 
|   | 
| void *  | getPointerToType (const UT_StringRef &datatype) | 
|   | 
| int  | getNumSubData () const  | 
|   | Get the number of sub-data items attached to this data.  More...
  | 
|   | 
| const UT_StringHolder &  | getSubDataName (int index) const  | 
|   | Get the name of the sub-data at a particular index location.  More...
  | 
|   | 
| int  | getSubDataIndex (const SIM_Data *subdata) const  | 
|   | 
| bool  | buildSubDataPath (const SIM_Data *subdata, UT_String &pathto) const  | 
|   | 
| const SIM_Query &  | getQueryObject () const  | 
|   | 
| SIM_Options *  | getUserOptions () | 
|   | 
| const SIM_Options *  | getConstUserOptions () const  | 
|   | 
| long  | getGuideParmVersion () const  | 
|   | 
| void  | addGuideDep (DEP_MicroNode &src) const  | 
|   | 
| virtual bool  | getGuideGeometryList (const SIM_RootData &root, const char *datapath, const SIM_Time &t, UT_Array< GU_ConstDetailHandle > &detailArray, UT_Array< UT_DMatrix4 > &xformArray) const  | 
|   | 
| GU_ConstDetailHandle  | getGuideGeometry (const SIM_RootData &root, const char *datapath, UT_DMatrix4 &xform, const SIM_Time &t) const  | 
|   | 
| void  | buildGuideOptions (SIM_Options &options, const SIM_Time &time) const  | 
|   | 
| SIM_Data *  | getSubData (int index) | 
|   | 
| const SIM_Data *  | getConstSubData (int index) const  | 
|   | 
| SIM_Data *  | getNamedSubData (const char *dataname) | 
|   | 
| const SIM_Data *  | getConstNamedSubData (const char *dataname) const  | 
|   | 
| void  | filterSubData (SIM_DataArray &ncdp, UT_StringArray *names, const SIM_DataFilter &ncfilter, const char *startfrom, const SIM_DataFilter &recursefilter) | 
|   | 
| void  | filterConstSubData (SIM_ConstDataArray &dp, UT_StringArray *names, const SIM_DataFilter &filter, const char *startfrom, const SIM_DataFilter &recurseFilter) const  | 
|   | 
| SIM_Data *  | getNthSubData (UT_String *name, const SIM_DataFilter &filter, int n, const char *startfrom, const SIM_DataFilter &recurseFilter) | 
|   | 
| const SIM_Data *  | getNthConstSubData (UT_String *name, const SIM_DataFilter &filter, int n, const char *startfrom, const SIM_DataFilter &recurseFilter) const  | 
|   | 
| void  | forEachSubData (SIM_EachDataCallback &cb, const SIM_DataFilter &filter, const char *startfrom, const SIM_DataFilter &recurseFilter) | 
|   | 
| void  | forEachConstSubData (SIM_EachDataCallback &cb, const SIM_DataFilter &filter, const char *startfrom, const SIM_DataFilter &recurseFilter) const  | 
|   | 
| SIM_Data *  | createNamedSubData (const char *dataname, const char *datatype, int creationflags, UT_String *newdatanameptr=NULL) | 
|   | 
| SIM_Data *  | getOrCreateAlternateRepresentation (const char *dataname, const char *datatype) const  | 
|   | 
| void  | interpolateSubData (const SIM_Data &source1, const SIM_Data &source2, fpreal interp, const SIM_DataFilter &interpdata, const SIM_DataFilter &recurse) | 
|   | 
| void  | setNamedSubData (const char *dataname, const SIM_Data *data, int setflags) | 
|   | 
| void  | createUniqueSubDataName (const SIM_Data *subdata, UT_String &dataname) const  | 
|   | 
| void  | removeNamedSubData (const char *dataname) | 
|   | Remove some existing sub-data by name.  More...
  | 
|   | 
| void  | removeSubData (int index) | 
|   | Remove some existing sub-data by index.  More...
  | 
|   | 
| void  | moveNamedSubData (const char *oldname, const char *newname) | 
|   | 
| const UT_Guid &  | getUniqueId () const  | 
|   | 
| long  | getReferenceCount () const  | 
|   | 
| int  | getCreatorId () const  | 
|   | Get the ID of the node that created this data.  More...
  | 
|   | 
| OP_Node *  | getCreatorNode () const  | 
|   | Use the creator ID to look up the OP_Node that created this data.  More...
  | 
|   | 
| OP_Node *  | getOwnerNetwork () const  | 
|   | Look up the owner node of our engine to get the DOP Network pointer.  More...
  | 
|   | 
| const SIM_Engine &  | getEngine () const  | 
|   | Get the engine that created us (from our data factory).  More...
  | 
|   | 
| int  | getCreatorIndex () const  | 
|   | Get the output index of the creator node that generated this data.  More...
  | 
|   | 
| const SIM_Time &  | getCreationTime () const  | 
|   | Get the creation time for this data.  More...
  | 
|   | 
| bool  | getIsSelected () const  | 
|   | Get the selected flag for this data.  More...
  | 
|   | 
| void  | setIsSelected (bool selected) const  | 
|   | 
| bool  | getSelectionRepresentsObject () const  | 
|   | 
| void  | copyCreationInfoFrom (const SIM_Data *source) | 
|   | 
| OP_Node &  | getNodePathsRelativeTo () const  | 
|   | 
| OP_Node *  | getOPNode (const char *path, bool addinterest) const  | 
|   | Given a path relative to our creator node, return an OBJ_Node.  More...
  | 
|   | 
| OBJ_Node *  | getOBJNode (const char *path, bool addinterest) const  | 
|   | Given a path relative to our creator node, return an OBJ_Node.  More...
  | 
|   | 
| SOP_Node *  | getSOPNode (const char *path, bool addinterest) const  | 
|   | Given a path relative to our creator node, return a SOP_Node.  More...
  | 
|   | 
| DOP_Node *  | getDOPNode (const char *path, bool addinterest) const  | 
|   | Given a path relative to our creator node, return a DOP_Node.  More...
  | 
|   | 
| COP2_Node *  | getCOP2Node (const char *path, bool addinterest) const  | 
|   | Given a path relative to our creator node, return a COP2_Node.  More...
  | 
|   | 
| CHOP_Node *  | getCHOPNode (const char *path, bool addinterest) const  | 
|   | Given a path relative to our creator node, return a CHOP_Node.  More...
  | 
|   | 
| void  | addOPInterest (OP_Node *node) const  | 
|   | Adds an interest in the specified node to our engine's owner node.  More...
  | 
|   | 
| void  | addError (const SIM_RootData *root, int errorcode, const char *errorparm, UT_ErrorSeverity severity) const  | 
|   | Adds an error to our SIM_Engine.  More...
  | 
|   | 
| void  | makeMemberDataUnique () | 
|   | 
| virtual void  | makeMemberDataUniqueSubclass () | 
|   | 
 | 
|   | SIM_Force (const SIM_DataFactory *factory) | 
|   | 
|   | ~SIM_Force () override | 
|   | 
| void  | applyNoise (const UT_Vector3 &pos, UT_Vector3 &forceortorque) const  | 
|   | 
| void  | applyNoise (const UT_Vector3 &pos, UT_Vector3 &force, UT_Vector3 &torque) const  | 
|   | 
| void  | applyNoiseJacobian (const UT_Vector3 &pos, UT_Matrix &dFdX, UT_Matrix &dFdV) const  | 
|   | 
| virtual void  | getForceSubclass (const SIM_Object &object, const UT_Vector3 &position, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Vector3 &force, UT_Vector3 &torque) const  | 
|   | 
| virtual SIM_ForceResolver *  | getForceResolverSubclass (const SIM_Object &object) const  | 
|   | 
| virtual bool  | getForceSetSubclass (const SIM_Object &object, const UT_Vector3Array &positions, const UT_Vector3Array &velocities, const UT_Vector3Array &angvelocities, const UT_FloatArray &masses, UT_Vector3Array &forces, UT_Vector3Array &torque) const  | 
|   | 
| virtual void  | getForceOnCircleSubclass (const SIM_Object &object, const UT_Vector3 &position, const UT_Vector3 &normal, const fpreal radius, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Vector3 &force, UT_Vector3 &torque) const  | 
|   | 
| virtual void  | getForceOnSphereSubclass (const SIM_Object &object, const UT_Vector3 &position, const fpreal radius, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Vector3 &force, UT_Vector3 &torque) const  | 
|   | 
| virtual void  | getForceJacobianSubclass (const SIM_Object &object, const UT_Vector3 &position, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Matrix &dFdX, UT_Matrix &dFdV) const  | 
|   | 
| virtual SIM_ForceSample  | getOptimalForceSamplingSubclass () const  | 
|   | 
|   | SIM_Data (const SIM_DataFactory *factory) | 
|   | 
| virtual  | ~SIM_Data () | 
|   | 
| void  | handleModification (int code=-1) | 
|   | 
| void  | setNeedsToRecalculateMemorySize () const  | 
|   | 
| void  | deleteQueryObjectIfNotBuilding () const  | 
|   | Deletes the query object for this data, if there is one.  More...
  | 
|   | 
| void  | deleteGuideObjectIfNotBuilding () const  | 
|   | Delete the guide geometry for this data, if it exists.  More...
  | 
|   | 
| void  | initAlternateRepresentation () const  | 
|   | 
| void  | setNeedsInitialization (bool needsinit) const  | 
|   | Flags an alternate representation subdata as requiring initialization.  More...
  | 
|   | 
| bool  | getNeedsInitialization () const  | 
|   | Tests whether an alternate representation requires initialization.  More...
  | 
|   | 
| bool  | saveOptionPacket (std::ostream &os, const char *name, const SIM_Options *opts) const  | 
|   | 
| bool  | loadOptionPacket (UT_IStream &is, const char *name, SIM_Options *opts) const  | 
|   | 
| bool  | getIsDoingSimplifiedSaveLoad () const  | 
|   | 
| void  | initializeFromParmDefaults () | 
|   | 
| void  | setSelectionRepresentsObject (bool representsobject) | 
|   | 
| virtual void  | setNeedsInitializationSubclass (bool needsinit) const  | 
|   | 
| virtual void  | initializeSubclass () | 
|   | 
| virtual void  | makeEqualSubclass (const SIM_Data *source) | 
|   | 
| virtual void  | saveSubclass (std::ostream &os) const  | 
|   | 
| virtual void  | saveIOSubclass (std::ostream &os, SIM_DataThreadedIO *io) const  | 
|   | 
| virtual bool  | loadSubclass (UT_IStream &is) | 
|   | 
| virtual bool  | loadIOSubclass (UT_IStream &is, SIM_DataThreadedIO *io) | 
|   | 
| virtual SIM_Query *  | createQueryObjectSubclass () const  | 
|   | 
| virtual long  | getGuideParmVersionSubclass () const  | 
|   | 
| virtual SIM_Guide *  | createGuideObjectSubclass () const  | 
|   | 
| virtual void  | buildGuideGeometrySubclass (const SIM_RootData &root, const SIM_Options &options, const GU_DetailHandle &gdh, UT_DMatrix4 *xform, const SIM_Time &t) const  | 
|   | 
| virtual void  | setParametersSubclass (const SIM_Options &parms) | 
|   | 
| virtual void  | setNamedSubDataSubclass (const char *dataname, const SIM_Data *data) | 
|   | 
| virtual void  | removeNamedSubDataSubclass (const char *dataname) | 
|   | 
| virtual void  | interpolateSubclass (const SIM_Data *source1, const SIM_Data *source2, fpreal interp) | 
|   | 
| virtual int64  | getMemorySizeSubclass () const  | 
|   | 
| virtual void  | handleModificationSubclass (int code) | 
|   | 
| virtual bool  | getIsAlternateRepresentationSubclass () const  | 
|   | 
| virtual void  | initAlternateRepresentationSubclass (const SIM_Data &) | 
|   | 
| virtual void *  | getCastToType (const UT_StringRef &datatype) const  | 
|   | 
| virtual const UT_StringHolder &  | getDataTypeSubclass () const  | 
|   | 
| const SIM_Data *  | getAlternateRepresentationOf () const  | 
|   | 
This is the definition of the SIM_Force interface. The only function that needs to be overridden (besides any standard SIM_Data overrides) is the getForceSubclass() function. 
- Examples: 
 - SIM/SIM_ForceOrbit.h, and SIM/SIM_SolverHair.C.
 
Definition at line 46 of file SIM_Force.h.