vtkIceTSynchronizedRenderers.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ParaView
4  Module: vtkIceTSynchronizedRenderers.h
5 
6  Copyright (c) Kitware, Inc.
7  All rights reserved.
8  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
30 #ifndef vtkIceTSynchronizedRenderers_h
31 #define vtkIceTSynchronizedRenderers_h
32 
33 #include "vtkIceTCompositePass.h" // needed for inline methods.
34 #include "vtkRemotingViewsModule.h" //needed for exports
36 
37 class vtkCameraPass;
40 
42 {
43 public:
46  void PrintSelf(ostream& os, vtkIndent indent) override;
47 
54  void SetRenderer(vtkRenderer*) override;
55 
60  void SetTileDimensions(int x, int y) { this->IceTCompositePass->SetTileDimensions(x, y); }
61 
66  void SetTileMullions(int x, int y) { this->IceTCompositePass->SetTileMullions(x, y); }
67 
74  {
75  this->IceTCompositePass->SetDataReplicatedOnAllProcesses(val);
76  }
77 
83  {
84  this->IceTCompositePass->SetOrderedCompositingHelper(helper);
85  }
86 
93  void SetUseOrderedCompositing(bool uoc)
94  {
95  this->IceTCompositePass->SetUseOrderedCompositing(uoc);
96  }
97 
101  void SetImageReductionFactor(int val) override;
102  int GetImageReductionFactor() override
103  {
104  return this->IceTCompositePass->GetImageReductionFactor();
105  }
106 
108 
113  {
114  this->Superclass::SetParallelController(cont);
115  this->IceTCompositePass->SetController(cont);
116  }
118 
120 
123  void SetImageProcessingPass(vtkImageProcessingPass*);
124  vtkGetObjectMacro(ImageProcessingPass, vtkImageProcessingPass);
126 
130  void SetUseDepthBuffer(bool);
131 
137  void SetRenderEmptyImages(bool);
138 
140 
147  void SetRenderPass(vtkRenderPass*);
148  vtkGetObjectMacro(RenderPass, vtkRenderPass);
150 
152 
156  vtkGetObjectMacro(IceTCompositePass, vtkIceTCompositePass);
158 
159 protected:
161  ~vtkIceTSynchronizedRenderers() override;
162 
166  vtkRawImage& CaptureRenderedImage() override;
167 
168  // We use vtkIceTCompositePass internally.
171 
172  // User specified custom passes
175 
176 private:
178  void operator=(const vtkIceTSynchronizedRenderers&) = delete;
179 };
180 
181 #endif
vtkSynchronizedRenderers subclass that uses IceT for parallel rendering and compositing.
virtual void SetImageReductionFactor(int)
#define VTKREMOTINGVIEWS_EXPORT
void SetUseOrderedCompositing(bool uoc)
Set this to true, if compositing must be done in a specific order.
void PrintSelf(ostream &os, vtkIndent indent)
void SetTileDimensions(int x, int y)
Set the tile dimensions.
void SetDataReplicatedOnAllProcesses(bool val)
Set to true if data is replicated on all processes.
void SetTileMullions(int x, int y)
Set the tile mullions.
vtkImageProcessingPass * ImageProcessingPass
void SetParallelController(vtkMultiProcessController *cont) override
Set the parallel message communicator.
void SetOrderedCompositingHelper(vtkOrderedCompositingHelper *helper)
partition ordering that gives processes ordering.
static vtkSynchronizedRenderers * New()
virtual void SetRenderer(vtkRenderer *)
virtual vtkRawImage & CaptureRenderedImage()
void operator=(const vtkObjectBase &)
IceT enabled render pass for distributed rendering.
helper to assist in determine process order when rendering