AAO DRAMA/DRAMA2 C++ Interface
DRAMA C++11 and later interface
Classes | Namespaces | Macros | Functions
exception.hh File Reference

Detailed Description

DRAMA 2 Exception classes.

Declares the "drama::Exception class" to be used as a base class for all DRAMA2 Exceptions.

Author
Tony Farrell, AAO $Revision$ $Date$ $Id$
#include "drama.h"
#include "status.h"
#include "mess.h"
#include "drama2_err.h"
#include <string>
#include <stdio.h>
#include <stdarg.h>
#include <string.h>
#include <execinfo.h>
#include <sstream>
#include <cxxabi.h>
#include <iostream>
#include "Ers.h"
#include <iomanip>
#include <vector>
#include "drama/util.hh"

Go to the source code of this file.

Classes

class  drama::Exception
 An Exception class for exceptions thrown by DRAMA V2 classes. More...
 

Namespaces

namespace  drama
 The drama namespace contains all the classes, types etc of the DRAMA 2 implementation.
 

Macros

#define DramaTHROW(status_, message_)   throw drama::Exception(__func__, __FILE__,__LINE__,(message_), (status_))
 Throw a Drama exception.
 
#define DramaTHROW_S(status_, format_, ...)   drama::ExceptionThrowSafe(__func__, __FILE__,__LINE__,(status_), (format_), __VA_ARGS__)
 Throw a Drama exception with safe string formatting.
 

Functions

template<typename... Types>
void drama::ExceptionThrowSafe (const std::string func, const std::string &file, const int lineNum, StatusType status, const char *format, Types... args)
 Create and throw an exception, variable argument list, Safe formatting of arguments.
 
std::ostream & operator<< (std::ostream &strm, const drama::Exception &e)
 drama::Exception stream output operator