You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
73 lines
2.3 KiB
C
73 lines
2.3 KiB
C
3 weeks ago
|
/*=========================================================================
|
||
|
|
||
|
Program: Visualization Toolkit
|
||
|
Module: vtkPixelExtentIO.h
|
||
|
|
||
|
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
|
||
|
All rights reserved.
|
||
|
See Copyright.txt or http://www.kitware.com/Copyright.htm 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.
|
||
|
|
||
|
=========================================================================*/
|
||
|
/**
|
||
|
* @class vtkPixelExtentIO
|
||
|
*
|
||
|
* A small collection of I/O routines that can write vtkPixelExtent's
|
||
|
* or collections of them to disk for visualization as unstructured
|
||
|
* grids.
|
||
|
*/
|
||
|
|
||
|
#ifndef vtkPixelExtentIO_h
|
||
|
#define vtkPixelExtentIO_h
|
||
|
|
||
|
#include "vtkIOLegacyModule.h" // for export
|
||
|
#include "vtkPixelExtent.h" // for pixel extent
|
||
|
#include <deque> // for std::deque
|
||
|
|
||
|
class vtkUnstructuredGrid;
|
||
|
|
||
|
class VTKIOLEGACY_EXPORT vtkPixelExtentIO
|
||
|
{
|
||
|
public:
|
||
|
/**
|
||
|
* Writes deque of extents for each MPI rank to disk
|
||
|
* as an unstructured grid. Each extent is converted to
|
||
|
* a QUAD cell. Rank is encoded in a cell data array.
|
||
|
* It's aassumed that the data is duplicated on all
|
||
|
* ranks thus only rank 0 writes the data to disk.
|
||
|
*/
|
||
|
static void Write(
|
||
|
int commRank, const char* fileName, const std::deque<std::deque<vtkPixelExtent> >& exts);
|
||
|
|
||
|
/**
|
||
|
* Writes an extent for each MPI rank to disk as an
|
||
|
* unstructured grid. It's expected that the index into
|
||
|
* the deque identifies the rank. Each extent is converted
|
||
|
* to a QUAD cell. Rank is encoded in a cell data array.
|
||
|
* It's aassumed that the data is duplicated on all
|
||
|
* ranks thus only rank 0 writes the data to disk.
|
||
|
*/
|
||
|
static void Write(int commRank, const char* fileName, const std::deque<vtkPixelExtent>& exts);
|
||
|
|
||
|
//@{
|
||
|
/**
|
||
|
* Write an extent per MPI rank to disk. All ranks
|
||
|
* write. It's assumed that each rank passes a unique
|
||
|
* filename.
|
||
|
*/
|
||
|
static void Write(int commRank, const char* fileName, const vtkPixelExtent& ext);
|
||
|
//@}
|
||
|
};
|
||
|
|
||
|
/**
|
||
|
* Insert the extent into an unstructured grid.
|
||
|
*/
|
||
|
VTKIOLEGACY_EXPORT
|
||
|
vtkUnstructuredGrid& operator<<(vtkUnstructuredGrid& data, const vtkPixelExtent& ext);
|
||
|
|
||
|
#endif
|
||
|
// VTK-HeaderTest-Exclude: vtkPixelExtentIO.h
|