VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkMPI4PyCommunicator.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00025 #ifndef vtkMPI4PyCommunicator_h 00026 #define vtkMPI4PyCommunicator_h 00027 00028 #include "vtkPython.h" // For PyObject*; must be first 00029 00030 #include "vtkParallelMPI4PyModule.h" // For export macro 00031 #include "vtkObject.h" 00032 00033 class vtkMPICommunicator; 00034 00035 class VTKPARALLELMPI4PY_EXPORT vtkMPI4PyCommunicator : public vtkObject 00036 { 00037 public: 00038 00039 vtkTypeMacro(vtkMPI4PyCommunicator, vtkObject); 00040 void PrintSelf(ostream& os, vtkIndent indent); 00041 00042 static vtkMPI4PyCommunicator* New(); 00043 vtkMPI4PyCommunicator(); 00044 00046 static PyObject* ConvertToPython(vtkMPICommunicator* comm); 00047 00049 static vtkMPICommunicator* ConvertToVTK(PyObject* comm); 00050 00051 private: 00052 vtkMPI4PyCommunicator(const vtkMPI4PyCommunicator&); // Not implemented. 00053 void operator=(const vtkMPI4PyCommunicator&); // Not implemented. 00054 }; 00055 00056 #endif