OpenVDB  12.0.0
Classes | Namespaces | Macros
Exceptions.h File Reference
#include "version.h"
#include <exception>
#include <sstream>
#include <string>

Go to the source code of this file.

Classes

class  Exception
 
class  ArithmeticError
 
class  IndexError
 
class  IoError
 
class  KeyError
 
class  LookupError
 
class  NotImplementedError
 
class  ReferenceError
 
class  RuntimeError
 
class  TypeError
 
class  ValueError
 

Namespaces

 openvdb
 
 openvdb::v12_0
 

Macros

#define OPENVDB_EXCEPTION(_classname)
 
#define OPENVDB_THROW(exception, message)
 

Macro Definition Documentation

#define OPENVDB_EXCEPTION (   _classname)
Value:
class OPENVDB_API _classname: public Exception \
{ \
public: \
_classname() noexcept: Exception( #_classname ) {} \
explicit _classname(const std::string& msg) noexcept: Exception( #_classname , &msg) {} \
}
#define OPENVDB_API
Definition: Platform.h:268
#define OPENVDB_THROW (   exception,
  message 
)
Value:
{ \
std::string _openvdb_throw_msg; \
try { \
std::ostringstream _openvdb_throw_os; \
_openvdb_throw_os << message; \
_openvdb_throw_msg = _openvdb_throw_os.str(); \
} catch (...) {} \
throw exception(_openvdb_throw_msg); \
}