|
| GET_DATA_FUNC_S (GAS_NAME_COLLISION, CollisionName) |
|
| GET_DATA_FUNC_S (GAS_NAME_SURFACE, SurfaceName) |
|
| GETSET_DATA_FUNCS_F ("snapdist", SnapDist) |
|
| GETSET_DATA_FUNCS_F ("snapangle", SnapAngle) |
|
SIM_Result | solveObjectsSubclass (SIM_Engine &engine, SIM_ObjectArray &objects, SIM_ObjectArray &newobjects, SIM_ObjectArray &feedbacktoobjects, const SIM_Time ×tep) override |
| Merely calls solve on each object. More...
|
|
SIM_Result | postSolveObjectsSubclass (SIM_Engine &engine, SIM_ObjectArray &objects, SIM_ObjectArray &newobjects, SIM_ObjectArray &feedbacktoobjects, const SIM_Time ×tep) override |
| Merely calls postSolve on each object. More...
|
|
virtual bool | solveGas (SIM_Engine &engine, SIM_Object *obj, SIM_Time time, SIM_Time timestep) |
|
const SIM_Geometry * | getGeometry (const SIM_Object *obj, const char *name, bool silent=false) |
|
SIM_Geometry * | getGeometryNonConst (SIM_Object *obj, const char *name, bool silent=false) |
|
const GA_PointGroup * | getPointGroup (const GU_Detail *gdp, GOP_Manager &mgr, const char *parmname=GAS_NAME_PTGROUP) |
|
SIM_GeometryCopy * | getGeometryCopy (SIM_Object *obj, const char *name, bool silent=false) |
|
SIM_GeometryCopy * | getGeometryCopyByDataName (SIM_Object *obj, const char *dataname, bool silent=false) |
|
SIM_ScalarField * | getScalarField (SIM_Object *obj, const char *name, bool silent=false) |
|
SIM_VectorField * | getVectorField (SIM_Object *obj, const char *name, bool silent=false) |
|
SIM_MatrixField * | getMatrixField (SIM_Object *obj, const char *name, bool silent=false) |
|
SIM_IndexField * | getIndexField (SIM_Object *obj, const char *name, bool silent=false) |
|
const SIM_ScalarField * | getConstScalarField (const SIM_Object *obj, const char *name, bool silent=false) |
|
const SIM_VectorField * | getConstVectorField (const SIM_Object *obj, const char *name, bool silent=false) |
|
const SIM_MatrixField * | getConstMatrixField (const SIM_Object *obj, const char *name, bool silent=false) |
|
const SIM_IndexField * | getConstIndexField (const SIM_Object *obj, const char *name, bool silent=false) |
|
const SIM_Position * | getConstPosFromField (const SIM_Object *obj, const char *name) |
|
void | getWorldToGeometry (UT_DMatrix4 &xform, SIM_Object *obj, const char *geopath) |
| Builds the transform mapping world -> geo. More...
|
|
void | getGeometryToWorld (UT_DMatrix4 &xform, SIM_Object *obj, const char *geopath) |
| Builds the transform mapping geo -> world. More...
|
|
SIM_GeometryCopy * | getOrCreateGeometry (SIM_Object *obj, const char *name) |
|
SIM_ScalarField * | getOrCreateScalarField (SIM_Object *obj, const char *name) |
|
SIM_VectorField * | getOrCreateVectorField (SIM_Object *obj, const char *name) |
|
SIM_MatrixField * | getOrCreateMatrixField (SIM_Object *obj, const char *name) |
|
SIM_IndexField * | getOrCreateIndexField (SIM_Object *obj, const char *name) |
|
void | getMatchingData (SIM_DataArray &data, SIM_Object *obj, const char *name, bool silent=false) |
|
void | getMatchingData (SIM_DataArray &data, UT_StringArray &datanames, SIM_Object *obj, const char *name, bool silent=false) |
|
void | getMatchingDataByName (SIM_DataArray &data, SIM_Object *obj, const char *name, bool silent=false) |
|
void | getMatchingDataByName (SIM_DataArray &data, UT_StringArray &datanames, SIM_Object *obj, const char *name, bool silent=false) |
|
void | getMatchingConstData (SIM_ConstDataArray &data, UT_StringArray &datanames, SIM_Object *obj, const char *name, bool silent=false) |
|
void | getMatchingGeoCopy (SIM_DataArray &data, SIM_Object *obj, const char *name, bool silent=false) |
|
void | getMatchingGeoCopyByName (SIM_DataArray &data, SIM_Object *obj, const char *name, bool silent=false) |
|
void | matchField (SIM_ScalarField *field, const SIM_ScalarField *reffield) |
|
void | matchField (SIM_VectorField *field, const SIM_ScalarField *reffield) |
|
void | matchField (SIM_MatrixField *field, const SIM_ScalarField *reffield) |
|
void | matchField (SIM_IndexField *field, const SIM_ScalarField *reffield) |
|
void | buildRelationshipField (SIM_ScalarField *mask, SIM_VectorField *vel, SIM_IndexField *index, const SIM_ScalarField *stencil, UT_DMatrix4 masktoworld, const SIM_Object *srcobj, bool usepoint, bool usesdf, bool allownonsdf, bool negate, fpreal particlebandwidth, fpreal bandwidth, fpreal velscale=1, const UT_Vector3 &wind=UT_Vector3(0.0f)) |
|
bool | findReferenceBBox (const SIM_Object *, const char *parmname, const char *groupparmname, UT_Vector3 ¢er, UT_Vector3 &size, UT_DMatrix4 &xform) |
|
void | reportCLError (SIM_Object *obj, int err, const char *msg) const |
|
SYS_STATIC_FORCE_INLINE float | mixValues (MIX_NAMES mixtype, float d, float s) |
| Performs the requires mixing. More...
|
|
void | clearForces (GU_Detail *gdp, bool cleartorque=false) const |
| Zeros out the force and optionaly torque attributes. More...
|
|
void | clearForces (GU_Detail *gdp, const GA_PointGroup *grp, bool cleartorque) const |
|
| THREADED_METHOD6_CONST (GAS_SubSolver, gdp->getNumPoints() > 2048, applyForces, GU_Detail *, gdp, const GA_PointGroup *, ptgrp, SIM_Time, timestep, bool, densityscale, bool, doorient, bool, updatepos) void applyForcesPartial(GU_Detail *gdp |
|
bool | buildSPH (GAS_SPH &sph, const SIM_Geometry *geo) const |
|
bool | buildSPH (GAS_SPH &sph, const SIM_Object *obj) const |
|
SIM_Result | solveObjects (SIM_Engine &engine, SIM_ObjectArray &objects, SIM_ObjectArray &newobjects, SIM_ObjectArray &feedbacktoobjects, const SIM_Time ×tep) |
|
SIM_Result | postSolveObjects (SIM_Engine &engine, SIM_ObjectArray &objects, SIM_ObjectArray &newobjects, SIM_ObjectArray &feedbacktoobjects, const SIM_Time ×tep) |
|
SIM_Result | solveRelationship (SIM_Engine &engine, SIM_Relationship &relationship, const SIM_Time ×tep) |
|
int | getRequestedCache () const |
|
void | getImpulseMassMatrix (const SIM_Object &object, const UT_Vector3 &impulseworldpos, UT_DMatrix3 &immatrix) const |
|
void | getPointImpulseMassMatrix (const SIM_Object &object, GA_Index ptnum, UT_DMatrix3 &immatrix) const |
|
SIM_PointImpulseMassMatrixResolver * | getPointImpulseMassMatrixResolver (const SIM_Object &object) const |
| Builds a resolver to efficiently compute mass matrices. More...
|
|
fpreal | getPropertyAtPosition (const SIM_Object &object, const UT_Vector3 &worldpos, const SIM_Property &property) const |
|
fpreal | getPropertyAtPoint (const SIM_Object &object, GA_Index ptnum, const SIM_Property &property) const |
|
SIM_PropertyResolver * | getPropertyResolver (const SIM_Object &object, const SIM_Property &property) const |
| Builds a resolver to efficiently compute property values. More...
|
|
void | getDefaultColliderLabel (const SIM_Object &object, UT_String &label) const |
| Gets the default collider label for an object using this solver. More...
|
|
void | getDefaultCollider (const SIM_Object &object, const UT_String &colliderlabel, UT_String &collidertype, bool &colliderreverseobjectroles) const |
|
void | setStartTime (const SIM_Time &starttime) |
|
bool | isStatic (const SIM_Object *obj) 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_OptionsUser (SIM_Data *owner) |
|
virtual | ~SIM_OptionsUser () |
|
void | optionChanged (const char *name) |
|
const SIM_Options & | getOptions () const |
|
|
| GAS_SurfaceSnap (const SIM_DataFactory *factory) |
|
| ~GAS_SurfaceSnap () override |
|
bool | solveGasSubclass (SIM_Engine &engine, SIM_Object *obj, SIM_Time time, SIM_Time timestep) override |
|
bool | shouldMultiThread (const UT_VoxelArrayF *field) const |
|
void | applySurfaceSnap (SIM_ScalarField *surface, const SIM_ScalarField *collision) |
|
| THREADED_METHOD4_CONST (GAS_SurfaceSnap, shouldMultiThread(surface->field()), doSurfaceSnap, SIM_RawField *, surface, const SIM_RawField *, collision, float, snapdist, float, snapangle) |
|
void | doSurfaceSnapPartial (SIM_RawField *surface, const SIM_RawField *collision, float snapdist, float snapangle, const UT_JobInfo &info) const |
|
| GAS_SubSolver (const SIM_DataFactory *factory) |
|
| ~GAS_SubSolver () override |
|
virtual bool | postSolveGasSubclass (SIM_Engine &engine, SIM_Object *obj, SIM_Time time, SIM_Time timestep) |
|
fpreal | getPropertyFromState (const SIM_Object &object, const SIM_Property &property) const |
| Get a property value by looking at the Physical Parms of an object. More...
|
|
fpreal | getPropertyAtPositionSubclass (const SIM_Object &object, const UT_Vector3 &worldspacepos, const SIM_Property &property) const override |
| Evaluates property at a given position. More...
|
|
fpreal | getPropertyAtPointSubclass (const SIM_Object &object, int ptnum, const SIM_Property &property) const override |
|
SIM_PropertyResolver * | getPropertyResolverSubclass (const SIM_Object &object, const SIM_Property &property) const override |
| Builds a resolver for evaluating properties swiftly. More...
|
|
fpreal | calculateTimestep (SIM_Engine &engine, const SIM_VectorField *velocity, fpreal cflcond, UT_Vector3 *maxvel=0) const |
|
fpreal | calculateTimestep (GU_ConstDetailHandle gdh, fpreal cflcond, fpreal *maxspeed=0, fpreal *minradius=0) const |
|
| THREADED_METHOD1 (GAS_SubSolver, parms.mask->shouldMultiThread(), buildRelationshipFieldInternal, const RelationshipParms &, parms) void buildRelationshipFieldInternalPartial(const RelationshipParms &parms |
| Builds a relationship field after most stuff has been setup. More...
|
|
| SIM_Solver (const SIM_DataFactory *factory) |
| Basic SIM_Solver constructor. More...
|
|
| ~SIM_Solver () override |
| Basic SIM_Solver destructor. More...
|
|
bool | getStartTime (SIM_Time &time) |
|
void | clearStartTime () |
|
void | getSolverSubdata (SIM_SolverArray &subsolvers, UT_StringArray *subsolvernames) |
|
void | getConstSolverSubdata (SIM_ConstSolverArray &subsolvers, UT_StringArray *subsolvernames) const |
|
virtual bool | isStaticSubclass (const SIM_Object *obj) const |
| Determines if this solver does nothing on the object. More...
|
|
virtual SIM_Result | solveRelationshipSubclass (SIM_Engine &engine, SIM_Relationship &relationship, const SIM_Time ×tep) |
|
virtual int | getRequestedCacheSubclass () const |
|
virtual void | getImpulseMassMatrixSubclass (const SIM_Object &object, const UT_Vector3 &impulseworldpos, UT_DMatrix3 &immatrix) const |
|
virtual void | getPointImpulseMassMatrixSubclass (const SIM_Object &object, int ptnum, UT_DMatrix3 &immatrix) const |
|
virtual
SIM_PointImpulseMassMatrixResolver * | getPointImpulseMassMatrixResolverSubclass (const SIM_Object &object) const |
| Builds a resolver for evaluating mass matrices swiftly. More...
|
|
virtual void | getDefaultColliderLabelSubclass (const SIM_Object &object, UT_String &label) const |
| Gets the default collider label for an object using this solver. More...
|
|
virtual void | getDefaultColliderSubclass (const SIM_Object &object, const UT_String &colliderlabel, UT_String &collidertype, bool &colliderreverseobjectroles) 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 |
|
SIM_Options & | getOptions () |
|
virtual void | optionChangedSubclass (const char *name) |
|