VTK
dox/Rendering/Core/vtkRendererSource.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkRendererSource.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 =========================================================================*/
00036 #ifndef __vtkRendererSource_h
00037 #define __vtkRendererSource_h
00038 
00039 #include "vtkRenderingCoreModule.h" // For export macro
00040 #include "vtkAlgorithm.h"
00041 #include "vtkImageData.h" // makes things a bit easier
00042 
00043 class vtkRenderer;
00044 
00045 class VTKRENDERINGCORE_EXPORT vtkRendererSource : public vtkAlgorithm
00046 {
00047 public:
00048   static vtkRendererSource *New();
00049   vtkTypeMacro(vtkRendererSource, vtkAlgorithm);
00050   void PrintSelf(ostream& os, vtkIndent indent);
00051 
00053   unsigned long GetMTime();
00054 
00056   void SetInput(vtkRenderer*);
00057 
00059 
00061   vtkGetObjectMacro(Input, vtkRenderer);
00063 
00065 
00067   vtkSetMacro(WholeWindow, int);
00068   vtkGetMacro(WholeWindow, int);
00069   vtkBooleanMacro(WholeWindow, int);
00071 
00073 
00074   vtkSetMacro(RenderFlag, int);
00075   vtkGetMacro(RenderFlag, int);
00076   vtkBooleanMacro(RenderFlag, int);
00078 
00080 
00083   vtkSetMacro(DepthValues, int);
00084   vtkGetMacro(DepthValues, int);
00085   vtkBooleanMacro(DepthValues, int);
00087 
00089 
00093   vtkSetMacro(DepthValuesInScalars, int);
00094   vtkGetMacro(DepthValuesInScalars, int);
00095   vtkBooleanMacro(DepthValuesInScalars, int);
00097 
00099   vtkImageData* GetOutput();
00100 
00102 
00103   virtual int ProcessRequest(vtkInformation*,
00104                              vtkInformationVector**,
00105                              vtkInformationVector*);
00107 
00108 protected:
00109   vtkRendererSource();
00110   ~vtkRendererSource();
00111 
00112   void RequestData(vtkInformation* request,
00113                    vtkInformationVector** inputVector,
00114                    vtkInformationVector* outputVector);
00115   virtual void RequestInformation (vtkInformation*,
00116                                   vtkInformationVector**,
00117                                   vtkInformationVector*);
00118 
00119   vtkRenderer *Input;
00120   int WholeWindow;
00121   int RenderFlag;
00122   int DepthValues;
00123   int DepthValuesInScalars;
00124 
00125   // see algorithm for more info
00126   virtual int FillOutputPortInformation(int port, vtkInformation* info);
00127 
00128 private:
00129   vtkRendererSource(const vtkRendererSource&);  // Not implemented.
00130   void operator=(const vtkRendererSource&);  // Not implemented.
00131 };
00132 
00133 #endif