LCOV - code coverage report
Current view: top level - alma/ASDMBinaries - Error.cc (source / functions) Hit Total Coverage
Test: casacpp_coverage.info Lines: 0 94 0.0 %
Date: 2024-12-11 20:54:31 Functions: 0 19 0.0 %

          Line data    Source code
       1             : #include <string>
       2             : #include <iostream>
       3             : #include <cstdio>
       4             : 
       5             : using namespace std;
       6             : 
       7             : #include <alma/ASDMBinaries/Error.h>
       8             : 
       9           0 : Error::Error(){}
      10             : 
      11           0 : Error::Error(ErrorLevel errlev){
      12           0 :  acceptableErrorLevel=errlev;
      13           0 : }
      14             : 
      15           0 : Error::Error(ErrorLevel errlev, string message){
      16           0 :   errlev_  = errlev;
      17           0 :   errorMessage_ = message;
      18           0 :   printMessage(message);
      19           0 :   if(errlev>=acceptableErrorLevel)throw Error();
      20           0 : }
      21             : 
      22           0 : Error::Error(ErrorLevel errlev,   char *fmt, ... ){
      23           0 :   errlev_  = errlev;
      24             :   char        buffer[1024];
      25             :   va_list     args ;
      26           0 :   va_start( args, fmt ) ;
      27           0 :   vsprintf( buffer, fmt, args ) ;
      28           0 :   errorMessage_ = buffer;
      29           0 :   printMessage(errorMessage_);
      30           0 :   if(errlev>=acceptableErrorLevel)throw Error();
      31           0 : }
      32             : 
      33           0 : Error::Error(int errlev){
      34           0 :  acceptableErrorLevel= (ErrorLevel) errlev;
      35           0 : }
      36             : 
      37           0 : Error::Error(int errlev, string message){
      38           0 :   errlev_  = (ErrorLevel) errlev;
      39           0 :   errorMessage_ = message;
      40           0 :   printMessage(message);
      41           0 :   if(errlev>=acceptableErrorLevel)throw Error();
      42           0 : }
      43             : 
      44           0 : Error::Error(int errlev,   char *fmt, ... ){
      45           0 :   errlev_  =  (ErrorLevel) errlev;
      46             :   char        buffer[1024];
      47             :   va_list     args ;
      48           0 :   va_start( args, fmt ) ;
      49           0 :   vsprintf( buffer, fmt, args ) ;
      50           0 :   errorMessage_ = buffer;
      51           0 :   printMessage(errorMessage_);
      52           0 :   if(errlev>=acceptableErrorLevel)throw Error();
      53           0 : }
      54             : 
      55             : 
      56             : 
      57           0 : Error::~Error(){}
      58             : 
      59           0 : void Error::notify(ErrorLevel errlev, string message){
      60           0 :   errlev_  = errlev;
      61           0 :   errorMessage_ = message;
      62           0 :   printMessage(message);
      63             :   //if(errlev>=acceptableErrorLevel)exit(-1);
      64           0 :   if(errlev>=acceptableErrorLevel)throw Error();
      65           0 : }
      66             : 
      67           0 : void Error::notify(string message){
      68           0 :   errorMessage_ = message;
      69           0 :   cout << message <<endl;
      70           0 : }
      71             : 
      72           0 : void Error::setAcceptableLevel(ErrorLevel errlev){
      73           0 :   acceptableErrorLevel=errlev;
      74           0 : }
      75             : 
      76           0 : ErrorLevel Error::getLevel(){
      77           0 :   return errlev_;
      78             : }
      79             : 
      80           0 : string Error::getLevelToString(){
      81           0 :   if(errlev_==MINOR)return "MINOR";
      82           0 :   if(errlev_==WARNING)return "WARNING";
      83           0 :   if(errlev_==SERIOUS)return "SERIOUS";
      84           0 :   if(errlev_==FATAL)return "FATAL";
      85           0 :   return "";
      86             : }
      87             : 
      88           0 : string Error::getErrorMessage(){
      89           0 :   string errorMessage=errorMessage_;
      90           0 :   clearMessage();
      91           0 :   return errorMessage;
      92           0 : }
      93             : 
      94           0 : void Error::clearMessage(){
      95           0 :   errorMessage_="";
      96           0 :   clearErrLev();
      97           0 : }
      98             : 
      99           0 : void Error::clearErrLev(){
     100           0 :   errlev_=NOERROR;
     101           0 : }
     102             : 
     103           0 : ErrorLevel Error::getAcceptableLevel(){
     104           0 :   return acceptableErrorLevel;
     105             : }
     106             : 
     107           0 : string Error::getAcceptableLevelToString(){
     108           0 :   if(acceptableErrorLevel==MINOR)return "MINOR";
     109           0 :   if(acceptableErrorLevel==WARNING)return "WARNING";
     110           0 :   if(acceptableErrorLevel==SERIOUS)return "SERIOUS";
     111           0 :   if(acceptableErrorLevel==FATAL)return "FATAL";
     112           0 :   return "";
     113             : }
     114             : 
     115             : 
     116             : ErrorLevel Error::acceptableErrorLevel=SERIOUS;  // default level to stop a process
     117             : ErrorLevel Error::errlev_=NOERROR;
     118             : string     Error::errorMessage_="";
     119             : 
     120           0 : void Error::printMessage(string message){
     121           0 :   switch(errlev_)
     122             :     {
     123           0 :     case FATAL:      
     124           0 :       cout << "FATAL ERROR: " + message << endl;
     125           0 :       break;
     126           0 :     case SERIOUS:
     127           0 :       cout << "SERIOUS ERROR: " + message << endl;
     128           0 :       break;
     129           0 :     case MINOR:
     130           0 :       cout << "MINOR ERROR: " + message << endl;
     131           0 :       break;
     132           0 :     case WARNING:
     133           0 :       cout << "WARNING ERROR: " + message << endl;
     134           0 :       break;
     135           0 :     default:
     136           0 :       cout << "ERROR: " + message << endl;
     137             :     }
     138           0 : }

Generated by: LCOV version 1.16