DebugMacros.h
Go to the documentation of this file.
1 #ifndef canvas_Utilities_DebugMacros_h
2 #define canvas_Utilities_DebugMacros_h
3 // vim: set sw=2 expandtab :
4 
5 #include <atomic>
6 #include <iostream>
7 
8 namespace art {
9  struct DebugValue {
10  DebugValue();
11 
12  int
14  {
15  return value_.load();
16  }
17 
18  std::atomic<char const*> cvalue_;
19  std::atomic<int> value_;
20  };
21 
22  extern DebugValue debugit;
23 }
24 
25 #define FDEBUG(LEVEL) \
26  if ((LEVEL) <= art::debugit()) \
27  std::cerr
28 
29 #endif /* canvas_Utilities_DebugMacros_h */
30 
31 // Local Variables:
32 // mode: c++
33 // End:
DebugValue debugit
Definition: DebugMacros.cc:14
std::atomic< char const * > cvalue_
Definition: DebugMacros.h:18
std::atomic< int > value_
Definition: DebugMacros.h:19