ROOT
6.30.04
Reference Guide
All
Namespaces
Files
Pages
Error.h
Go to the documentation of this file.
1
// @(#)root/mathcore:$Id$
2
// Authors: L. Moneta
3
4
/**********************************************************************
5
* *
6
* Copyright (c) 2007 LCG ROOT Math team, CERN/PH-SFT *
7
* *
8
**********************************************************************/
9
10
#ifndef ROOT_Math_Error
11
#define ROOT_Math_Error
12
13
#ifdef DEBUG
14
#ifndef WARNINGMSG
15
#define WARNINGMSG
16
#endif
17
#endif
18
19
20
21
/**
22
Pre-processor macro to report messages
23
which can be configured to use ROOT error or
24
simply an std::iostream in case of stan-alone builds
25
*/
26
27
#ifdef MATHCORE_STANDALONE
28
29
// use std::iostream instead of ROOT
30
31
#include <iostream>
32
33
#ifndef ROOT_MATH_LOG
34
#define ROOT_MATH_OS std::cerr
35
#else
36
#define ROOT_MATH_LOG
37
#endif
38
39
// giving a location + string
40
41
#define MATH_INFO_MSG(loc,str) \
42
ROOT_MATH_OS << "Info in ROOT::Math::" << loc << ">: " << str \
43
<< std::endl;
44
#define MATH_WARN_MSG(loc,str) \
45
ROOT_MATH_OS << "Warning in ROOT::Math::" << loc << ">: " << str \
46
<< std::endl;
47
#define MATH_ERROR_MSG(loc,str) \
48
ROOT_MATH_OS << "Error in ROOT::Math::" << loc << ">: " << str \
49
<< std::endl;
50
51
// giving location + a value
52
53
# define MATH_INFO_VAL(loc,x) \
54
ROOT_MATH_OS << "Info in <ROOT::Math::" << loc << ">: " << #x << " = " << (x) << std::endl;
55
# define MATH_WARN_VAL(loc,x) \
56
ROOT_MATH_OS << "Warning in ROOT::Math::" << loc << ">: " << #x << " = " << (x) << std::endl;
57
# define MATH_ERROR_VAL(loc,x) \
58
ROOT_MATH_OS << "Error in ROOT::Math::" << loc << ">: " << #x << " = " << (x) << std::endl;
59
60
// giving a location + string + value
61
62
# define MATH_INFO_MSGVAL(loc,str,x) \
63
ROOT_MATH_OS << "Info in <ROOT::Math::" << loc << ">: " << str << "; " << #x << " = " << (x) << std::endl;
64
# define MATH_WARN_MSGVAL(loc,str,x) \
65
ROOT_MATH_OS << "Warning in ROOT::Math::" << loc << ">: " << str << "; " << #x << " = " << (x) << std::endl;
66
# define MATH_ERROR_MSGVAL(loc,str,x) \
67
ROOT_MATH_OS << "Error in ROOT::Math::" << loc << ">: " << str << "; " << #x << " = " << (x) << std::endl;
68
69
70
#else
71
// use ROOT error reporting system
72
73
#include "
TError.h
"
74
#include "
Math/Util.h
"
75
76
#define MATH_INFO_MSG(loc,str) \
77
{std::string sl = "ROOT::Math::" + std::string(loc); \
78
::Info(sl.c_str(),"%s",str);}
79
#define MATH_WARN_MSG(loc,str) \
80
{std::string sl = "ROOT::Math::" + std::string(loc); \
81
::Warning(sl.c_str(),"%s",str);}
82
#define MATH_ERROR_MSG(loc,str) \
83
{std::string sl = "ROOT::Math::" + std::string(loc); \
84
::Error(sl.c_str(),"%s",str);}
85
86
# define MATH_INFO_VAL(loc,x) \
87
{std::string sl = "ROOT::Math::" + std::string(loc); \
88
std::string str = std::string(#x) + std::string(" = ") + ::ROOT::Math::Util::ToString(x); \
89
::Info(sl.c_str(),"%s",str.c_str() );}
90
# define MATH_WARN_VAL(loc,x) \
91
{std::string sl = "ROOT::Math::" + std::string(loc); \
92
std::string str = std::string(#x) + std::string(" = ") + ::ROOT::Math::Util::ToString(x); \
93
::Warning(sl.c_str(),"%s",str.c_str() );}
94
# define MATH_ERROR_VAL(loc,x) \
95
{std::string sl = "ROOT::Math::" + std::string(loc); \
96
std::string str = std::string(#x) + std::string(" = ") + ::ROOT::Math::Util::ToString(x); \
97
::Error(sl.c_str(),"%s",str.c_str() );}
98
99
100
# define MATH_INFO_MSGVAL(loc,txt,x) \
101
{std::string sl = "ROOT::Math::" + std::string(loc); \
102
std::string str = std::string(txt) + std::string("; ") + std::string(#x) + std::string(" = ") + ::ROOT::Math::Util::ToString(x); \
103
::Info(sl.c_str(),"%s",str.c_str() );}
104
# define MATH_WARN_MSGVAL(loc,txt,x) \
105
{std::string sl = "ROOT::Math::" + std::string(loc); \
106
std::string str = std::string(txt) + std::string("; ") + std::string(#x) + std::string(" = ") + ::ROOT::Math::Util::ToString(x); \
107
::Warning(sl.c_str(),"%s",str.c_str() );}
108
# define MATH_ERROR_MSGVAL(loc,txt,x) \
109
{std::string sl = "ROOT::Math::" + std::string(loc); \
110
std::string str = std::string(txt) + std::string("; ") + std::string(#x) + std::string(" = ") + ::ROOT::Math::Util::ToString(x); \
111
::Error(sl.c_str(),"%s",str.c_str() );}
112
113
114
115
#endif
116
117
118
#endif // ROOT_MATH_Error
TError.h
Util.h
math
mathcore
inc
Math
Error.h
Generated on Tue May 5 2020 14:03:00 for ROOT by
1.8.5