GEOS
Classes | Namespaces | Enumerations
ErrorHandling.hpp File Reference

This file provides the infrastructure to capture external errors. More...

#include "common/DataTypes.hpp"
#include "common/format/Format.hpp"
#include "common/format/StringUtilities.hpp"
#include <mutex>

Go to the source code of this file.

Classes

struct  geos::ErrorContext
 
struct  geos::DiagnosticMsg
 Struct to construct the diagnostic message object. More...
 
class  geos::DiagnosticMsgBuilder
 Builder class for constructing DiagnosticMsg objects. More...
 
class  geos::ErrorLogger
 Logger for formatting and outputting diagnostics. More...
 

Namespaces

 geos
 

Enumerations

enum class  geos::MsgType {
  Error , ExternalError , Warning , Exception ,
  Undefined
}
 

Detailed Description

This file provides the infrastructure to capture external errors.

Note
Below is the architecture of the external error managment, in the scenario of a problematic infrastructure which deviates (thus breaks) stderr.
________________________________________________________________________
| GEOS APPLICATION |
|------------------------------------------------------------------------|
| _____________________ ____________________ |
| | GEOS DEPENDANCIES | | GEOS CORE | |
| |---------------------| |--------------------| |
| | _________ _____ | | __________ | |
| | | || | | | | | | |
| | | LvArray || std | | | | loggings |------------ | ________
| | |_________||_____| | | |__________| | | | log pipe | |
| | _______ | | | | ______________ | +--------------------------------->| stdout |
| || | | | | | | | | | | |________|
| || Hypre |--+----+-------- | | ErrorHandler |-------+ |
| ||_______| | | | |______________| | | |
| |_____________________| | |____________________| | |
| | | |
| external | ___________|___________ |
| errors | | OutputStreamDeviation | | deviated ________
| stream | | | | | error pipe | |
| -------------------------------+ x-----------------x +-------->| stderr |
| |_______________________| | | |________|
|________________________________________________________________________| |
.............
: HPC X : potencial infratructure
: system : <- which deviates the stderr
: messaging : for other reasons.
:...........:

Definition in file ErrorHandling.hpp.