OpenVDB  1.1.0
Classes | Namespaces | Macros
Exceptions.h File Reference
#include <exception>
#include <string>
#include <iostream>
#include <openvdb/version.h>

Go to the source code of this file.

Classes

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

Namespaces

namespace  openvdb
namespace  openvdb::v1_1_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() throw() : Exception( #_classname ) {} \
explicit _classname(const std::string &msg) throw() : Exception( #_classname , &msg) {} \
}
#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); \
}