VTK  9.1.0
vtkCompositer.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkCompositer.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm 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=========================================================================*/
29#ifndef vtkCompositer_h
30#define vtkCompositer_h
31
32#include "vtkObject.h"
33#include "vtkRenderingParallelModule.h" // For export macro
34
36class vtkCompositer;
37class vtkDataArray;
38class vtkFloatArray;
40
41class VTKRENDERINGPARALLEL_EXPORT vtkCompositer : public vtkObject
42{
43public:
44 static vtkCompositer* New();
45 vtkTypeMacro(vtkCompositer, vtkObject);
46 void PrintSelf(ostream& os, vtkIndent indent) override;
47
52 virtual void CompositeBuffer(
53 vtkDataArray* pBuf, vtkFloatArray* zBuf, vtkDataArray* pTmp, vtkFloatArray* zTmp);
54
56
60 vtkGetObjectMacro(Controller, vtkMultiProcessController);
62
64
67 vtkSetMacro(NumberOfProcesses, int);
68 vtkGetMacro(NumberOfProcesses, int);
70
72
75 static void DeleteArray(vtkDataArray* da);
76 static void ResizeFloatArray(vtkFloatArray* fa, int numComp, vtkIdType size);
77 static void ResizeUnsignedCharArray(vtkUnsignedCharArray* uca, int numComp, vtkIdType size);
79
80protected:
82 ~vtkCompositer() override;
83
86
87private:
88 vtkCompositer(const vtkCompositer&) = delete;
89 void operator=(const vtkCompositer&) = delete;
90};
91
92#endif
Super class for composite algorthms.
Definition: vtkCompositer.h:42
static void DeleteArray(vtkDataArray *da)
Methods that allocate and delete memory with special MPIPro calls.
vtkMultiProcessController * Controller
Definition: vtkCompositer.h:84
static void ResizeFloatArray(vtkFloatArray *fa, int numComp, vtkIdType size)
Methods that allocate and delete memory with special MPIPro calls.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void CompositeBuffer(vtkDataArray *pBuf, vtkFloatArray *zBuf, vtkDataArray *pTmp, vtkFloatArray *zTmp)
This method gets called on every process.
virtual void SetController(vtkMultiProcessController *)
Access to the controller.
static void ResizeUnsignedCharArray(vtkUnsignedCharArray *uca, int numComp, vtkIdType size)
Methods that allocate and delete memory with special MPIPro calls.
static vtkCompositer * New()
~vtkCompositer() override
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:159
dynamic, self-adjusting array of float
a simple class to control print indentation
Definition: vtkIndent.h:113
Multiprocessing communication superclass.
abstract base class for most VTK objects
Definition: vtkObject.h:82
dynamic, self-adjusting array of unsigned char
int vtkIdType
Definition: vtkType.h:332