struct CCL::IErrorHandler

Overview

Handler interface for structured error handling. More…

#include <ierrorhandler.h>

struct IErrorHandler: public CCL::Alert::IReporter
{
    // methods

    virtual tresult CCL_API beginContext () = 0;
    virtual tresult CCL_API endContext () = 0;
    virtual IErrorContext*CCL_API peekContext () = 0;
    virtual int CCL_API getContextDepth () = 0;
    virtual tresult CCL_API pushToParent (IErrorContext* context) = 0;
};

Inherited Members

public:
    // methods

    virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0;
    virtual unsigned int CCL_API retain () = 0;
    virtual unsigned int CCL_API release () = 0;
    virtual void CCL_API reportEvent (const Event& e) = 0;
    virtual void CCL_API setReportOptions (Severity minSeverity, int eventFormat) = 0;

Detailed Documentation

Handler interface for structured error handling.

Threading Policy: Contexts and error events are handled on a per-thread basis.

Methods

virtual tresult CCL_API beginContext () = 0

Begin a new error context in calling thread.

virtual tresult CCL_API endContext () = 0

End current error context of calling thread.

virtual IErrorContext*CCL_API peekContext () = 0

Get current error context of calling thread, returns null if none present.

virtual int CCL_API getContextDepth () = 0

Get depth of error context nesting of calling thread.

virtual tresult CCL_API pushToParent (IErrorContext* context) = 0

Push events from given error context to its parent.