Common/vtkSource.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00047 #ifndef __vtkSource_h
00048 #define __vtkSource_h
00049
00050 #include "vtkProcessObject.h"
00051
00052 class vtkDataObject;
00053
00054 class VTK_COMMON_EXPORT vtkSource : public vtkProcessObject
00055 {
00056 public:
00057 vtkTypeRevisionMacro(vtkSource,vtkProcessObject);
00058 void PrintSelf(ostream& os, vtkIndent indent);
00059
00063 virtual void Update();
00064
00067 virtual void UpdateWholeExtent();
00068
00071 virtual void UpdateInformation();
00072
00073 virtual void PropagateUpdateExtent(vtkDataObject *output);
00074
00075 virtual void TriggerAsynchronousUpdate();
00076
00077 virtual void UpdateData(vtkDataObject *output);
00078
00082 virtual void ComputeInputUpdateExtents( vtkDataObject *output );
00083
00085
00087 virtual void SetReleaseDataFlag(int);
00088 virtual int GetReleaseDataFlag();
00089 vtkBooleanMacro(ReleaseDataFlag,int);
00091
00093 virtual void UnRegister(vtkObjectBase *o);
00094
00096 virtual int InRegisterLoop(vtkObject *);
00097
00099
00101 vtkDataObject **GetOutputs();
00102 vtkGetMacro(NumberOfOutputs,int);
00104
00108 void UnRegisterAllOutputs(void);
00109
00112 int GetOutputIndex(vtkDataObject *out);
00113
00114 protected:
00115 vtkSource();
00116 ~vtkSource();
00117
00121 virtual void ExecuteData(vtkDataObject *output);
00122
00127 int UpdateExtentIsEmpty(vtkDataObject *output);
00128
00130 virtual void Execute();
00131
00132
00133
00134 virtual void ExecuteInformation();
00135
00136
00137 void SetNumberOfOutputs(int num);
00138
00139
00140 vtkDataObject *GetOutput(int idx);
00141
00142
00143 virtual void SetNthOutput(int num, vtkDataObject *output);
00144 virtual void AddOutput(vtkDataObject *output);
00145 virtual void RemoveOutput(vtkDataObject *output);
00146
00147 vtkDataObject **Outputs;
00148 int NumberOfOutputs;
00149 int Updating;
00150
00151 vtkTimeStamp InformationTime;
00152
00153 private:
00154 vtkSource(const vtkSource&);
00155 void operator=(const vtkSource&);
00156 };
00157
00158 #endif
00159
00160
00161