Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# Common/vtkOverrideInformation.h

Go to the documentation of this file.

    00001 /*=========================================================================
    00002
    00003   Program:   Visualization Toolkit
    00004   Module:    $RCSfile: vtkOverrideInformation.h,v $
    00005   Language:  C++
    00006
    00007   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen
    00008   All rights reserved.
    00009   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
    00010
    00011      This software is distributed WITHOUT ANY WARRANTY; without even
    00012      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
    00013      PURPOSE.  See the above copyright notice for more information.
    00014
    00015 =========================================================================*/
    00042 #ifndef __vtkOverrideInformation_h
    00043 #define __vtkOverrideInformation_h
    00044
    00045 #include "vtkObject.h"
    00046
    00047 class vtkObjectFactory;
    00048
    00049 class VTK_COMMON_EXPORT vtkOverrideInformation : public vtkObject
    00050 {
    00051 public:
    00052   static vtkOverrideInformation* New();
    00053   vtkTypeRevisionMacro(vtkOverrideInformation,vtkObject);
    00055   virtual void PrintSelf(ostream& os, vtkIndent indent);
    00056
    00058
    00061   const char* GetClassOverrideName()
    00062     {
    00063       return this->ClassOverrideName;
    00064     }
    00066
    00068
    00071   const char* GetClassOverrideWithName()
    00072     {
    00073       return this->ClassOverrideWithName;
    00074     }
    00076
    00078
    00080   const char* GetDescription()
    00081     {
    00082       return this->Description;
    00083     }
    00085
    00087
    00088   vtkObjectFactory* GetObjectFactory()
    00089     {
    00090       return this->ObjectFactory;
    00091     }
    00092   // Description:
    00093   // Set the class override name
    00094   vtkSetStringMacro(ClassOverrideName);
    00095   // Set the class override with name
    00096   vtkSetStringMacro(ClassOverrideWithName);
    00097   // Set the description
    00098   vtkSetStringMacro(Description);
    00100 protected:
    00101   virtual void SetObjectFactory(vtkObjectFactory*);
    00102
    00103 private:
    00104   vtkOverrideInformation();
    00105   ~vtkOverrideInformation();
    00106   // allow the object factory to set the values in this
    00107   // class, but only the object factory
    00108 //BTX
    00109   friend class vtkObjectFactory;
    00110 //ETX
    00111
    00112   char* ClassOverrideName;
    00113   char* ClassOverrideWithName;
    00114   char* Description;
    00115   vtkObjectFactory* ObjectFactory;
    00116 private:
    00117   vtkOverrideInformation(const vtkOverrideInformation&);  // Not implemented.
    00118   void operator=(const vtkOverrideInformation&);  // Not implemented.
    00119 };
    00120
    00121 #endif