HDK
|
#include <DOP_Parent.h>
Static Public Member Functions | |
static OP_Node * | getMostRecentDopOwner () |
static OP_Node * | getMostRecentWriteableDopOwner () |
The most recent writeable will be a DOP_Parent. More... | |
![]() | |
static const DOP_ParentList & | getAllDopParents () |
This static function returns an array of all DOP_Parents. More... | |
static void | setMostRecentDopParent (OP_DopParent *dopparent) |
static OP_Node * | opGetMostRecentDopOwner () |
static OP_DopParent * | opGetMostRecentDopParent () |
Protected Member Functions | |
const SIM_Time & | getLastSetTime () const |
void | resimulateLastTimestep () |
void | setNeedsToFilterData (const SIM_Time &t) |
void | filterDataIfRequired () const |
Check if we need to filter our simulation data, and do so if required. More... | |
void | filterData (const SIM_Time &t) |
virtual const DOP_Engine & | getEngineSubclass () const =0 |
virtual void | resimulateLastTimestepSubclass () |
virtual void | setDOPTimeSubclass (const SIM_Time &t) |
virtual DOP_Engine & | getNonConstEngineSubclass ()=0 |
virtual void | filterDataSubclass (const SIM_Time &t)=0 |
virtual void | handleRefilterParms (const SIM_Time &t) |
virtual void | handleResimParms (const SIM_Time &t) |
void | notifySimulationChangeSinksOfChange () |
void | notifySimulationChangeSinksOfDelete () |
Friends | |
class | DOP_SimulationChangeSink |
class | DOP_Engine |
Definition at line 31 of file DOP_Parent.h.
DOP_Parent::DOP_Parent | ( | ) |
|
override |
|
inlinevirtual |
Reimplemented in OBJ_DopNet.
Definition at line 170 of file DOP_Parent.h.
|
inline |
Definition at line 40 of file DOP_Parent.h.
This function calls filterDataSubclass() to cache pointers to the simulation data that is of interest to us.
|
protected |
Check if we need to filter our simulation data, and do so if required.
Implemented in OBJ_DopNet.
void DOP_Parent::findAllObjectsFromString | ( | const char * | objspec, |
SIM_ConstObjectArray & | objects, | ||
const SIM_Time & | t | ||
) | const |
Get all objects that match a particular string. This calls the SIM_Engine::findAllObjectsFromString() function, but converts the time value from global time to simulation time, and passes our getInterpolateData() value as the interpolate parameter.
void DOP_Parent::findAllRelationshipsFromString | ( | const char * | relspec, |
SIM_ConstDataArray & | relationships, | ||
const SIM_Time & | t | ||
) | const |
Get all relationships that match a particular string. This calls the SIM_Engine::findAllRelationshipsFromString() function, but converts the time value from global time to simulation time, and passes our getInterpolateData() value as the interpolate parameter.
const SIM_Object* DOP_Parent::findObjectFromString | ( | const char * | objspec, |
int | whichmatch, | ||
int * | nummatch, | ||
const SIM_Time & | t | ||
) | const |
Get the object that matches a particular string. This calls the SIM_Engine::findObjectFromString() function, but converts the time value from global time to simulation time, and passes our getInterpolateData() value as the interpolate parameter.
const SIM_Relationship* DOP_Parent::findRelationshipFromString | ( | const char * | relspec, |
int | whichmatch, | ||
int * | nummatch, | ||
const SIM_Time & | t | ||
) | const |
Get the relationship that matches a particular string. This calls the SIM_Engine::findRelationshipFromString() function, but converts the time value from global time to simulation time, and passes our getInterpolateData() value as the interpolate parameter.
bool DOP_Parent::getAutoResimulation | ( | ) | const |
|
inline |
Used externally to flag that we do not want to resimulate due to our setDOPTime() invocations.
Definition at line 92 of file DOP_Parent.h.
DOP_Node::DOP_CookData& DOP_Parent::getDopNodeCookData | ( | ) |
Returns data used by DOP_Nodes during their cook process. This is information that is global to the DOP Network as it cooks.
Returns the simulation time that corresponds to a given global Houdini time.
const DOP_Engine& DOP_Parent::getEngine | ( | ) | const |
|
protectedpure virtual |
Implemented in OBJ_DopNet.
Returns the global Houdini time that corresponds to a given simulation time.
bool DOP_Parent::getInterpolateData | ( | const SIM_Time & | t | ) | const |
bool DOP_Parent::getIsSimulating | ( | ) | const |
|
inlinevirtual |
Reimplemented in OBJ_DopNet.
Definition at line 83 of file DOP_Parent.h.
exint DOP_Parent::getLastLiveTick | ( | ) | const |
|
protected |
const SIM_Time& DOP_Parent::getLiveSimulationTime | ( | ) | const |
Live Simulation time is a simulation time of where the live sim currently is.
|
inlinestatic |
The current dopnet may not be the top of the recently used. Dopnets that are inside locked assets, for example, are rather useless as destinations. Except we do want access to those for tracking cache settings, reset flags, etc. These may also be dop-like caches.
Definition at line 179 of file DOP_Parent.h.
|
static |
The most recent writeable will be a DOP_Parent.
bool DOP_Parent::getNeedsResimulation | ( | ) | const |
Returns true if the DOP network has changed such that the simulation needs to be reset.
DOP_Engine& DOP_Parent::getNonConstEngine | ( | ) |
|
protectedpure virtual |
Implemented in OBJ_DopNet.
const SIM_Time& DOP_Parent::getOffsetTime | ( | ) | const |
Attributes for controlling the simulation behavior. Offset time is a global time for mapping simulation time 0
fpreal DOP_Parent::getTimeScale | ( | ) | const |
Reimplemented in OBJ_DopNet.
Definition at line 216 of file DOP_Parent.h.
Reimplemented in OBJ_DopNet.
Definition at line 217 of file DOP_Parent.h.
|
protected |
|
protected |
|
inlineoverridevirtual |
Current continuous cook tick.
Implements OP_DopParent.
Reimplemented in OBJ_DopNet.
Definition at line 168 of file DOP_Parent.h.
|
overridevirtual |
Implements OP_DopParent.
Query cache size.
Implements OP_DopParent.
|
inlineoverridevirtual |
Implements OP_DopParent.
Definition at line 157 of file DOP_Parent.h.
Implements OP_DopParent.
|
inlineoverridevirtual |
Implements OP_DopParent.
Definition at line 184 of file DOP_Parent.h.
|
inlineoverridevirtual |
Implements OP_DopParent.
Definition at line 159 of file DOP_Parent.h.
|
overridevirtual |
Implements OP_DopParent.
|
inlineoverridevirtual |
Returns if the operator is in Continous Cook mode.
Implements OP_DopParent.
Reimplemented in OBJ_DopNet.
Definition at line 167 of file DOP_Parent.h.
|
overridevirtual |
Note this is in simulation frames, not global.
Implements OP_DopParent.
|
inlineoverridevirtual |
Implements OP_DopParent.
Definition at line 166 of file DOP_Parent.h.
|
inlineoverridevirtual |
Implements OP_DopParent.
Definition at line 165 of file DOP_Parent.h.
|
inlineoverridevirtual |
Implements OP_DopParent.
Definition at line 162 of file DOP_Parent.h.
|
inline |
Definition at line 149 of file DOP_Parent.h.
|
inline |
Definition at line 151 of file DOP_Parent.h.
|
inline |
Definition at line 145 of file DOP_Parent.h.
|
inline |
Definition at line 147 of file DOP_Parent.h.
void DOP_Parent::resimulate | ( | ) |
|
protected |
|
protectedvirtual |
Resets the simulation and cooks to a specific DOP time, this avoids double cooking if you are resetting to frame 0.
void DOP_Parent::sendResimulateNotification | ( | bool | callnotify, |
bool | changingguideparm | ||
) |
Sends out a parm changed message so that anyone interested in the simulation will know to refresh their data. This call also protects the DOP Network from causing infinite recursion when the DOP Network is interested in a SOP node which is interested in the DOP Network (a common and legal situation when using a SOP Solver, for example).
void DOP_Parent::setAutoResimulation | ( | bool | autoreset | ) |
|
inline |
Definition at line 94 of file DOP_Parent.h.
Sets the current simulation time, solving all intermediate steps. Note that the time t passed in to this function is a global Houdini time, and may not match the simulation time.
Reimplemented in OBJ_DopNet.
void DOP_Parent::setInterpolateData | ( | bool | interpolate | ) |
|
inline |
Used by SIM_Engine to flag this privately if it is during an internally generated simulation pass
Definition at line 87 of file DOP_Parent.h.
|
overridevirtual |
Implements OP_DopParent.
void DOP_Parent::setNeedsToFilterData | ( | ) |
Sets a flag that says we need to re-filter our simulation data the next time a request for the data is made.
void DOP_Parent::setNeedsToResimulateLastTimestep | ( | ) |
|
inline |
Definition at line 143 of file DOP_Parent.h.
|
inline |
Definition at line 141 of file DOP_Parent.h.
Update re-simulation parameters, ensuring getOffsetTime and the ilk are valid. This is required before getDOPTime will work as expected (but note setDOPTime() implicitly invokes this)
|
friend |
Definition at line 245 of file DOP_Parent.h.
|
friend |
Definition at line 244 of file DOP_Parent.h.