ValueOutOfBoundException.cpp

Go to the documentation of this file.
00001 // ValueOutOfBound.cpp: implementation of the ValueOutOfBound class.
00002 //
00004 
00005 #ifdef WIN32 
00006 #pragma warning(disable:4786)
00007 #endif
00008 
00009 #include "ValueOutOfBoundException.h"
00010 //#include "Tools.cpp"
00012 // Construction/Destruction
00014 
00016 //##ModelId=43834ABD02CD
00017 ValueOutOfBoundException::ValueOutOfBoundException() throw()
00018 {
00019 
00020 }
00021 
00023 //##ModelId=43834ABD02E5
00024 ValueOutOfBoundException::~ValueOutOfBoundException() throw()
00025 {
00026 
00027 }
00028 
00034 //##ModelId=43834ABD02CE
00035 ValueOutOfBoundException::ValueOutOfBoundException(std::string sElementName,double dValue,double dValueMin, double dValueMax)  throw(): _sElementName(sElementName),_dValue(dValue),_dValueMin(dValueMin),_dValueMax(dValueMax)
00036 {       
00037         setLineNumber(0);
00038         setFileName("");
00039         setType("ValueOutOfBoundException");
00040         
00041         setDescription(makeDescription());
00042         setReason(makeReason());
00043         setOrigin("");
00044         
00045 
00046 }
00047 
00052 //##ModelId=438739560186
00053 ValueOutOfBoundException::ValueOutOfBoundException(std::string sElementName,double dValue,Bound* mBound) throw() : _sElementName(sElementName),_dValue(dValue),_dValueMin(mBound->getLowerBound()),_dValueMax(mBound->getUpperBound())
00054 {       
00055         setLineNumber(0);
00056         setFileName("");
00057         setType("ValueOutOfBoundException");
00058         
00059         setDescription(makeDescription());
00060         setReason(makeReason());
00061         setOrigin("");
00062 }
00063 
00072 //##ModelId=43834ABD02DD
00073 ValueOutOfBoundException::ValueOutOfBoundException(std::string sElementName,double dValue,double dValueMin, double dValueMax,std::string sOrigin,std::string sFileName,unsigned int iLineNumber) throw() : _sElementName(sElementName),_dValue(dValue),_dValueMin(dValueMin),_dValueMax(dValueMax)
00074 {       
00075         setType("ValueOutOfBoundException");
00076         setLineNumber(iLineNumber);
00077         setFileName(sFileName);
00078         
00079         setDescription(makeDescription());
00080         setReason(makeReason());
00081         setOrigin(makeOrigin(sOrigin));
00082 }
00083 
00085 //##ModelId=43834ABD02EA
00086 std::string ValueOutOfBoundException::makeDescription()
00087 { 
00088         std::string     sExceptionMessage       =       "The value ";
00089                         sExceptionMessage       +=      dtos(_dValue);
00090                         sExceptionMessage       +=  " of the ";
00091                         sExceptionMessage       +=  _sElementName;
00092                         sExceptionMessage       +=      " variable must be in the allowed bound [" ;
00093                         sExceptionMessage       +=      dtos(_dValueMin);
00094                         sExceptionMessage       +=      ","; 
00095                         sExceptionMessage       +=      dtos(_dValueMax);
00096                         sExceptionMessage       +=      "]"; 
00097         
00098         return sExceptionMessage;
00099 }
00100 
00102 //##ModelId=43834ABD02EC
00103 std::string ValueOutOfBoundException::makeReason()
00104 {
00105         std::string     sReasonMessage = "DATA_OUT_OF_RANGE --> ";
00106                         sReasonMessage+= getType();
00107                         
00108         return sReasonMessage;
00109 }
00110 
00112 //##ModelId=43834ABD02EE
00113 std::string ValueOutOfBoundException::makeOrigin(std::string sOrigin)
00114 {
00115         std::string     sOriginMessage = getFileName();
00116                         sOriginMessage+= " (l:";
00117                         sOriginMessage+= ltos(getLineNumber());
00118                         sOriginMessage+= ") ";
00119                         sOriginMessage+= sOrigin;
00120                         
00121         return sOriginMessage;
00122 }

Generated on Fri Jul 10 10:31:56 2009 for Utils Library by  doxygen 1.4.5