55 #define assertM(condition, message) \
58 std::cerr << "---------------------------------------------------------" << std::endl \
59 << "Error assertion not verified" << std::endl \
60 << " file: " << __FILE__ << std::endl \
61 << " line: " << __LINE__ << std::endl \
62 << " assertion: `" #condition "` failed" << std::endl \
63 << " " << message << std::endl \
64 << "---------------------------------------------------------" << std::endl; \
65 std::exit(EXIT_FAILURE); \
69 #define ASSERT(condition, message) \
82 Errors(
const std::string& message_,
const char* sourceFile =
"unknown",
int lineNumber_ = -1);
86 static void errorMessage(
const std::string& message_,
double value);
87 static void errorMessage(
const std::string& message_,
const char* sourceFile,
int lineNumber_);
89 void setError(
const std::string& message_,
const char* sourceFile =
"",
int lineNumber_ = -1);
90 void setError(
const std::string& message_,
const double value);
91 std::string
errorToString(
const int& num,
const int& ErrorType,
const int iteration = -1)
const;
110extern std::vector<Errors>
errors;
123 ErrorECOGEN(std::string infoError_ =
"",
const char* sourceFile =
"",
int lineNumber_ = -1,
int errorCode = 1) :
128 virtual const char*
what(
void)
const throw() {
return "Exception ECOGEN: fix and restart run"; }
132 std::stringstream message_;
133 message_ <<
"--------------------------------------------------" << std::endl;
134 message_ << this->
what() << std::endl;
135 message_ <<
"****************************************" << std::endl;
137 message_ <<
" infos on exception in code source :" << std::endl;
138 message_ <<
" file: '" <<
m_sourceFile <<
"'" << std::endl;
142 message_ <<
"--------------------------------------------------" << std::endl;
143 return message_.str();
166 ErrorInput(std::string fileInput =
"",
const char* sourceFile =
"",
int lineNumber_ = -1,
int errorCode = 2) :
171 virtual const char*
what(
void)
const throw() {
return "Exception during reading input file"; }
175 std::stringstream message_;
176 message_ <<
"--------------------------------------------------" << std::endl;
177 message_ << this->
what() << std::endl;
178 message_ <<
"****************************************" << std::endl;
180 message_ <<
" Input file concerned: '" <<
m_fileInput <<
"'" << std::endl;
183 message_ <<
" Infos on exception in source code:" << std::endl;
184 message_ <<
" file: '" <<
m_sourceFile <<
"'" << std::endl;
188 message_ <<
"--------------------------------------------------" << std::endl;
189 return message_.str();
215 ErrorMeshNS(std::string fileMesh =
"",
const char* sourceFile =
"",
int lineNumber_ = -1,
int errorCode = 2) :
216 ErrorInput(fileMesh, sourceFile, lineNumber_, errorCode)
220 virtual const char*
what(
void)
const throw() {
return "Exception during reading unstructured mesh file: file not found or incorrect structure"; }
224 std::stringstream message_;
225 message_ <<
"--------------------------------------------------" << std::endl;
226 message_ << this->
what() << std::endl;
227 message_ <<
"****************************************" << std::endl;
229 message_ <<
" mesh file concerned: '" <<
m_fileInput <<
"'" << std::endl;
232 message_ <<
" infos on exception in code source :" << std::endl;
233 message_ <<
" file: '" <<
m_sourceFile <<
"'" << std::endl;
237 message_ <<
"--------------------------------------------------" << std::endl;
238 return message_.str();
251 ErrorXML(std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1,
int errorCode = 2) :
252 ErrorInput(fileXML, sourceFile, lineNumber_, errorCode)
256 virtual const char*
what(
void)
const throw() {
return "Exception during reading XML file: file not found or incorrect structure"; }
260 std::stringstream message_;
261 message_ <<
"--------------------------------------------------" << std::endl;
262 message_ << this->
what() << std::endl;
263 message_ <<
"****************************************" << std::endl;
265 message_ <<
" XML file concerned: '" <<
m_fileInput <<
"'" << std::endl;
268 message_ <<
" infos on exception in code source :" << std::endl;
269 message_ <<
" file: '" <<
m_sourceFile <<
"'" << std::endl;
273 message_ <<
"--------------------------------------------------" << std::endl;
274 return message_.str();
284 ErrorXMLMessage(std::string message_ =
"", std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
289 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: input files are not compatible"; }
293 std::stringstream message_;
294 message_ <<
" details: " <<
m_message << std::endl;
295 return message_.str();
310 ErrorXMLRacine(std::string root_ =
"", std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
315 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: root not found"; }
319 std::stringstream message_;
320 message_ <<
" root name searched: '" <<
m_root <<
"'" << std::endl;
321 return message_.str();
336 ErrorXMLElement(std::string element_ =
"", std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
341 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: element not found"; }
345 std::stringstream message_;
346 message_ <<
" element name searched: '" <<
m_element <<
"'" << std::endl;
347 return message_.str();
362 ErrorXMLAttribut(std::string attribute_ =
"", std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
367 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: attribute not found"; }
371 std::stringstream message_;
372 message_ <<
" attribute name searched: '" <<
m_attribute <<
"'" << std::endl;
373 return message_.str();
388 ErrorXMLDev(std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
ErrorXML(fileXML, sourceFile, lineNumber_) {}
391 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: this portion of code is under development"; }
402 ErrorXMLLimite(std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
ErrorXML(fileXML, sourceFile, lineNumber_) {}
405 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: error in boundary conditions"; }
419 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: error in source term selection"; }
430 ErrorXMLEOS(std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
ErrorXML(fileXML, sourceFile, lineNumber_) {}
433 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: error on equation of state"; }
444 ErrorXMLEOSUnknown(std::string typeEOS =
"", std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
449 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: error on equation of state"; }
453 std::stringstream message_;
454 message_ <<
" EOS type: '" <<
m_typeEOS <<
"' unknown" << std::endl;
455 return message_.str();
468 ErrorXMLDomaineUnknown(std::string typeDomain =
"", std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
473 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: error on domain CI"; }
477 std::stringstream message_;
478 message_ <<
" domain type: '" <<
m_typeDomain <<
"' unknown" << std::endl;
479 return message_.str();
492 ErrorXMLBoundCondUnknown(std::string typeBoundCond =
"", std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
497 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: error in boundary condition"; }
501 std::stringstream message_;
502 message_ <<
" boundary type: '" <<
m_typeBoundCond <<
"' unknown" << std::endl;
503 return message_.str();
516 ErrorXMLEtat(std::string nameEtat =
"", std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
521 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: error in state"; }
525 std::stringstream message_;
526 message_ <<
" state: '" <<
m_nameEtat <<
"' not found or incomplete" << std::endl;
527 return message_.str();
540 ErrorXMLMaterialUnknown(std::string nameMateriau =
"", std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
545 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: error in state CI"; }
549 std::stringstream message_;
550 message_ <<
" material type: '" <<
m_nameMateriau <<
"' unknown" << std::endl;
551 return message_.str();
564 ErrorXMLStretching(std::string message_, std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
569 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: error on stretching definition"; }
578 ErrorXMLRelaxation(std::string nameRelaxation =
"", std::string fileXML =
"",
const char* sourceFile =
"",
int lineNumber_ = -1) :
583 virtual const char*
what(
void)
const throw() {
return "Exception on XML file: error on relaxation"; }
587 std::stringstream message_;
588 message_ <<
" relaxation type: '" <<
m_nameRelaxation <<
"' unknown or already added" << std::endl;
589 return message_.str();
std::vector< Errors > errors
Definition Errors.cpp:35
std::vector< Errors > warnings
Definition Errors.cpp:36
TypeError
Enumeration for the type of error (warning, error).
Definition Errors.h:48
@ ERROR
Definition Errors.h:50
@ WARNING
Definition Errors.h:49
std::string infoError(void) const
Definition Errors.h:130
std::string m_infoError
Definition Errors.h:154
virtual std::string additionalInfo(void) const
Definition Errors.h:146
int m_errorCode
Definition Errors.h:151
int getErrorCode()
Definition Errors.h:148
ErrorECOGEN(std::string infoError_="", const char *sourceFile="", int lineNumber_=-1, int errorCode=1)
Definition Errors.h:123
virtual ~ErrorECOGEN()
Definition Errors.h:126
int m_lineNumber
Definition Errors.h:152
virtual const char * what(void) const
Definition Errors.h:128
std::string m_sourceFile
Definition Errors.h:153
virtual ~ErrorMeshNS()
Definition Errors.h:218
virtual const char * what(void) const
Definition Errors.h:220
std::string infoError(void) const
Definition Errors.h:222
ErrorMeshNS(std::string fileMesh="", const char *sourceFile="", int lineNumber_=-1, int errorCode=2)
Definition Errors.h:215
ErrorXMLAttribut(std::string attribute_="", std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:362
virtual ~ErrorXMLAttribut()
Definition Errors.h:365
std::string attribute() const
Definition Errors.h:376
virtual std::string additionalInfo(void) const
Definition Errors.h:369
std::string m_attribute
Definition Errors.h:379
virtual const char * what(void) const
Definition Errors.h:367
virtual ~ErrorXMLBoundCondUnknown()
Definition Errors.h:495
virtual std::string additionalInfo(void) const
Definition Errors.h:499
std::string m_typeBoundCond
Definition Errors.h:507
ErrorXMLBoundCondUnknown(std::string typeBoundCond="", std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:492
virtual const char * what(void) const
Definition Errors.h:497
ErrorXMLDev(std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:388
virtual const char * what(void) const
Definition Errors.h:391
virtual ~ErrorXMLDev()
Definition Errors.h:389
std::string m_typeDomain
Definition Errors.h:483
virtual const char * what(void) const
Definition Errors.h:473
ErrorXMLDomaineUnknown(std::string typeDomain="", std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:468
virtual ~ErrorXMLDomaineUnknown()
Definition Errors.h:471
virtual std::string additionalInfo(void) const
Definition Errors.h:475
virtual ~ErrorXMLEOSUnknown()
Definition Errors.h:447
std::string m_typeEOS
Definition Errors.h:459
virtual std::string additionalInfo(void) const
Definition Errors.h:451
ErrorXMLEOSUnknown(std::string typeEOS="", std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:444
virtual const char * what(void) const
Definition Errors.h:449
virtual ~ErrorXMLEOS()
Definition Errors.h:431
virtual const char * what(void) const
Definition Errors.h:433
ErrorXMLEOS(std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:430
std::string m_element
Definition Errors.h:353
virtual const char * what(void) const
Definition Errors.h:341
virtual std::string additionalInfo(void) const
Definition Errors.h:343
std::string element() const
Definition Errors.h:350
ErrorXMLElement(std::string element_="", std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:336
virtual ~ErrorXMLElement()
Definition Errors.h:339
virtual ~ErrorXMLEtat()
Definition Errors.h:519
virtual std::string additionalInfo(void) const
Definition Errors.h:523
std::string m_nameEtat
Definition Errors.h:531
ErrorXMLEtat(std::string nameEtat="", std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:516
virtual const char * what(void) const
Definition Errors.h:521
virtual const char * what(void) const
Definition Errors.h:405
virtual ~ErrorXMLLimite()
Definition Errors.h:403
ErrorXMLLimite(std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:402
std::string m_nameMateriau
Definition Errors.h:555
ErrorXMLMaterialUnknown(std::string nameMateriau="", std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:540
virtual const char * what(void) const
Definition Errors.h:545
virtual ~ErrorXMLMaterialUnknown()
Definition Errors.h:543
virtual std::string additionalInfo(void) const
Definition Errors.h:547
std::string m_message
Definition Errors.h:301
virtual const char * what(void) const
Definition Errors.h:289
virtual std::string additionalInfo(void) const
Definition Errors.h:291
std::string message() const
Definition Errors.h:298
ErrorXMLMessage(std::string message_="", std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:284
virtual ~ErrorXMLMessage()
Definition Errors.h:287
std::string root() const
Definition Errors.h:324
ErrorXMLRacine(std::string root_="", std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:310
std::string m_root
Definition Errors.h:327
virtual const char * what(void) const
Definition Errors.h:315
virtual ~ErrorXMLRacine()
Definition Errors.h:313
virtual std::string additionalInfo(void) const
Definition Errors.h:317
virtual const char * what(void) const
Definition Errors.h:583
ErrorXMLRelaxation(std::string nameRelaxation="", std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:578
std::string m_nameRelaxation
Definition Errors.h:593
virtual ~ErrorXMLRelaxation()
Definition Errors.h:581
virtual std::string additionalInfo(void) const
Definition Errors.h:585
virtual const char * what(void) const
Definition Errors.h:569
virtual ~ErrorXMLStretching()
Definition Errors.h:567
ErrorXMLStretching(std::string message_, std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:564
ErrorXMLTermeSource(std::string fileXML="", const char *sourceFile="", int lineNumber_=-1)
Definition Errors.h:416
virtual const char * what(void) const
Definition Errors.h:419
virtual ~ErrorXMLTermeSource()
Definition Errors.h:417
virtual const char * what(void) const
Definition Errors.h:256
ErrorXML(std::string fileXML="", const char *sourceFile="", int lineNumber_=-1, int errorCode=2)
Definition Errors.h:251
virtual ~ErrorXML()
Definition Errors.h:254
std::string infoError(void) const
Definition Errors.h:258
static const std::string defaultString
Definition Errors.h:100
double m_value
Allows you to send an additionnal piece of information.
Definition Errors.h:107
static constexpr int defaultInt
Definition Errors.h:97
std::string m_message
Definition Errors.h:103
void displayError(const int &num) const
Definition Errors.cpp:149
std::string errorToString(const int &num, const int &ErrorType, const int iteration=-1) const
Definition Errors.cpp:119
static void errorMessage(const std::string &message_)
Definition Errors.cpp:56
int m_line
Definition Errors.h:106
std::string m_file
Definition Errors.h:105
static constexpr int defaultIntNeg
Definition Errors.h:98
Errors()
Definition Errors.cpp:40
int m_state
Definition Errors.h:104
void setError(const std::string &message_, const char *sourceFile="", int lineNumber_=-1)
Definition Errors.cpp:97
virtual ~Errors()
Definition Errors.cpp:52
int getState()
Definition Errors.cpp:116
static constexpr double defaultDouble
Definition Errors.h:99