Open CASCADE Technology 7.8.0
Data Structures | Public Member Functions | Static Public Member Functions | Protected Member Functions
Standard_Failure Class Reference

Forms the root of the entire exception hierarchy. More...

#include <Standard_Failure.hxx>

Inheritance diagram for Standard_Failure:
Inheritance graph
[legend]

Public Member Functions

 Standard_Failure ()
 Creates a status object of type "Failure".
 
 Standard_Failure (const Standard_Failure &f)
 Copy constructor.
 
 Standard_Failure (const Standard_CString theDesc)
 Creates a status object of type "Failure".
 
 Standard_Failure (const Standard_CString theDesc, const Standard_CString theStackTrace)
 Creates a status object of type "Failure" with stack trace.
 
Standard_Failureoperator= (const Standard_Failure &f)
 Assignment operator.
 
 ~Standard_Failure ()
 Destructor.
 
void Print (Standard_OStream &theStream) const
 Prints on the stream theStream the exception name followed by the error message.
 
virtual Standard_CString GetMessageString () const
 Returns error message.
 
virtual void SetMessageString (const Standard_CString theMessage)
 Sets error message.
 
virtual Standard_CString GetStackString () const
 Returns the stack trace string.
 
virtual void SetStackString (const Standard_CString theStack)
 Sets the stack trace string.
 
void Reraise ()
 
void Reraise (const Standard_CString aMessage)
 
void Reraise (const Standard_SStream &aReason)
 Reraises a caught exception and changes its error message.
 
void Jump ()
 Used to throw CASCADE exception from C signal handler. On platforms that do not allow throwing C++ exceptions from this handler (e.g. Linux), uses longjump to get to the current active signal handler, and only then is converted to C++ exception.
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor.
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing.
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter.
 
virtual ~Standard_Transient ()
 Destructor must be virtual.
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object.
 
Standard_Boolean IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type.
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName.
 
