OpenVDB
13.0.0
Toggle main menu visibility
Loading...
Searching...
No Matches
Exceptions.h
Go to the documentation of this file.
1
// Copyright Contributors to the OpenVDB Project
2
// SPDX-License-Identifier: Apache-2.0
3
4
/// @file openvdb_ax/Exceptions.h
5
///
6
/// @authors Nick Avramoussis, Richard Jones
7
///
8
/// @brief OpenVDB AX Exceptions
9
///
10
11
#ifndef OPENVDB_AX_EXCEPTIONS_HAS_BEEN_INCLUDED
12
#define OPENVDB_AX_EXCEPTIONS_HAS_BEEN_INCLUDED
13
14
#include <openvdb/version.h>
15
#include <
openvdb/Exceptions.h
>
16
17
#include <sstream>
18
#include <string>
19
20
namespace
openvdb
{
21
OPENVDB_USE_VERSION_NAMESPACE
22
namespace
OPENVDB_VERSION_NAME
{
23
24
#define OPENVDB_AX_EXCEPTION(_classname) \
25
class _classname: public Exception \
26
{ \
27
public: \
28
_classname() noexcept: Exception( #_classname ) {} \
29
explicit _classname(const std::string& msg) noexcept: Exception( #_classname , &msg) {} \
30
}
31
32
OPENVDB_AX_EXCEPTION
(
CLIError
);
33
34
// @note: Compilation errors due to invalid AX code should be collected using a separate logging system.
35
// These errors are only thrown upon encountering fatal errors within the compiler/executables themselves
36
OPENVDB_AX_EXCEPTION
(
AXTokenError
);
37
OPENVDB_AX_EXCEPTION
(
AXSyntaxError
);
38
OPENVDB_AX_EXCEPTION
(
AXCodeGenError
);
39
OPENVDB_AX_EXCEPTION
(
AXCompilerError
);
40
OPENVDB_AX_EXCEPTION
(
AXExecutionError
);
41
42
#undef OPENVDB_AX_EXCEPTION
43
44
}
// namespace OPENVDB_VERSION_NAME
45
}
// namespace openvdb
46
47
#endif
// OPENVDB_AX_EXCEPTIONS_HAS_BEEN_INCLUDED
48
OPENVDB_AX_EXCEPTION
#define OPENVDB_AX_EXCEPTION(_classname)
Definition
Exceptions.h:24
openvdb::v13_0::AXCodeGenError::AXCodeGenError
AXCodeGenError() noexcept
Definition
Exceptions.h:38
openvdb::v13_0::AXCompilerError::AXCompilerError
AXCompilerError() noexcept
Definition
Exceptions.h:39
openvdb::v13_0::AXExecutionError::AXExecutionError
AXExecutionError() noexcept
Definition
Exceptions.h:40
openvdb::v13_0::AXSyntaxError::AXSyntaxError
AXSyntaxError() noexcept
Definition
Exceptions.h:37
openvdb::v13_0::AXTokenError::AXTokenError
AXTokenError() noexcept
Definition
Exceptions.h:36
openvdb::v13_0::CLIError::CLIError
CLIError() noexcept
Definition
Exceptions.h:32
openvdb
Definition
Exceptions.h:13
Exceptions.h
OPENVDB_VERSION_NAME
#define OPENVDB_VERSION_NAME
The version namespace name for this library version.
Definition
version.h.in:121
OPENVDB_USE_VERSION_NAMESPACE
#define OPENVDB_USE_VERSION_NAMESPACE
Definition
version.h.in:218
openvdb_ax
Exceptions.h
Generated by
1.18.0