ROOT
6.07/01
Reference Guide
ROOT Home Page
Main Page
Tutorials
User's Classes
Namespaces
All Classes
Files
Release Notes
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
core
metautils
inc
root_std_complex.h
Go to the documentation of this file.
1
/*************************************************************************
2
* This file defines a complex class which has an layout identical to the one
3
* of ROOT5. The file was located in cint/lib/prec_stl/complex
4
* This class is used to provide to the ROOT6 typesystem a backward compatible
5
* and platform independent information for the complex numbers.
6
*
7
************************************************************************/
8
9
10
#ifndef _ROOT_STD_COMPLEX_INCLUDED
11
#define _ROOT_STD_COMPLEX_INCLUDED
12
13
#include <complex>
14
15
template
<
class
T>
class
_root_std_complex
{
16
T
_real
;
17
T
_imag
;
18
};
19
20
// Asserts about the size of the complex
21
static_assert(
sizeof
(
_root_std_complex<double>
) ==
sizeof
(std::complex<double>),
22
"The size of complex<T> and _root_std_complex<T> do not match!"
);
23
static_assert(
sizeof
(
_root_std_complex<float>
) ==
sizeof
(std::complex<float>),
24
"The size of complex<T> and _root_std_complex<T> do not match!"
);
25
static_assert(
sizeof
(
_root_std_complex<long>
) ==
sizeof
(std::complex<long>),
26
"The size of complex<T> and _root_std_complex<T> do not match!"
);
27
static_assert(
sizeof
(
_root_std_complex<int>
) ==
sizeof
(std::complex<int>),
28
"The size of complex<T> and _root_std_complex<T> do not match!"
);
29
30
#endif
T
TTree * T
Definition:
memstatExample.C:53
_root_std_complex::_real
T _real
Definition:
root_std_complex.h:16
_root_std_complex
Definition:
root_std_complex.h:15
_root_std_complex::_imag
T _imag
Definition:
root_std_complex.h:17