41 #include <ou/assert.h>
42 #include <ou/enumarrays.h>
43 #include <ou/macros.h>
44 #include <ou/templates.h>
45 #include <ou/typewrapper.h>
46 #include <ou/simpleflags.h>
47 #include <ou/customization.h>
50 #include <ou/atomic.h>
51 #include <ou/atomicflags.h>
55 #include <ou/threadlocalstorage.h>
59 using _OU_NAMESPACE::CEnumUnsortedElementArray;
62 using _OU_NAMESPACE::atomicord32;
63 using _OU_NAMESPACE::atomicptr;
64 using _OU_NAMESPACE::InitializeAtomicAPI;
65 using _OU_NAMESPACE::FinalizeAtomicAPI;
66 using _OU_NAMESPACE::AtomicCompareExchange;
67 using _OU_NAMESPACE::AtomicExchange;
68 using _OU_NAMESPACE::AtomicCompareExchangePointer;
69 using _OU_NAMESPACE::AtomicExchangePointer;
76 static bool DoOUCustomizations();
77 static void UndoOUCustomizations();
80 static bool InitializeAtomics() {
return InitializeAtomicAPI(); }
81 static void FinalizeAtomics() { FinalizeAtomicAPI(); }
88 typedef unsigned int atomicord32;
89 typedef size_t atomicptr;
96 #endif // _ODE_ODEOU_H_