Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members

mitkObject Class Reference

mitkObject - abstract base class for most objects in MITK More...

#include <mitkObject.h>

Inherited by mitkBackProjection, mitkBarrier, mitkCamera, mitkColorTable, mitkColorTransferFunction, mitkConditionVariable, mitkDataObject, mitkDirectionEncoder, mitkEncodedGradientEstimator, mitkEncodedGradientShader, mitkFootprint, mitkGeneratePathNetwork, mitkGLSLProgram, mitkGLSLShader, mitkHistogram1D, mitkHistogram2D, mitkImplementor, mitkIntNode, mitkLight, mitkMainPathExtraction, mitkManipulator, mitkModel, mitkMutex, mitkNode, mitkObserver, mitkOoCVolumeShearFunction, mitkPath, mitkPathNetwork, mitkPhantom, mitkPhantomElement, mitkPlane, mitkProcessObject, mitkRenderer, mitkRGBATransferFunction1D, mitkSceneBase, mitkSceneContainer, mitkSemaphore, mitkSPMD, mitkSurfaceProperty, mitkTF2DRGBAClassifier, mitkThread, mitkThreadMaster, mitkThreadWorker, mitkThreadWorkerCreator, mitkTransferFunction, mitkView, mitkVolumeDivider, mitkVolumeProperty, mitkVolumeRayCastFunction, and mitkVolumeSplatFunction.

Inheritance diagram for mitkObject:

Inheritance graph
[legend]
Collaboration diagram for mitkObject:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual const char * GetClassname () const
virtual int IsA (const char *name)
virtual void DebugOn ()
virtual void DebugOff ()
unsigned char GetDebug ()
void SetDebug (unsigned char debugFlag)
void Print (ostream &os)
virtual void PrintSelf (ostream &os)
void AddObserver (mitkObserver *observer)
void RemoveObserver (mitkObserver *observer)
void RemoveAllObservers ()
void AddReference ()
void RemoveReference ()
int GetReferenceCount ()
void Delete ()

Static Public Member Functions

static int IsTypeOf (const char *name)
static mitkObjectSafeDownCast (mitkObject *o)
static void BreakOnError ()

Detailed Description

mitkObject - abstract base class for most objects in MITK

mitkObject is the base class for most objects in MITK. It provides several base services for all of MITK objects.
The first base service is the RTTI(Run Time Type Information). Please see the GetClassname(), IsTypeOf(), IsA(), SafeDownCast()
The second base service is the debugging information. Please see the DebugOn(), DebugOff(), GetDebug(), SetDebug(), BreakOnError(), PrintSelf()
The third base service is the memory management, including Reference Counting and Garbage Collection. Please see the AddReference(), RemoveReference(), GetReferenceCount(), Delete()
The fourth base service is the support of the observer design pattern, which makes the updating user interface to reflect the internal status of a MITK object possible. Please see the AddObserver(), RemoveObserver(), RemoveAllObservers()

Note:
The deconstructor of mitkObject and all of its subclasses is protected. This means that a object in MITK must be allocated in the heap using new operator. If you define a local MITK object in the stack, the compiler will generate an error information.


Member Function Documentation

void mitkObject::AddObserver mitkObserver observer  ) 
 

Attach an observer to this object.

Parameters:
observer pointer to an mitkObserver to attach

void mitkObject::AddReference  ) 
 

Add 1 to the referenct count. Only when the reference count of a MITK object is equal to 0, it can be deleted.

static void mitkObject::BreakOnError  )  [static]
 

This method is called when mitkErrorMessage executes.

virtual void mitkObject::DebugOff  )  [virtual]
 

Turn debugging output off.

virtual void mitkObject::DebugOn  )  [virtual]
 

Turn debugging output on.

void mitkObject::Delete  ) 
 

If current reference count is equal to 0, delete this object, otherwise, nothing happens.

Note:
Usually a MITK object can only be deleted through two ways. One is to call RemoveReference(), and the other is to call Delete(). But RemoveReference() is usually called internally to implement the reference counting design pattern, so Delete() is the correct function to call if you want to delete a MITK object.

virtual const char* mitkObject::GetClassname  )  const [inline, virtual]
 

Get the class name as a string. The purpose is to support RTTI.

Returns:
Return the class name of this object. For mitkObject, it always return "mitkObject"

unsigned char mitkObject::GetDebug  ) 
 

Get the value of the debug flag.

Returns:
Return zero, the debug flag is off, otherwise the debug flag is on.

int mitkObject::GetReferenceCount  )  [inline]
 

Get current referenct count of this object. Only when the reference count of a MITK object is equal to 0, it can be deleted.

Returns:
Return the reference count of this object.

virtual int mitkObject::IsA const char *  name  )  [virtual]
 

Decide if this class is one type of the specified class

