Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-30 10:03:31

0001 #ifndef CLHEP_ATOMIC_INT_H
0002 #define CLHEP_ATOMIC_INT_H
0003 
0004 // ======================================================================
0005 //
0006 // Use std::atomic when the compiler declares it uses the C++11 standard
0007 //
0008 // on macOS, atomic is available starting with Sierra (Darwin 16)
0009 // ======================================================================
0010 
0011 #if _WIN32
0012     #include <atomic>
0013     #define CLHEP_ATOMIC_INT_TYPE std::atomic<int>
0014 #else
0015   #if __cplusplus >= 201103L
0016 
0017   #if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 7) || __clang__
0018     #include <atomic>
0019     #define CLHEP_ATOMIC_INT_TYPE std::atomic<int>
0020   #else
0021     #define CLHEP_ATOMIC_INT_TYPE int
0022   #endif
0023 
0024   #else
0025     #define CLHEP_ATOMIC_INT_TYPE int
0026   #endif
0027 #endif
0028 
0029 #endif