VTK  9.3.20240422
vtkMPI4PyCommunicator.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
14#ifndef vtkMPI4PyCommunicator_h
15#define vtkMPI4PyCommunicator_h
16// This class should only be wrapped for Python. The hierarchy "wrapping" also
17// needs to see the class for use in the Python wrappers.
18#if !defined(__VTK_WRAP__) || defined(__VTK_WRAP_HIERARCHY__) || defined(__VTK_WRAP_PYTHON__)
19
20#include "vtkPython.h" // For PyObject*; must be first
21
22#include "vtkObject.h"
23#include "vtkParallelMPI4PyModule.h" // For export macro
24
25VTK_ABI_NAMESPACE_BEGIN
27
28class VTKPARALLELMPI4PY_EXPORT vtkMPI4PyCommunicator : public vtkObject
29{
30public:
32 void PrintSelf(ostream& os, vtkIndent indent) override;
33
36
41
46
47private:
49 void operator=(const vtkMPI4PyCommunicator&) = delete;
50};
51
52VTK_ABI_NAMESPACE_END
53#endif
54#endif
a simple class to control print indentation
Definition vtkIndent.h:108
Class for bridging MPI4Py with vtkMPICommunicator.
static PyObject * ConvertToPython(vtkMPICommunicator *comm)
Convert a VTK communicator into an mpi4py communicator.
static vtkMPICommunicator * ConvertToVTK(PyObject *comm)
Convert an mpi4py communicator into a VTK communicator.
static vtkMPI4PyCommunicator * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Class for creating user defined MPI communicators.
abstract base class for most VTK objects
Definition vtkObject.h:162
struct _object PyObject