Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:56:19

0001 #ifndef GENERS_IOISIOPTR_HH_
0002 #define GENERS_IOISIOPTR_HH_
0003 
0004 #include "Alignment/Geners/interface/IOPtr.hh"
0005 
0006 namespace gs {
0007   template <class T>
0008   struct IOIsIOPtr {
0009     enum { value = 0 };
0010   };
0011 
0012   template <class T>
0013   struct IOIsIOPtr<IOPtr<T>> {
0014     enum { value = 1 };
0015   };
0016 
0017   template <class T>
0018   struct IOIsIOPtr<const IOPtr<T>> {
0019     enum { value = 1 };
0020   };
0021 
0022   template <class T>
0023   struct IOIsIOPtr<volatile IOPtr<T>> {
0024     enum { value = 1 };
0025   };
0026 
0027   template <class T>
0028   struct IOIsIOPtr<const volatile IOPtr<T>> {
0029     enum { value = 1 };
0030   };
0031 
0032   template <class T>
0033   struct IOIsIOPtr<IOProxy<T>> {
0034     enum { value = 1 };
0035   };
0036 
0037   template <class T>
0038   struct IOIsIOPtr<const IOProxy<T>> {
0039     enum { value = 1 };
0040   };
0041 
0042   template <class T>
0043   struct IOIsIOPtr<volatile IOProxy<T>> {
0044     enum { value = 1 };
0045   };
0046 
0047   template <class T>
0048   struct IOIsIOPtr<const volatile IOProxy<T>> {
0049     enum { value = 1 };
0050   };
0051 }  // namespace gs
0052 
0053 #endif  // GENERS_IOISIOPTR_HH_