25 #ifndef vtkDIYUtilities_h
26 #define vtkDIYUtilities_h
30 #include "vtkParallelDIYModule.h"
39 #include VTK_DIY2(diy/master.hpp)
40 #include VTK_DIY2(diy/mpi.hpp)
41 #include VTK_DIY2(diy/serialization.hpp)
42 #include VTK_DIY2(diy/types.hpp)
64 static void InitializeEnvironmentForDIY();
77 static void Save(diy::BinaryBuffer& bb,
vtkDataSet*);
78 static void Load(diy::BinaryBuffer& bb,
vtkDataSet*&);
102 static void Load(diy::BinaryBuffer& bb,
vtkDataArray*&);
108 static void AllReduce(diy::mpi::communicator& comm,
vtkBoundingBox& bbox);
130 static void Broadcast(
131 diy::mpi::communicator& comm, std::vector<vtkBoundingBox>& boxes,
int source);
139 template <
class DataSetT = vtkDataSet>
167 template <class DummyT>
168 static
void Link(
diy::Master& master, const
diy::Assigner& assigner,
169 const std::
vector<std::map<
int, DummyT>>& linksMap);
172 diy::Master& master, const
diy::Assigner& assigner, const std::
vector<std::set<
int>>& linksMap);
176 ~vtkDIYUtilities() override;
179 vtkDIYUtilities(const vtkDIYUtilities&) = delete;
180 void operator=(const vtkDIYUtilities&) = delete;
220 #include "vtkDIYUtilities.txx"
static void load(BinaryBuffer &bb, vtkFieldData *&fd)
static void save(BinaryBuffer &bb, vtkFieldData *const &fd)
#define VTK_DEPRECATED_IN_9_1_0(reason)
abstract base class for most VTK objects
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
abstract class to specify dataset behavior
static void load(BinaryBuffer &bb, vtkDataArray *&da)
a vtkAbstractArray subclass for strings
Hold a reference to a vtkObjectBase instance.
static void load(BinaryBuffer &bb, vtkDataSet *&p)
static void save(BinaryBuffer &bb, vtkDataSet *const &p)
static void Load(diy::BinaryBuffer &bb, vtkDataSet *&)
Load/Save a vtkDataSet in a diy::BinaryBuffer.
static void save(BinaryBuffer &bb, vtkDataArray *const &da)
a simple class to control print indentation
static void Save(diy::BinaryBuffer &bb, vtkDataSet *)
Load/Save a vtkDataSet in a diy::BinaryBuffer.
VTKACCELERATORSVTKMCORE_EXPORT vtkDataArray * Convert(const vtkm::cont::Field &input)
abstract superclass for arrays of numeric data
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
collection of helper functions for working with DIY
static vtkDIYUtilitiesCleanup vtkDIYUtilitiesCleanupInstance
general representation of visualization data
represent and manipulate 3D points
Fast, simple class for representing and operating on 3D bounds.
represent and manipulate fields of data
Multiprocessing communication superclass.