InfinityException.cpp

Go to the documentation of this file.
00001 // InfinityException.cpp: implementation of the InfinityException class.
00002 //
00004 
00005 #ifdef WIN32 
00006 #pragma warning(disable:4786)
00007 #endif
00008 #include "InfinityException.h"
00009 
00011 // Construction/Destruction
00013 
00015 InfinityException::InfinityException() throw()
00016 {
00017 
00018 }
00019 
00021 InfinityException::~InfinityException() throw()
00022 {
00023 
00024 }
00025 
00029 InfinityException::InfinityException(std::string sExpressionToCompute,std::string sInfinityValue)  throw() : 
00030 _sExpressionToCompute(sExpressionToCompute),_sInfinityValue(sInfinityValue)
00031 {       
00032         setLineNumber(0);
00033         setFileName("");
00034         setType("InfinityException");
00035         
00036         setDescription(makeDescription());
00037         setReason(makeReason());
00038         setOrigin("");
00039 
00040 }
00041 
00048 InfinityException::InfinityException(std::string sExpressionToCompute,
00049                                                                          std::string sInfinityValue,
00050                                                                          std::string sOrigin,
00051                                                                          std::string sFileName,
00052                                                                          unsigned int iLineNumber) throw() : 
00053 _sExpressionToCompute(sExpressionToCompute),_sInfinityValue(sInfinityValue)
00054 {       
00055         setLineNumber(iLineNumber);
00056         setFileName(sFileName);
00057         setType("InfinityException");
00058         
00059         setDescription(makeDescription());
00060         setReason(makeReason());
00061         setOrigin(makeOrigin(sOrigin));
00062 }
00063 
00065 std::string InfinityException::makeDescription()
00066 {
00067         std::string     sExceptionMessage = "Computing of the ";
00068                                 sExceptionMessage+= _sExpressionToCompute;
00069                                 sExceptionMessage+= " make ";
00070                                 sExceptionMessage+= _sInfinityValue;
00071                                 sExceptionMessage+= " equal to infinity";
00072 
00073         return sExceptionMessage;
00074 }
00075 
00077 std::string InfinityException::makeReason()
00078 {
00079         std::string     sReasonMessage = "OPERATION_NOT_ALLOWED --> ";
00080                                 sReasonMessage+= getType();
00081                         
00082         return sReasonMessage;
00083 }
00084 
00085 
00087 std::string InfinityException::makeOrigin(std::string sOrigin)
00088 {
00089         std::string     sOriginMessage = getFileName();
00090                                 sOriginMessage+= " (l:";
00091                                 sOriginMessage+= ltos(getLineNumber());
00092                                 sOriginMessage+= ") ";
00093                                 sOriginMessage+= sOrigin;
00094                         
00095         return sOriginMessage;
00096 }

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