ParticleAPI 3.0.0 Performant particle system API in C++ for interactive graphics

pError.h
Go to the documentation of this file.
1/// PError.h
2///
3/// Copyright 1997-2007, 2022 by David K. McAllister
4///
5/// This file defines the error classes that are thrown.
6
7#ifndef _perror_h
8#define _perror_h
9
10#include <string>
11
12namespace PAPI {
13/// Base type of all exceptions thrown by the Particle System API.
14 struct PError_t {
15 std::string ErrMsg;
16 PError_t(const std::string Er) : ErrMsg(Er) {}
17};
18
19 struct PErrInNewActionList : PError_t /// An operation was illegally attempted while in the midst of compiling an action list
20{
21 PErrInNewActionList(const std::string Er) : PError_t(Er) {}
22};
23 struct PErrNotImplemented : PError_t /// API encountered an unimplemented code path like Bounce for a new
24{
25 PErrNotImplemented(const std::string Er) : PError_t(Er) {}
26};
27 struct PErrInternalError : PError_t /// Internal API error (a PASSERT failed)
28{
29 PErrInternalError(const std::string Er) : PError_t(Er) {}
30};
31 struct PErrParticleGroup : PError_t /// A particle group call had an error
32{
33 PErrParticleGroup(const std::string Er) : PError_t(Er) {}
34};
35 struct PErrActionList : PError_t /// An action list call had an error
36{
37 PErrActionList(const std::string Er) : PError_t(Er) {}
38};
39 struct PErrInvalidValue : PError_t /// An invalid value was passed to an API call
40{
41 PErrInvalidValue(const std::string Er) : PError_t(Er) {}
42};
43}; // namespace PAPI
44
45#define PASSERT(x, msg)
46 {
47 if (!(x)) { throw PError_t(msg); }
48 }
49
50#endif
PAPI
PAPIClasses.h.
Definition: pAPIContext.h:16
PAPI::PErrActionList
An action list call had an error.
Definition: pError.h:36
PAPI::PErrActionList::PErrActionList
PErrActionList(const std::string Er)
Definition: pError.h:37
PAPI::PErrInNewActionList
An operation was illegally attempted while in the midst of compiling an action list.
Definition: pError.h:20
PAPI::PErrInNewActionList::PErrInNewActionList
PErrInNewActionList(const std::string Er)
Definition: pError.h:21
PAPI::PErrInternalError
Internal API error (a PASSERT failed)
Definition: pError.h:28
PAPI::PErrInternalError::PErrInternalError
PErrInternalError(const std::string Er)
Definition: pError.h:29
PAPI::PErrInvalidValue
An invalid value was passed to an API call.
Definition: pError.h:40
PAPI::PErrInvalidValue::PErrInvalidValue
PErrInvalidValue(const std::string Er)
Definition: pError.h:41
PAPI::PErrNotImplemented
API encountered an unimplemented code path like Bounce for a new.
Definition: pError.h:24
PAPI::PErrNotImplemented::PErrNotImplemented
PErrNotImplemented(const std::string Er)
Definition: pError.h:25
PAPI::PErrParticleGroup
A particle group call had an error.
Definition: pError.h:32
PAPI::PErrParticleGroup::PErrParticleGroup
PErrParticleGroup(const std::string Er)
Definition: pError.h:33
PAPI::PError_t
Base type of all exceptions thrown by the Particle System API.
Definition: pError.h:14
PAPI::PError_t::PError_t
PError_t(const std::string Er)
Definition: pError.h:16
PAPI::PError_t::ErrMsg
std::string ErrMsg
Definition: pError.h:15