Standard_Boolean IsKind (const opencascade::handle< Standard_Type > &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_TransientThis () const
 Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.
 
Standard_Integer GetRefCount () const noexcept
 Get the reference counter of this object.
 
void IncrementRefCounter () noexcept
 Increments the reference counter of this object.
 
Standard_Integer DecrementRefCounter () noexcept
 Decrements the reference counter of this object; returns the decremented value.
 
virtual void Delete () const
 Memory deallocator for transient classes.
 

Static Public Member Functions

static void Raise (const Standard_CString aMessage="")
 Raises an exception of type "Failure" and associates an error message to it. The message can be printed in an exception handler.
 
static void Raise (const Standard_SStream &aReason)
 Raises an exception of type "Failure" and associates an error message to it. The message can be constructed at run-time.
 
static Handle< Standard_FailureNewInstance (Standard_CString theMessage)
 Used to construct an instance of the exception object as a handle. Shall be used to protect against possible construction of exception object in C stack, which is dangerous since some of methods require that object was allocated dynamically.
 
static Handle< Standard_FailureNewInstance (Standard_CString theMessage, Standard_CString theStackTrace)
 Used to construct an instance of the exception object as a handle.
 
static Standard_Integer DefaultStackTraceLength ()
 Returns the default length of stack trace to be captured by Standard_Failure constructor; 0 by default meaning no stack trace.
 
static void SetDefaultStackTraceLength (Standard_Integer theNbStackTraces)
 Sets default length of stack trace to be captured by Standard_Failure constructor.
 
- Static Public Member Functions inherited from Standard_Transient
static constexpr const charget_type_name ()
 Returns a type descriptor about this object.
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class.
 

Protected Member Functions

virtual void Throw () const
 Used only if standard C++ exceptions are used. Throws exception of the same type as this by C++ throw, and stores current object as last thrown exception, to be accessible by method Caught()
 

Additional Inherited Members

- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object.
 

Detailed Description

Forms the root of the entire exception hierarchy.

Constructor & Destructor Documentation

◆ Standard_Failure() [1/4]

Standard_Failure::Standard_Failure ( )

Creates a status object of type "Failure".

◆ Standard_Failure() [2/4]

Standard_Failure::Standard_Failure ( const Standard_Failure f)

Copy constructor.

◆ Standard_Failure() [3/4]

Standard_Failure::Standard_Failure ( const Standard_CString  theDesc)

Creates a status object of type "Failure".

Parameters
theDesc[in] exception description

◆ Standard_Failure() [4/4]

Standard_Failure::Standard_Failure ( const Standard_CString  theDesc,
const Standard_CString  theStackTrace 
)

Creates a status object of type "Failure" with stack trace.

Parameters
theDesc[in] exception description
theStackTrace[in] associated stack trace

◆ ~Standard_Failure()

Standard_Failure::~Standard_Failure ( )

Destructor.

Member Function Documentation

◆ DefaultStackTraceLength()

static Standard_Integer Standard_Failure::DefaultStackTraceLength ( )
static

Returns the default length of stack trace to be captured by Standard_Failure constructor; 0 by default meaning no stack trace.

◆ GetMessageString()

virtual Standard_CString Standard_Failure::GetMessageString ( ) const
virtual

Returns error message.

◆ GetStackString()

virtual Standard_CString Standard_Failure::GetStackString ( ) const
virtual

Returns the stack trace string.

◆ Jump()

void Standard_Failure::Jump ( )

Used to throw CASCADE exception from C signal handler. On platforms that do not allow throwing C++ exceptions from this handler (e.g. Linux), uses longjump to get to the current active signal handler, and only then is converted to C++ exception.

◆ NewInstance() [1/2]

static Handle< Standard_Failure > Standard_Failure::NewInstance ( Standard_CString  theMessage)
static

Used to construct an instance of the exception object as a handle. Shall be used to protect against possible construction of exception object in C stack, which is dangerous since some of methods require that object was allocated dynamically.

◆ NewInstance() [2/2]

static Handle< Standard_Failure > Standard_Failure::NewInstance ( Standard_CString  theMessage,
Standard_CString  theStackTrace 
)
static

Used to construct an instance of the exception object as a handle.

◆ operator=()

Standard_Failure & Standard_Failure::operator= ( const Standard_Failure f)

Assignment operator.

◆ Print()

void Standard_Failure::Print ( Standard_OStream theStream) const

Prints on the stream theStream the exception name followed by the error message.

Note: there is a short-cut operator<< (Standard_OStream&, Handle(Standard_Failure)&)

◆ Raise() [1/2]

static void Standard_Failure::Raise ( const Standard_CString  aMessage = "")
static

Raises an exception of type "Failure" and associates an error message to it. The message can be printed in an exception handler.

◆ Raise() [2/2]

static void Standard_Failure::Raise ( const Standard_SStream aReason)
static

Raises an exception of type "Failure" and associates an error message to it. The message can be constructed at run-time.

◆ Reraise() [1/3]

void Standard_Failure::Reraise ( )

◆ Reraise() [2/3]

void Standard_Failure::Reraise ( const Standard_CString  aMessage)

◆ Reraise() [3/3]

void Standard_Failure::Reraise ( const Standard_SStream aReason)

Reraises a caught exception and changes its error message.

◆ SetDefaultStackTraceLength()

static void Standard_Failure::SetDefaultStackTraceLength ( Standard_Integer  theNbStackTraces)
static

Sets default length of stack trace to be captured by Standard_Failure constructor.

◆ SetMessageString()

virtual void Standard_Failure::SetMessageString ( const Standard_CString  theMessage)
virtual

Sets error message.

◆ SetStackString()

virtual void Standard_Failure::SetStackString ( const Standard_CString  theStack)
virtual

Sets the stack trace string.

◆ Throw()

virtual void Standard_Failure::Throw ( ) const
protectedvirtual

Used only if standard C++ exceptions are used. Throws exception of the same type as this by C++ throw, and stores current object as last thrown exception, to be accessible by method Caught()


The documentation for this class was generated from the following file: