API
4.3
For MATLAB, Python, Java, and C++ users
|
A class for basic exception functionality. More...
Public Member Functions | |
Exception (const std::string &aMsg="", const std::string &aFile="", int aLine=-1) | |
This constructor is for backward compatibility. More... | |
Exception (const std::string &file, size_t line, const std::string &func) | |
Call this constructor from derived classes to add file, line and function information to the error message. More... | |
Exception (const std::string &file, size_t line, const std::string &func, const std::string &msg) | |
Use this when you want to throw an Exception (with OPENSIM_THROW or OPENSIM_THROW_IF) and also provide a message. More... | |
Exception (const std::string &file, size_t line, const std::string &func, const Object &obj) | |
The message created by this constructor will contain the class name and instance name of the provided Object. More... | |
Exception (const std::string &file, size_t line, const std::string &func, const Object &obj, const std::string &msg) | |
The message created by this constructor will contain the class name and instance name of the provided Object, and also accepts a message. More... | |
template<typename... Args> | |
Exception (const std::string &file, size_t line, const std::string &func, spdlog::string_view_t fmt, const Args &... args) | |
Use this when you want to throw an Exception (with OPENSIM_THROW or OPENSIM_THROW_IF) and also provide a message that is formatted using fmt::format() syntax. More... | |
template<typename... Args> | |
Exception (const std::string &file, size_t line, const std::string &func, const Object &obj, spdlog::string_view_t fmt, const Args &... args) | |
The message created by this constructor will contain the class name and instance name of the provided Object, and also accepts a message formatted using fmt::format() syntax. More... | |
virtual | ~Exception () throw () |
void | setMessage (const std::string &aMsg) |
const char * | getMessage () const |
virtual void | print (std::ostream &aOut) const |
const char * | what () const noexcept override |
A class for basic exception functionality.
OpenSim::Exception::Exception | ( | const std::string & | aMsg = "" , |
const std::string & | aFile = "" , |
||
int | aLine = -1 |
||
) |
This constructor is for backward compatibility.
Use the constructor taking file, line, func.
OpenSim::Exception::Exception | ( | const std::string & | file, |
size_t | line, | ||
const std::string & | func | ||
) |
Call this constructor from derived classes to add file, line and function information to the error message.
Use this when throwing Derived classes. Use OPENSIM_THROW_<> macros at throw sites.
OpenSim::Exception::Exception | ( | const std::string & | file, |
size_t | line, | ||
const std::string & | func, | ||
const std::string & | msg | ||
) |
Use this when you want to throw an Exception (with OPENSIM_THROW or OPENSIM_THROW_IF) and also provide a message.
OpenSim::Exception::Exception | ( | const std::string & | file, |
size_t | line, | ||
const std::string & | func, | ||
const Object & | obj | ||
) |
The message created by this constructor will contain the class name and instance name of the provided Object.
Use this when throwing derived classes. Use OPENSIM_THROW_<> macros at throw sites.
OpenSim::Exception::Exception | ( | const std::string & | file, |
size_t | line, | ||
const std::string & | func, | ||
const Object & | obj, | ||
const std::string & | msg | ||
) |
|
inline |
Use this when you want to throw an Exception (with OPENSIM_THROW or OPENSIM_THROW_IF) and also provide a message that is formatted using fmt::format() syntax.
|
inline |
|
inlinevirtual |
|
protected |
Add to the error message that will be returned for the exception.
Referenced by OpenSim::ComponentAlreadyPartOfOwnershipTree::ComponentAlreadyPartOfOwnershipTree(), OpenSim::ComponentHasNoName::ComponentHasNoName(), OpenSim::ComponentHasNoSystem::ComponentHasNoSystem(), OpenSim::ComponentIsAnOrphan::ComponentIsAnOrphan(), OpenSim::ComponentIsRootWithNoSubcomponents::ComponentIsRootWithNoSubcomponents(), OpenSim::ComponentNotFoundOnSpecifiedPath::ComponentNotFoundOnSpecifiedPath(), OpenSim::ConnecteeNotSpecified::ConnecteeNotSpecified(), OpenSim::DataAdapterAlreadyRegistered::DataAdapterAlreadyRegistered(), OpenSim::DataTypeMismatch::DataTypeMismatch(), OpenSim::EmptyFileName::EmptyFileName(), OpenSim::EmptyTable::EmptyTable(), OpenSim::FileDeletionThrowerException::FileDeletionThrowerException(), OpenSim::FileDoesNotExist::FileDoesNotExist(), OpenSim::FileExtensionNotFound::FileExtensionNotFound(), OpenSim::FileIsEmpty::FileIsEmpty(), OpenSim::IncorrectMetaDataLength::IncorrectMetaDataLength(), OpenSim::IncorrectNumColumnLabels::IncorrectNumColumnLabels(), OpenSim::IncorrectNumColumns::IncorrectNumColumns(), OpenSim::IncorrectNumMetaDataKeys::IncorrectNumMetaDataKeys(), OpenSim::IncorrectNumRows::IncorrectNumRows(), OpenSim::IncorrectNumTokens::IncorrectNumTokens(), OpenSim::IncorrectTableType::IncorrectTableType(), OpenSim::InputNotConnected::InputNotConnected(), OpenSim::InputNotFound::InputNotFound(), OpenSim::InvalidComponentName::InvalidComponentName(), OpenSim::InvalidPropertyValue::InvalidPropertyValue(), OpenSim::InvalidTimeRange::InvalidTimeRange(), OpenSim::JointFramesAreTheSame::JointFramesAreTheSame(), OpenSim::JointFramesHaveSameBaseFrame::JointFramesHaveSameBaseFrame(), OpenSim::JointHasNoCoordinates::JointHasNoCoordinates(), OpenSim::KeyExists::KeyExists(), OpenSim::KeyMissing::KeyMissing(), OpenSim::MetaDataLengthMismatch::MetaDataLengthMismatch(), OpenSim::MissingMetaData::MissingMetaData(), OpenSim::MocoCasADiSolverNotAvailable::MocoCasADiSolverNotAvailable(), OpenSim::MocoTropterSolverNotAvailable::MocoTropterSolverNotAvailable(), OpenSim::ModelHasNoSystem::ModelHasNoSystem(), OpenSim::MuscleCannotEquilibrate::MuscleCannotEquilibrate(), OpenSim::NoColumnLabels::NoColumnLabels(), OpenSim::NoRegisteredDataAdapter::NoRegisteredDataAdapter(), OpenSim::NoTableFound::NoTableFound(), OpenSim::OutputNotFound::OutputNotFound(), OpenSim::PhysicalOffsetFramesFormLoop::PhysicalOffsetFramesFormLoop(), OpenSim::RowLengthMismatch::RowLengthMismatch(), OpenSim::SocketNotFound::SocketNotFound(), OpenSim::STODataTypeNotSupported::STODataTypeNotSupported(), OpenSim::SubcomponentsWithDuplicateName::SubcomponentsWithDuplicateName(), OpenSim::TableMissingHeader::TableMissingHeader(), OpenSim::TableNotFoundException::TableNotFoundException(), OpenSim::TimeColumnNotIncreasing::TimeColumnNotIncreasing(), OpenSim::TimeOutOfRange::TimeOutOfRange(), OpenSim::TimestampGreaterThanEqualToNext::TimestampGreaterThanEqualToNext(), OpenSim::TimestampLessThanEqualToPrevious::TimestampLessThanEqualToPrevious(), OpenSim::UnexpectedColumnLabel::UnexpectedColumnLabel(), and OpenSim::UnexpectedMetaDataKey::UnexpectedMetaDataKey().
const char* OpenSim::Exception::getMessage | ( | ) | const |
|
virtual |
void OpenSim::Exception::setMessage | ( | const std::string & | aMsg | ) |
|
overridenoexcept |
Referenced by OpenSim::TableReporter_< InputT, ValueT >::implementReport().