8 #ifndef __SIM_SolverBlend_h__
9 #define __SIM_SolverBlend_h__
16 class SIM_PerObjectBlendData;
68 bool &colliderreverseobjectroles
72 void getBlendFactorsSubdata(
74 const char *blenddataname,
75 const char *solverparmsroot,
76 SIM_PerObjectBlendData *blenddata,
81 void getBlendFactorsSubdata(
83 const char *blenddataname,
84 const char *solverparmsroot,
85 SIM_PerObjectBlendData &blenddata,
88 void prepareObjectsForSolve(
90 SIM_PerObjectBlendData *blenddata,
92 const char *blenddataname);
93 void cleanupObjectsAfterSolve(
95 SIM_PerObjectBlendData *blenddata,
97 const char *blenddataname);
98 void blendAllSolvedData(
100 SIM_PerObjectBlendData *blenddata,
102 const char *blenddataname);
114 getSolverBlendDopDescription());
#define DECLARE_STANDARD_GETCASTTOTYPE()
#define SIM_NAME_PRIMARYSOLVER
GLuint GLsizei const GLchar * label
#define GETSET_DATA_FUNCS_B(DataName, FuncName)
#define GETSET_DATA_FUNCS_S(DataName, FuncName)
#define SIM_NAME_BLENDFACTORSROOTNAME
virtual void getDefaultColliderSubclass(const SIM_Object &object, const UT_String &colliderlabel, UT_String &collidertype, bool &colliderreverseobjectroles) const
virtual int getRequestedCacheSubclass() const
#define DECLARE_DATAFACTORY(DataClass, SuperClass, Description, DopParms)
Holds pointers to a number of SIM_Object objects.
#define SIM_NAME_BLENDDATANAME
virtual void getImpulseMassMatrixSubclass(const SIM_Object &object, const UT_Vector3 &impulseworldpos, UT_DMatrix3 &immatrix) const
#define GETSET_DATA_FUNCS_I(DataName, FuncName)
virtual SIM_PointImpulseMassMatrixResolver * getPointImpulseMassMatrixResolverSubclass(const SIM_Object &object) const
Builds a resolver for evaluating mass matrices swiftly.
#define SIM_NAME_MATCHBYNAME
virtual SIM_Result solveObjectsSubclass(SIM_Engine &engine, SIM_ObjectArray &objects, SIM_ObjectArray &newobjects, SIM_ObjectArray &feedbacktoobjects, const SIM_Time ×tep)=0
virtual fpreal getPropertyAtPositionSubclass(const SIM_Object &object, const UT_Vector3 &worldpos, const SIM_Property &property) const
virtual void getDefaultColliderLabelSubclass(const SIM_Object &object, UT_String &label) const
Gets the default collider label for an object using this solver.
virtual void getPointImpulseMassMatrixSubclass(const SIM_Object &object, int ptnum, UT_DMatrix3 &immatrix) const
virtual fpreal getPropertyAtPointSubclass(const SIM_Object &object, int ptnum, const SIM_Property &property) const