/usr/include/paraview/vtkMultiProcessControllerHelper.h is in paraview-dev 5.0.1+dfsg1-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 | /*=========================================================================
Program: ParaView
Module: vtkMultiProcessControllerHelper.h
Copyright (c) Kitware, Inc.
All rights reserved.
See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
// .NAME vtkMultiProcessControllerHelper - collection of assorted helper
// routines dealing with communication.
// .SECTION Description
// vtkMultiProcessControllerHelper is collection of assorted helper
// routines dealing with communication.
#ifndef vtkMultiProcessControllerHelper_h
#define vtkMultiProcessControllerHelper_h
#include "vtkObject.h"
#include "vtkPVVTKExtensionsCoreModule.h" // needed for export macro
#include "vtkSmartPointer.h" // needed for vtkSmartPointer.
#include <vector> // needed for std::vector
class vtkDataObject;
class vtkMultiProcessController;
class vtkMultiProcessStream;
class VTKPVVTKEXTENSIONSCORE_EXPORT vtkMultiProcessControllerHelper : public vtkObject
{
public:
static vtkMultiProcessControllerHelper* New();
vtkTypeMacro(vtkMultiProcessControllerHelper, vtkObject);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// Reduce the stream to all processes calling the (*operation) for reduction.
// The operation is assumed to be commutative.
static int ReduceToAll(
vtkMultiProcessController* controller,
vtkMultiProcessStream& data,
void (*operation)(vtkMultiProcessStream& A, vtkMultiProcessStream& B),
int tag);
// Description:
// Utility method to merge pieces received from several processes. It does not
// handle all data types, and hence not meant for non-paraview specific use.
// Returns a new instance of data object containing the merged result on
// success, else returns NULL. The caller is expected to release the memory
// from the returned data-object.
static vtkDataObject* MergePieces(
vtkDataObject** pieces, unsigned int num_pieces);
// Description:
// Overload where the merged pieces are combined into result.
static bool MergePieces(
std::vector<vtkSmartPointer<vtkDataObject> >& pieces,
vtkDataObject* result);
//BTX
protected:
vtkMultiProcessControllerHelper();
~vtkMultiProcessControllerHelper();
private:
vtkMultiProcessControllerHelper(const vtkMultiProcessControllerHelper&); // Not implemented
void operator=(const vtkMultiProcessControllerHelper&); // Not implemented
//ETX
};
#endif
// VTK-HeaderTest-Exclude: vtkMultiProcessControllerHelper.h
|