9 #ifndef __PDGE_DEBUG_UTILS_H__
10 #define __PDGE_DEBUG_UTILS_H__
79 template <
typename... Args>
82 #ifdef PDGE_DEBUG_ENABLE_LOGGING
85 std::forward<Args>(
args)...);
88 auto&&
log = myLog.getValueForThread(
id);
90 myLogCounter.add(1),
id});
99 #ifdef PDGE_DEBUG_ENABLE_DOT
100 myDependencies.push_back(dependency);
109 #ifdef PDGE_DEBUG_DELAY
110 UTnap(PDGE_DEBUG_DELAY);
119 #ifdef PDGE_DEBUG_ENABLE_IDS
120 return myIdCounter.add(1);
146 static bool sort(
const Message&
a,
const Message&
b)
147 {
return (a.myIndex < b.myIndex); }
150 using DepList = UT_ConcurrentVector<PDGE_Dependency*>;
160 EdgeMap& exclusion_map);
164 #ifdef PDGE_DEBUG_ENABLE_DOT
165 static DepList myDependencies;
168 #ifdef PDGE_DEBUG_ENABLE_LOGGING
169 static ThreadedLog myLog;
173 #ifdef PDGE_DEBUG_ENABLE_IDS
static void addDependency(PDGE_Dependency *dependency)
static void artificialDelay()
SYS_FORCE_INLINE const char * buffer() const
GLboolean GLboolean GLboolean GLboolean a
static void appendLog(const char *fmt, Args &&...args)
GLboolean GLboolean GLboolean b
static void dumpDOT(UT_WorkBuffer &buffer)
size_t format(const char *fmt, const Args &...args)
**If you just want to fire and args
OIIO_FORCEINLINE T log(const T &v)
void sort(I begin, I end, const Pred &pred)