File boutexception.hxx


void BoutParallelThrowRhsFail(int status, const char *message)

Throw BoutRhsFail with message if any one process has non-zero status

class BoutException : public std::exception

Subclassed by BoutIterationFail, BoutRhsFail

Public Functions

BoutException(const char *s, ...)
BoutException(std::string msg)
const char *what() const
void Backtrace()
std::string getBacktrace() const

Return the exception message along with the MsgStack and backtrace (if available)

Public Members

const std::string header = {"====== Exception thrown ======n"}

Protected Functions

void makeBacktrace()

Protected Attributes

char *buffer = nullptr
int buflen
std::string message
void *trace[TRACE_MAX]
int trace_size
char **messages
std::string backtrace_message = {}

Protected Static Attributes

constexpr int BUFFER_LEN = 1024
constexpr unsigned int TRACE_MAX = 128
class BoutRhsFail : public BoutException

Public Functions

BoutRhsFail(const char *s, ...)
class BoutIterationFail : public BoutException

Public Functions

BoutIterationFail(const char *s, ...)