CrystalSpace

Public API Reference

iReporter Struct Reference
[Utilities]

This is the interface for the error/message reporter plugin. More...

#include <ivaria/reporter.h>

Inheritance diagram for iReporter:

List of all members.

Public Member Functions

virtual void AddReporterListener (iReporterListener *listener)=0
 Add a listener that listens to new reports.
virtual void Clear (const char *mask)=0
 Clear all messages in the reporter for which the id matches with the given mask.
virtual void Clear (int severity=-1)=0
 Clear all messages in the reporter.
virtual bool FindReporterListener (iReporterListener *listener)=0
 Check if the listener is already on the list.
virtual csPtr< iReporterIteratorGetMessageIterator ()=0
 Get an iterator to iterate over all messages.
virtual void RemoveReporterListener (iReporterListener *listener)=0
 Remove a listener once.
virtual void Report (int severity, const char *msgId, const char *description,...)=0
 Report something.
void ReportBug (const char *msgId, const char *description,...)
 Report bug.
void ReportDebug (const char *msgId, const char *description,...)
 Report debug.
void ReportError (const char *msgId, const char *description,...)
 Report error.
void ReportNotify (const char *msgId, const char *description,...)
 Report notification.
virtual void ReportV (int severity, const char *msgId, const char *description, va_list)=0
 Report something.
void ReportWarning (const char *msgId, const char *description,...)
 Report warning.

Detailed Description

This is the interface for the error/message reporter plugin.

Note. This plugin does not actually print out or display messages in any way. The reporter simply collects messages and sends them out to interested partners. Typically the standard reporter listener (iStandardReporterListener) is such a plugin. It will print out the messages that arrive on the reporter.

Main creators of instances implementing this interface:

Main ways to get pointers to this interface:

Main users of this interface:

Definition at line 154 of file reporter.h.


Member Function Documentation

virtual void iReporter::AddReporterListener ( iReporterListener listener  )  [pure virtual]

Add a listener that listens to new reports.

Listeners can optionally remove reports too. This function does not check if the listener is already there and will add it again if so. The listener will be IncRef()'ed by this function.

virtual void iReporter::Clear ( const char *  mask  )  [pure virtual]

Clear all messages in the reporter for which the id matches with the given mask.

The mask can contain '*' or '?' wildcards. This can be used to clear all messages from some source like: Clear("crystalspace.sprite2dloader.*")

virtual void iReporter::Clear ( int  severity = -1  )  [pure virtual]

Clear all messages in the reporter.

If severity is -1 then all will be deleted. Otherwise only messages of the specified severity will be deleted.

virtual bool iReporter::FindReporterListener ( iReporterListener listener  )  [pure virtual]

Check if the listener is already on the list.

virtual csPtr<iReporterIterator> iReporter::GetMessageIterator (  )  [pure virtual]

Get an iterator to iterate over all messages.

This will make a copy of all messages so that the reporter is not locked.

virtual void iReporter::RemoveReporterListener ( iReporterListener listener  )  [pure virtual]

Remove a listener once.

The listener will be DecRef()'ed by this function. If the listener is on the list multiple times only one occurrence is removed. If the listener cannot be found on the list no DecRef() will happen.

virtual void iReporter::Report ( int  severity,
const char *  msgId,
const char *  description,
  ... 
) [pure virtual]

Report something.

The given message ID should be formed like: 'crystalspace.{source}.{type}.{detail}'. Example: 'crystalspace.sprite2dloader.parse.material'.

See also:
Notes about string formatting in Crystal Space
virtual void iReporter::ReportV ( int  severity,
const char *  msgId,
const char *  description,
va_list   
) [pure virtual]

Report something.

va_list version.

See also:
Notes about string formatting in Crystal Space

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

Generated for Crystal Space 2.0 by doxygen 1.6.1