10#ifndef ROOT_Math_Error 
   11#define ROOT_Math_Error 
   27#ifdef MATHCORE_STANDALONE 
   34#define ROOT_MATH_OS std::cerr 
   41#define MATH_INFO_MSG(loc,str)                   \ 
   42   ROOT_MATH_OS << "Info in ROOT::Math::" << loc << ">: "  << str \
 
   44#define MATH_WARN_MSG(loc,str)                      \ 
   45   ROOT_MATH_OS << "Warning in ROOT::Math::" << loc << ">: " << str \
 
   47#define MATH_ERROR_MSG(loc,str)                   \ 
   48   ROOT_MATH_OS << "Error in ROOT::Math::" << loc << ">: " << str \
 
   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;
 
   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;
 
   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);}
 
   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() );}
 
  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() );}