Parameters:
name The name of specified class
Returns:
Return 1 if this class is the same type of (or a subclass of) the specified class. Returns 0 otherwise.

static int mitkObject::IsTypeOf const char *  name  )  [static]
 

Decide if this class is one type of the specified class

Parameters:
name The name of specified class
Returns:
Return 1 if this class is the same type of (or a subclass of) the specified class. Returns 0 otherwise.

void mitkObject::Print ostream &  os  ) 
 

Print this object to an ostream.

Parameters:
os The specified ostream to output information.

virtual void mitkObject::PrintSelf ostream &  os  )  [virtual]
 

Print the necessary information about this object for the debugging purpose.

Parameters:
os The specified ostream to output information.

Reimplemented in mitkAnalyzeImageReader, mitkAnalyzeImageWriter, mitkBinaryFilter, mitkBMPReader, mitkBMPWriter, mitkCacheVolumeReader, mitkCacheVolumeWriter, mitkDataObject, mitkDICOMInfoReader, mitkDICOMReader, mitkDICOMWriter, mitkDiffusionFilter, mitkFFTFilter, mitkFilter, mitkGaussianDerivativeImageFilter, mitkGaussianFilter, mitkHEICTriangleMesh, mitkHEMesh, mitkHEOoCTriangleMesh, mitkHETriangleMesh, mitkICTriangleMesh, mitkICVolume, mitkImageIOFactory, mitkInfoReader, mitkJPEGReader, mitkJPEGWriter, mitkMesh, mitkMeshReader, mitkMeshToMeshFilter, mitkMeshWriter, mitkMetaImageReader, mitkMetaImageWriter, mitkNetCDFImageReader, mitkNetCDFImageWriter, mitkNeumannBoundary, mitkObserver, mitkOoCTriangleMesh, mitkOoCVolume, mitkPlane, mitkPLYASCIIWriter, mitkPLYBinaryWriter, mitkPLYReader, mitkProcessObject, mitkQEMSimplification, mitkRawFilesReader, mitkRawFilesWriter, mitkRawReader, mitkRawWriter, mitkReader, mitkRGBToGrayFilter, mitkSheetFilter, mitkSobelEdgeDetectFilter, mitkSource, mitkSTLASCIIWriter, mitkSTLBinaryWriter, mitkSTLReader, mitkTarget, mitkTIFFReader, mitkTIFFWriter, mitkTriangleMesh, mitkTriangleMeshSimplification, mitkVolume, mitkVolumeCropFilter, mitkVolumeDataTypeConvertor, mitkVolumeReader, mitkVolumeResizeFilter, mitkVolumeResliceFilter, mitkVolumeToMeshFilter, mitkVolumeToVolumeFilter, mitkVolumeWriter, mitkWriter, mitk2DBeamICPD, mitk2DBeamOoCPD, mitk2DBeamPD, mitk3DUSPixelBasedMT, mitk3DUSReconstructionFilter, mitkBackProjection, mitkCBFDKReconCF, mitkCBFDKReconCFCPU, mitkCBTFDKReconCF, mitkConeBeamICPD, mitkConeBeamOoCPD, mitkConeBeamPD, mitkConeBeamProjectData, mitkConeBeamRealTimePD, mitkConeBeamReconFromHelix, mitkCTProjectionData, mitkCTReconstructionFilter, mitkFanBeamProjectData, mitkFanBeamReconFromCirle, mitkFbFbp, mitkFBFBPReconCF, mitkFBFBPReconCFCPU, mitkFbFbpSpeedUsingCpu, mitkFDK, mitkFDKSpeedUsingCpu, mitkICConeBeamProjectData, mitkICFanBeamProjectData, mitkICParallelProjectData, mitkOoCConeBeamProjectData, mitkOoCFanBeamProjectData, mitkOoCParallelProjectData, mitkParallelBeamReconFromCirle, mitkParallelProjectData, mitkPbFbp, mitkPBFBPReconCF, mitkProjectData, mitkProjectDataToVolumeFilter, mitkRawConeBeamProjectData, mitkRawData, mitkRawDataReader, mitkRawDataToVolumeFilter, mitkRawDataWriter, mitkRawFilesReader, mitkTFDK, mitkTrackedBscanData, mitkTrackedBscanDataReader, mitkTrackedBscanDataWriter, mitkTrackedBscanICData, mitkTrackedBscanOoCData, mitkAffineTransform, mitkAmoebaOptimizer, mitkBSplineInterpolateFilter, mitkCubicInterpolateFilter, mitkEuclideanDistanceMetric, mitkGradientDescentOptimizer, mitkInterpolateFilter, mitkIterativeClosestPointOptimizer, mitkLandmarkRegistrationFilter, mitkLBFGSBOptimizer, mitkLBFGSOptimizer, mitkLinearInterpolateFilter, mitkMeanSquaresMetric, mitkMetric, mitkNearestNeighborInterpolateFilter, mitkNormalizedCorrelationMetric, mitkOptimizer, mitkPointSetEstimator, mitkPointSetKernelTransformEstimator, mitkPointSetMetric, mitkPointSetQuaternionEstimator, mitkPointSetRegistrationFilter, mitkPowellOptimizer, mitkRegistrationFilter, mitkRigidTransform, mitkScaleTransform, mitkSimilarityTransform, mitkSubtractImageFilter, mitkThinPlateSplineTransform, mitkTransform, mitkTranslationTransform, mitkVersorRigid3DTransform, mitkVersorSimilarity3DTransform, mitkConnectivityLabelFilter, mitkLiveWireImageFilter, mitkOtsuSegmentationFilter, mitkRegionGrowImageFilter, mitkSeedFillFilter, mitkThresholdSegmentationFilter, mitkAngleWidgetModel2D, mitkAngleWidgetModel3D, mitkBinMarchingCubes, mitkCamera, mitkClippingPlaneWidgetModel, mitkColorTable, mitkColorTransferFunction, mitkDataModel, mitkEllipseWidgetModel2D, mitkFootprint, mitkFootprint1D, mitkFootprint1DGaussian, mitkFootprint2D, mitkFootprint2DGaussian, mitkImageModel, mitkImageView, mitkImageViewManipulatorStandard, mitkImageViewManipulatorWithWidgets, mitkLight, mitkLineWidgetModel2D, mitkLineWidgetModel3D, mitkManipulator, mitkMarchingCubes, mitkMeshViewManipulatorStandard, mitkModel, mitkOoCSurfaceRendererStandard, mitkOoCSurfaceRendererUseVA, mitkOoCVolumeRayCastCompositeFunction, mitkOoCVolumeRayCastCompositeFunctionEx, mitkOoCVolumeRendererRayCasting, mitkOoCVolumeRendererRayCastingEx, mitkOoCVolumeRendererShearWarp, mitkOoCVolumeRendererTexture3D, mitkOoCVolumeRendererTexture3DEx, mitkOoCVolumeShearFunction, mitkOoCVolumeShearParallel, mitkOoCVolumeShearPerspective, mitkOrthogonalImageModel, mitkPickManipulator, mitkPolygonWidgetModel2D, mitkPseudocolorWidgetModel, mitkPseudocolorWidgetModelEx, mitkRectWidgetModel2D, mitkRenderer, mitkReslicePlaneWidgetModel, mitkSplatCamera, mitkSurfaceModel, mitkSurfaceProperty, mitkSurfaceRenderer, mitkSurfaceRendererStandard, mitkSurfaceRendererUseVA, mitkSurfaceRendererUseVBO, mitkTransferFunction, mitkTransferFunction1D, mitkView, mitkVolumeDivider, mitkVolumeModel, mitkVolumeProperty, mitkVolumeRayCastCompositeFunction, mitkVolumeRayCastFunction, mitkVolumeRenderer, mitkVolumeRendererRayCasting, mitkVolumeRendererRayCastingLoD, mitkVolumeRendererSplatting, mitkVolumeRendererTexture3D, mitkVolumeSplatFunction, mitkVolumeSplatParallel, mitkVolumeSplatPerspective, mitkWidgetModel, mitkWidgetModel2D, mitkWidgetModel3D, mitkWidgetsViewManipulator, mitk2DBackProjectionUsingGPU, mitk3DBackProjectionUsingGPU, mitkBackProjectionUsingGPU, mitkCBFDKReconCFGPU, mitkFBFBPReconCFGPU, mitkFbFbpSpeedUsingGpu, mitkFDKSpeedUsingGpu, and mitk3DUSPixelBasedGPU.

void mitkObject::RemoveAllObservers  ) 
 

Detach all observers from this object.

void mitkObject::RemoveObserver mitkObserver observer  ) 
 

Detach an observer from this object.

Parameters:
observer pointer to an mitkObserver to detach

void mitkObject::RemoveReference  ) 
 

Remove 1 to the referenct count. If reference count is equal to zero after remove 1, then this object is deleted automatically.

static mitkObject* mitkObject::SafeDownCast mitkObject o  )  [static]
 

Safely cast the specified object to mitkObject*

Parameters:
o The specified object
Returns:
If success, return the casted o, otherwise return NULL.

void mitkObject::SetDebug unsigned char  debugFlag  ) 
 

Set the value of the debug flag.

Parameters:
debugFlag If debugFlag is zero, set the debug flag to off, otherwise set the debug flag to on.


The documentation for this class was generated from the following file:
Generated on Tue Feb 25 15:04:15 2014 for MITK (Medical Imaging ToolKit) by  doxygen 1.4.3