00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00023 #ifndef __vtkSMObject_h
00024 #define __vtkSMObject_h
00025
00026 #include "vtkObject.h"
00027
00028 class vtkSMProxyManager;
00029 class vtkSMApplication;
00030
00031 class VTK_EXPORT vtkSMObject : public vtkObject
00032 {
00033 public:
00034 static vtkSMObject* New();
00035 vtkTypeRevisionMacro(vtkSMObject, vtkObject);
00036 void PrintSelf(ostream& os, vtkIndent indent);
00037
00039
00040 static vtkSMProxyManager* GetProxyManager();
00041 static void SetProxyManager(vtkSMProxyManager* pm);
00043
00045
00047 static vtkSMApplication* GetApplication();
00048 static void SetApplication(vtkSMApplication* app);
00050
00051 protected:
00052 vtkSMObject();
00053 ~vtkSMObject();
00054
00055 static vtkSMProxyManager* ProxyManager;
00056 static vtkSMApplication* Application;
00057
00060 virtual void SaveState(const char*, ostream*, vtkIndent);
00061
00062 private:
00063 vtkSMObject(const vtkSMObject&);
00064 void operator=(const vtkSMObject&);
00065 };
00066
00067 #endif