VTK
/Users/kitware/Dashboards/MyTests/VTK_BLD_Release_docs/Utilities/Doxygen/dox/Common/ExecutionModel/vtkTrivialProducer.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkTrivialProducer.h
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00028 #ifndef vtkTrivialProducer_h
00029 #define vtkTrivialProducer_h
00030 
00031 #include "vtkCommonExecutionModelModule.h" // For export macro
00032 #include "vtkAlgorithm.h"
00033 
00034 class vtkDataObject;
00035 
00036 class VTKCOMMONEXECUTIONMODEL_EXPORT vtkTrivialProducer : public vtkAlgorithm
00037 {
00038 public:
00039   static vtkTrivialProducer *New();
00040   vtkTypeMacro(vtkTrivialProducer,vtkAlgorithm);
00041   void PrintSelf(ostream& os, vtkIndent indent);
00042 
00044 
00047   virtual int ProcessRequest(vtkInformation*,
00048                              vtkInformationVector**,
00049                              vtkInformationVector*);
00051 
00054   virtual void SetOutput(vtkDataObject* output);
00055 
00058   virtual unsigned long GetMTime();
00059 
00061 
00064   vtkSetVector6Macro(WholeExtent, int);
00065   vtkGetVector6Macro(WholeExtent, int);
00067 
00069 
00072   static void FillOutputDataInformation(vtkDataObject* output,
00073                                         vtkInformation* outInfo);
00075 
00076 protected:
00077   vtkTrivialProducer();
00078   ~vtkTrivialProducer();
00079 
00080   virtual int FillInputPortInformation(int, vtkInformation*);
00081   virtual int FillOutputPortInformation(int, vtkInformation*);
00082   virtual vtkExecutive* CreateDefaultExecutive();
00083 
00084   // The real data object.
00085   vtkDataObject* Output;
00086 
00087   int WholeExtent[6];
00088 
00089   virtual void ReportReferences(vtkGarbageCollector*);
00090 private:
00091   vtkTrivialProducer(const vtkTrivialProducer&);  // Not implemented.
00092   void operator=(const vtkTrivialProducer&);  // Not implemented.
00093 };
00094 
00095 #endif