33 #include "dcmtk/config/osconfig.h" 34 #include "dcmtk/ofstd/oftypes.h" 35 #include "dcmtk/ofstd/ofstring.h" 36 #include "dcmtk/ofstd/ofcast.h" 38 #define INCLUDE_CASSERT 39 #include "dcmtk/ofstd/ofstdinc.h" 90 virtual OFStatus
status()
const = 0;
93 virtual const char *
text()
const = 0;
104 return OFstatic_cast(
unsigned short,((
codeAndModule() >> 16) & 0xFFFF));
110 return OFstatic_cast(
unsigned short,(
codeAndModule() & 0xFFFF));
158 OFConditionConst(
unsigned short aModule,
unsigned short aCode, OFStatus aStatus,
const char *aText)
160 , theCodeAndModule(OFstatic_cast(unsigned long, aCode) | OFstatic_cast(unsigned long, aModule << 16))
169 , theCodeAndModule(arg.theCodeAndModule)
170 , theStatus(arg.theStatus)
171 , theText(arg.theText)
192 virtual OFStatus
status()
const;
195 virtual const char *
text()
const;
235 OFConditionString(
unsigned short aModule,
unsigned short aCode, OFStatus aStatus,
const char *aText)
237 , theCodeAndModule(OFstatic_cast(unsigned long, aCode) | OFstatic_cast(unsigned long, aModule << 16))
241 if (aText) theText = aText;
247 , theCodeAndModule(arg.theCodeAndModule)
248 , theStatus(arg.theStatus)
249 , theText(arg.theText)
270 virtual OFStatus
status()
const;
273 virtual const char *
text()
const;
317 assert(theCondition);
325 #ifdef OFCONDITION_STRICT_MODE 331 : theCondition(&base)
333 assert(theCondition);
338 : theCondition(arg.theCondition->
clone())
340 assert(theCondition);
346 if (theCondition->deletable())
357 if (theCondition->deletable())
362 assert(theCondition);
370 return theCondition->module();
374 inline unsigned short code()
const 376 return theCondition->code();
382 return theCondition->status();
386 inline const char *
text()
const 388 return theCondition->text();
394 OFStatus s = theCondition->status();
401 OFStatus s = theCondition->status();
405 #ifdef OFCONDITION_IMPLICIT_BOOL_CONVERSION 414 inline operator OFBool()
const 465 #define makeOFCondition(A, B, C, D) OFCondition(new OFConditionString((A), (B), (C), (D))) unsigned short module() const
returns the module identifier for this object.
virtual ~OFConditionConst()
destructor
OFString theText
condition description
OFBool operator!=(const OFCondition &arg) const
comparison operator.
OFConditionString(unsigned short aModule, unsigned short aCode, OFStatus aStatus, const char *aText)
constructor.
OFCondition(const OFCondition &arg)
copy constructor
OFBool operator==(const OFConditionBase &arg) const
comparison operator.
OFConditionBase & operator=(const OFConditionBase &arg)
private unimplemented copy assignment operator
unsigned long theCodeAndModule
code/module identification. Code is lower 16 bits, module is upper 16 bits
unsigned long theCodeAndModule
code/module identification. Code is lower 16 bits, module is upper 16 bits
this class is used to declare condition codes with user defined error messages.
OFConditionBase()
default constructor
this class is used to declare global condition constants.
virtual OFBool deletable() const =0
checks if this object is deletable, e.g.
OFBool operator!=(const OFConditionBase &arg) const
comparison operator, not equal.
OFCondition(OFConditionString *base)
constructor for condition code with user-defined error text
OFConditionConst(const OFConditionConst &arg)
copy constructor
unsigned short module() const
returns the module identifier for this object.
OFBool good() const
returns true if status is OK
virtual unsigned long codeAndModule() const =0
returns a combined code and module for this object.
OFBool operator==(const OFCondition &arg) const
comparison operator.
OFCondition & operator=(const OFCondition &arg)
copy assignment operator
virtual ~OFConditionBase()
destructor
OFConditionBase(const OFConditionBase &)
copy constructor
const char * theText
condition description
virtual ~OFConditionString()
destructor
OFCondition(const OFConditionConst &base=ECC_Normal)
constructor for condition code with global const condition object
abstract base class for condition codes
unsigned short code() const
returns the status code identifier for this object.
const char * text() const
returns the error message text for this object.
unsigned short code() const
returns the status code identifier for this object.
virtual OFStatus status() const =0
returns the status for this object.
virtual const OFConditionBase * clone() const =0
this method returns a pointer to a OFConditionBase object containing a clone of this object...
OFStatus status() const
returns the status for this object.
a simple string class that implements a subset of std::string.
OFConditionConst(unsigned short aModule, unsigned short aCode, OFStatus aStatus, const char *aText)
constructor.
OFBool bad() const
returns true if status is not OK, i. e. error or failure
OFConditionString(const OFConditionString &arg)
copy constructor
virtual const char * text() const =0
returns the error message text for this object.
const OFConditionBase * theCondition
pointer to the condition base object
General purpose class for condition codes.