CMS 3D CMS Logo

IgProfMacros.h File Reference

Go to the source code of this file.

Defines

#define IGPROF_ARGS0()
#define IGPROF_ARGS1(a)   a
#define IGPROF_ARGS2(a, b)   a,b
#define IGPROF_ARGS3(a, b, c)   a,b,c
#define IGPROF_ARGS4(a, b, c, d)   a,b,c,d
#define IGPROF_ARGSREST0()
#define IGPROF_ARGSREST1(a)   ,a
#define IGPROF_ARGSREST2(a, b)   ,a,b
#define IGPROF_ARGSREST3(a, b, c)   ,a,b,c
#define IGPROF_ARGSREST4(a, b, c, d)   ,a,b,c,d
#define IGPROF_ASSERT(expr)
#define IGPROF_DUAL_HOOK(n, ret, dofun, id1, id2, args, argnames, fun, v, lib)
#define IGPROF_HOOK(n, ret, dofun, id, args, argnames, fun)   IGPROF_LIBHOOK(n, ret, dofun, id, args, argnames, fun, 0, 0)
#define IGPROF_LIBHOOK(n, ret, dofun, id, args, argnames, fun, v, lib)
#define IGPROF_MERGE2(a, b)   a##b
#define IGPROF_MERGE3(a, b, c)   a##b##c
#define IGPROF_TRACE(expr)   do { ; } while (0)


Define Documentation

 
#define IGPROF_ARGS0 (  ) 

Definition at line 10 of file IgProfMacros.h.

#define IGPROF_ARGS1 ( a   )     a

Definition at line 11 of file IgProfMacros.h.

#define IGPROF_ARGS2 ( a,
b   )     a,b

Definition at line 12 of file IgProfMacros.h.

#define IGPROF_ARGS3 ( a,
b,
c   )     a,b,c

Definition at line 13 of file IgProfMacros.h.

#define IGPROF_ARGS4 ( a,
b,
c,
d   )     a,b,c,d

Definition at line 14 of file IgProfMacros.h.

 
#define IGPROF_ARGSREST0 (  ) 

Definition at line 16 of file IgProfMacros.h.

#define IGPROF_ARGSREST1 ( a   )     ,a

Definition at line 17 of file IgProfMacros.h.

#define IGPROF_ARGSREST2 ( a,
b   )     ,a,b

Definition at line 18 of file IgProfMacros.h.

#define IGPROF_ARGSREST3 ( a,
b,
c   )     ,a,b,c

Definition at line 19 of file IgProfMacros.h.

#define IGPROF_ARGSREST4 ( a,
b,
c,
d   )     ,a,b,c,d

Definition at line 20 of file IgProfMacros.h.

#define IGPROF_ASSERT ( expr   ) 

Definition at line 44 of file IgProfMacros.h.

Referenced by IgProfTrace::acquireResource(), IgProfBuffer::allocateSpace(), IgProfTrace::IgProfTrace(), IgProfTrace::mergeFrom(), and IgProfTrace::releaseResource().

#define IGPROF_DUAL_HOOK ( n,
ret,
dofun,
id1,
id2,
args,
argnames,
fun,
v,
lib   ) 

Value:

IGPROF_LIBHOOK(n, ret, dofun, id1, args, argnames, fun, 0, 0)           \
    IGPROF_LIBHOOK(n, ret, dofun, id2, args, argnames, fun, v, lib)

Definition at line 22 of file IgProfMacros.h.

#define IGPROF_HOOK ( n,
ret,
dofun,
id,
args,
argnames,
fun   )     IGPROF_LIBHOOK(n, ret, dofun, id, args, argnames, fun, 0, 0)

Definition at line 26 of file IgProfMacros.h.

#define IGPROF_LIBHOOK ( n,
ret,
dofun,
id,
args,
argnames,
fun,
v,
lib   ) 

Value:

typedef ret igprof_##dofun##_t (IGPROF_MERGE2(IGPROF_ARGS,n) args);             \
    static ret dofun (IgHook::SafeData<igprof_##dofun##_t> &hook                \
                      IGPROF_MERGE2(IGPROF_ARGSREST,n) args);                   \
    static ret IGPROF_MERGE3(dofun,_stub_,id)(IGPROF_MERGE2(IGPROF_ARGS,n) args);\
    static IgHook::TypedData<ret(IGPROF_MERGE2(IGPROF_ARGS,n) args)> IGPROF_MERGE3(dofun,_hook,id) \
      = { { 0, fun, v, lib, &IGPROF_MERGE3(dofun,_stub_,id), 0, 0, 0 } };\
    static ret IGPROF_MERGE3(dofun,_stub_,id) (IGPROF_MERGE2(IGPROF_ARGS,n) args) \
      { return dofun (IGPROF_MERGE3(dofun,_hook,id).typed                       \
                      IGPROF_MERGE2(IGPROF_ARGSREST,n) argnames); }

Definition at line 29 of file IgProfMacros.h.

#define IGPROF_MERGE2 ( a,
b   )     a##b

Definition at line 7 of file IgProfMacros.h.

#define IGPROF_MERGE3 ( a,
b,
c   )     a##b##c

Definition at line 8 of file IgProfMacros.h.

#define IGPROF_TRACE ( expr   )     do { ; } while (0)

Definition at line 51 of file IgProfMacros.h.


Generated on Tue Jun 9 17:53:54 2009 for CMSSW by  doxygen 1.5.4