9 #ifndef __PDGE_DEPENDENCY_H__
10 #define __PDGE_DEPENDENCY_H__
98 int64 getMemoryUsage(
bool inclusive)
const;
104 bool partial =
false,
106 bool is_any =
false);
110 {
return !myDependencies.empty(); }
114 {
return !myDependents.isEmpty(); }
121 return myDependencies.contains(dependency);
128 {
return myPartialSrc; }
133 {
return myPartialDst; }
138 {
return myIsResolved; }
142 {
return myIsHeavy; }
151 {
return (myState & state); }
155 { myState |= state; }
165 {
return myDependencies; }
169 {
return myDependents; }
173 {
return myEdgeLock; }
178 void reset(
int initial_count=0,
179 bool is_heavy=
false);
193 {
return tryResolve(
count, 0); }
197 void increment(
int count=1);
207 void unresolve(
int unresolve_count,
Set& visited);
208 uint8 prepareResolve(
211 void completeResolve(
218 bool partialPairs(
Partial& partial_pairs,
224 inline bool tryResolve(
int count,
uint8 state)
232 return (myUnresolvedCount.add(-count) == 0);
235 inline void incrementInternal(
int count)
236 { myUnresolvedCount.add(count); }
246 uint8 myUnresolveDepth;
247 uint8 myCurrentDepth;
248 uint8 myEvaluationDepth;
252 bool myPartialSrc : 1;
253 bool myPartialDst : 1;
254 bool myIsResolved : 1;
258 #ifdef PDGE_DEBUG_ENABLE_NAMES
262 #ifdef PDGE_DEBUG_ENABLE_IDS
bool tryResolve(int count=1)
uint8 state() const
Returns the current state value of the dependency.
UT_TBBSpinLock & edgeLock() const
Returns the edge lock for this dependency object.
PDGE_DependencyOwner * owner() const
Returns the object that owns this dependency.
bool isHeavy() const
Returns true if this dependency has a heavy-weight evaluation routine.
bool isPartialDst() const
const Array & dependents() const
Returns the array of all dependents.
bool hasDependencies() const
Returns true if this object has any dependencies.
void updateState(State state)
ORs the state value into the current state.
GLuint const GLchar * name
std::pair< PDGE_Dependency *, OwnerArray > PartialPair
const Set & dependencies() const
Returns the set of all dependencies.
bool hasDependents() const
Returns true if this object has any dependents.
The service client is sent the "reset" command.
bool isPartialSrc() const
bool hasState(State state) const
Returns true if the current state value is set.
One or more work items were canceled during the cook.
One or more work items failed during the cook.
bool hasDependency(PDGE_Dependency *dependency) const
Returns true if this object has the specifed dependency.