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
|
/*=========================================================================
Program: Visualization Toolkit
Module: $RCSfile: vtkPExtractArraysOverTime.h,v $
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.
=========================================================================*/
// .NAME vtkPExtractArraysOverTime - extract point or cell data over time (parallel)
// .SECTION Description
// vtkPExtractArraysOverTime is a parallelized version of
// vtkExtractArraysOverTime. After the data is extracted, it is gathered to
// the first node. During this reduction process, only data points that are
// valid are copied: if the point/cell extracted is not available on a
// particular processor, it is marked as invalid during extraction by the
// superclass.
// .SECTION See Also
// vtkExtractArraysOverTime
#ifndef __vtkPExtractArraysOverTime_h
#define __vtkPExtractArraysOverTime_h
#include "vtkExtractArraysOverTime.h"
class vtkMultiProcessController;
class VTK_PARALLEL_EXPORT vtkPExtractArraysOverTime : public vtkExtractArraysOverTime
{
public:
static vtkPExtractArraysOverTime *New();
vtkTypeRevisionMacro(vtkPExtractArraysOverTime,vtkExtractArraysOverTime);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// Set and get the controller.
virtual void SetController(vtkMultiProcessController*);
vtkGetObjectMacro(Controller, vtkMultiProcessController);
//BTX
enum Tags
{
EXCHANGE_DATA = 1972
};
//ETX
protected:
vtkPExtractArraysOverTime();
~vtkPExtractArraysOverTime();
virtual void PostExecute(vtkInformation* request,
vtkInformationVector** inputVector,
vtkInformationVector* outputVector);
void AddRemoteData(vtkRectilinearGrid* routput,
vtkRectilinearGrid* output);
vtkMultiProcessController* Controller;
private:
vtkPExtractArraysOverTime(const vtkPExtractArraysOverTime&); // Not implemented.
void operator=(const vtkPExtractArraysOverTime&); // Not implemented.
};
#endif
|