Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/root/root_std_complex.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*************************************************************************
0002  * This file defines a complex class which has an layout identical to the one
0003  * of ROOT5. The file was located in cint/lib/prec_stl/complex
0004  * This class is used to provide to the ROOT6 typesystem a backward compatible
0005  * and platform independent information for the complex numbers.
0006  *
0007  ************************************************************************/
0008 
0009 
0010 #ifndef _ROOT_STD_COMPLEX_INCLUDED
0011 #define _ROOT_STD_COMPLEX_INCLUDED
0012 
0013 #include <complex>
0014 
0015 template<class T> class _root_std_complex {
0016     T _real;
0017     T _imag;
0018 };
0019 
0020 // Asserts about the size of the complex
0021 static_assert(sizeof(_root_std_complex<double>) == sizeof(std::complex<double>),
0022               "The size of complex<T> and _root_std_complex<T> do not match!");
0023 static_assert(sizeof(_root_std_complex<float>) == sizeof(std::complex<float>),
0024               "The size of complex<T> and _root_std_complex<T> do not match!");
0025 static_assert(sizeof(_root_std_complex<long>) == sizeof(std::complex<long>),
0026               "The size of complex<T> and _root_std_complex<T> do not match!");
0027 static_assert(sizeof(_root_std_complex<int>) == sizeof(std::complex<int>),
0028               "The size of complex<T> and _root_std_complex<T> do not match!");
0029 
0030 #endif