22#include <gtsam/config.h>
24#include <boost/optional/optional.hpp>
25#include <gtsam/dllexport.h>
31#include <tbb/tbb_allocator.h>
32#include <tbb/scalable_allocator.h>
39template<
class DERIVED>
44 typedef std::exception Base;
47 typedef std::basic_string<char, std::char_traits<char>,
48 tbb::tbb_allocator<char> > String;
51 typedef std::string String;
71 String(description.begin(), description.end())) {
79 const char* what() const noexcept
override {
104 InvalidArgumentThreadsafe> {
Global functions in a separate testing namespace.
Definition: chartTesting.h:28
Base exception type that uses tbb_allocator if GTSAM is compiled with TBB.
Definition: ThreadsafeException.h:42
~ThreadsafeException() noexcept override
Default destructor doesn't have the noexcept.
Definition: ThreadsafeException.h:75
bool dynamic_
Whether this object was moved.
Definition: ThreadsafeException.h:55
ThreadsafeException()
Default constructor is protected - may only be created from derived classes.
Definition: ThreadsafeException.h:59
ThreadsafeException(const ThreadsafeException &other)
Copy constructor is protected - may only be created from derived classes.
Definition: ThreadsafeException.h:64
ThreadsafeException(const std::string &description)
Construct with description string.
Definition: ThreadsafeException.h:69
boost::optional< String > description_
Optional description.
Definition: ThreadsafeException.h:56
Thread-safe runtime error exception.
Definition: ThreadsafeException.h:85
RuntimeErrorThreadsafe(const std::string &description)
Construct with a string describing the exception.
Definition: ThreadsafeException.h:88
Thread-safe out of range exception.
Definition: ThreadsafeException.h:94
OutOfRangeThreadsafe(const std::string &description)
Construct with a string describing the exception.
Definition: ThreadsafeException.h:97
Thread-safe invalid argument exception.
Definition: ThreadsafeException.h:104
InvalidArgumentThreadsafe(const std::string &description)
Construct with a string describing the exception.
Definition: ThreadsafeException.h:107
Indicate Cholesky factorization failure.
Definition: ThreadsafeException.h:114