00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00025 #ifndef __vtkClientServerCompositePass_h
00026 #define __vtkClientServerCompositePass_h
00027
00028 #include "vtkRenderPass.h"
00029
00030 class vtkMultiProcessController;
00031
00032 class VTK_PARALLEL_EXPORT vtkClientServerCompositePass : public vtkRenderPass
00033 {
00034 public:
00035 static vtkClientServerCompositePass* New();
00036 vtkTypeMacro(vtkClientServerCompositePass, vtkRenderPass);
00037 void PrintSelf(ostream& os, vtkIndent indent);
00038
00039
00041
00043 virtual void Render(const vtkRenderState *s);
00044
00046
00049 void ReleaseGraphicsResources(vtkWindow *w);
00050
00052
00056 vtkGetObjectMacro(Controller,vtkMultiProcessController);
00057 virtual void SetController(vtkMultiProcessController *controller);
00059
00061
00064 void SetRenderPass(vtkRenderPass*);
00065 vtkGetObjectMacro(RenderPass, vtkRenderPass);
00067
00069
00075 void SetPostProcessingRenderPass(vtkRenderPass*);
00076 vtkGetObjectMacro(PostProcessingRenderPass, vtkRenderPass);
00078
00080
00083 vtkSetMacro(ProcessIsServer,bool);
00084 vtkBooleanMacro(ProcessIsServer, bool);
00085 vtkGetMacro(ProcessIsServer, bool);
00087
00089
00093 vtkSetMacro(ServerSideRendering, bool);
00094 vtkBooleanMacro(ServerSideRendering, bool);
00095 vtkGetMacro(ServerSideRendering, bool);
00097
00098
00099 protected:
00100 vtkClientServerCompositePass();
00101 ~vtkClientServerCompositePass();
00102
00103 vtkRenderPass* RenderPass;
00104 vtkRenderPass* PostProcessingRenderPass;
00105 vtkMultiProcessController* Controller;
00106
00107 bool ProcessIsServer;
00108 bool ServerSideRendering;
00109 private:
00110 vtkClientServerCompositePass(const vtkClientServerCompositePass&);
00111 void operator=(const vtkClientServerCompositePass&);
00112
00113 };
00114
00115 #endif
00116
00117