Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::EventObject Class Reference
[ITK System Objects]

#include <itkEventObject.h>

Inheritance diagram for itk::EventObject:

Inheritance graph
[legend]
List of all members.

Detailed Description

Abstraction of the Events used to communicating among filters and with GUIs.

EventObject provides a standard coding for sending and receiving messages indicating things like the initiation of processes, end of processes, modification of filters.

EventObjects form a hierarchy similar to the itk::ExceptionObject allowing to factorize common events in a tree-like structure. Higher detail can be assigned by users by subclassing existing itk::EventObjects.

EventObjects are used by itk::Command and itk::Object for implementing the Observer/Subject design pattern. Observers register their interest in particular kinds of events produced by a specific itk::Object. This mechanism decouples classes among them.

As oppossed to itk::Exception, itk::EventObject does not represent error states, but simply flow of information allowing to trigger actions as a consecuence of changes occurring in state on some itk::Objects.

itk::EventObject carries information in its own type, it relies on the appropiate use of the RTTI (Run Time Type Information).

A set of standard EventObjects is defined near the end of itkIndent.h.

See also:
itk::Command

itk::ExceptionObject

Definition at line 58 of file itkEventObject.h.

Public Member Functions

virtual bool CheckEvent (const EventObject *) const =0
 EventObject ()
virtual const char * GetEventName (void) const =0
virtual EventObjectMakeObject () const =0
virtual void Print (std::ostream &os) const
virtual ~EventObject ()

Protected Member Functions

 EventObject (const EventObject &)
virtual void PrintTrailer (std::ostream &os, Indent indent) const

Protected Attributes

Methods invoked by virtual
Print() to print information
about the object *including
superclasses.Typically not
called by the user(use Print()*instead) but used in the
hierarchical print process
to combine the *output of
several classes.*/virtual
void PrintSelf(std voi 
PrintHeader )(std::ostream &os, Indent indent) const


Constructor & Destructor Documentation

itk::EventObject::EventObject  )  [inline]
 

Constructor and copy constructor. Note that these functions will be called when children are instantiated.

Definition at line 63 of file itkEventObject.h.

virtual itk::EventObject::~EventObject  )  [inline, virtual]
 

Virtual destructor needed

Definition at line 66 of file itkEventObject.h.

itk::EventObject::EventObject const EventObject  )  [inline, protected]
 

Definition at line 93 of file itkEventObject.h.


Member Function Documentation

virtual bool itk::EventObject::CheckEvent const EventObject  )  const [pure virtual]
 

Check if given event matches or derives from this event.

virtual const char* itk::EventObject::GetEventName void   )  const [pure virtual]
 

Return the StringName associated with the event.

Implemented in itk::TreeChangeEvent< TTreeType >, itk::TreeAddEvent, and itk::TreeRemoveEvent.

virtual EventObject* itk::EventObject::MakeObject  )  const [pure virtual]
 

Create an Event of this type This method work as a Factory for creating events of each particular type.

Implemented in itk::TreeChangeEvent< TTreeType >, itk::TreeAddEvent, and itk::TreeRemoveEvent.

virtual void itk::EventObject::Print std::ostream &  os  )  const [virtual]
 

Print Event information. This method can be overridden by specific Event subtypes. The default is to print out the type of the event.

virtual void itk::EventObject::PrintTrailer std::ostream &  os,
Indent  indent
const [protected, virtual]
 


Member Data Documentation

Methods invoked by virtual Print () to print information about the object * including superclasses. Typically not called by the user (use Print() * instead) but used in the hierarchical print process to combine the * output of several classes. */ virtual void PrintSelf(std voi itk::EventObject::PrintHeader)(std::ostream &os, Indent indent) const [protected]
 


The documentation for this class was generated from the following file:
Generated at Sun Jul 9 19:38:42 2006 for ITK by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2000