dox/Graphics/vtkProgrammableDataObjectSource.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00045 #ifndef __vtkProgrammableDataObjectSource_h
00046 #define __vtkProgrammableDataObjectSource_h
00047
00048 #include "vtkSource.h"
00049
00050 class VTK_GRAPHICS_EXPORT vtkProgrammableDataObjectSource : public vtkSource
00051 {
00052 public:
00053 static vtkProgrammableDataObjectSource *New();
00054 vtkTypeRevisionMacro(vtkProgrammableDataObjectSource,vtkSource);
00055 void PrintSelf(ostream& os, vtkIndent indent);
00056
00059 void SetExecuteMethod(void (*f)(void *), void *arg);
00060
00062 void SetExecuteMethodArgDelete(void (*f)(void *));
00063
00065
00066 vtkDataObject *GetOutput();
00067 vtkDataObject *GetOutput(int idx)
00068 {return (vtkDataObject *) this->vtkSource::GetOutput(idx); };
00070
00071 protected:
00072 vtkProgrammableDataObjectSource();
00073 ~vtkProgrammableDataObjectSource();
00074
00075 void Execute();
00076
00077 void (*ExecuteMethod)(void *);
00078 void (*ExecuteMethodArgDelete)(void *);
00079 void *ExecuteMethodArg;
00080 private:
00081 vtkProgrammableDataObjectSource(const vtkProgrammableDataObjectSource&);
00082 void operator=(const vtkProgrammableDataObjectSource&);
00083 };
00084
00085 #endif
00086