• Main Page
  • Related Pages
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

dox/Parallel/vtkPBGLCollectGraph.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkPBGLCollectGraph.h,v $
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 =========================================================================*/
00015 /*-------------------------------------------------------------------------
00016   Copyright 2008 Sandia Corporation.
00017   Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
00018   the U.S. Government retains certain rights in this software.
00019 -------------------------------------------------------------------------*/
00047 #ifndef __vtkPBGLCollectGraph_h
00048 #define __vtkPBGLCollectGraph_h
00049 
00050 #include "vtkStdString.h" // For string type
00051 
00052 #include <vtksys/stl/utility> // for pair
00053 #include <vtksys/stl/numeric> // for accumulate, partial_sum
00054 #include <vtksys/stl/functional> // for plus
00055 
00056 #include "vtkGraphAlgorithm.h"
00057 
00058 class vtkSelection;
00059 class vtkDistributedGraphHelper;
00060 
00061 class VTK_PARALLEL_EXPORT vtkPBGLCollectGraph : public vtkGraphAlgorithm
00062 {
00063 public:
00064   static vtkPBGLCollectGraph *New();
00065   vtkTypeRevisionMacro(vtkPBGLCollectGraph, vtkGraphAlgorithm);
00066   void PrintSelf(ostream& os, vtkIndent indent);
00067 
00069 
00073   vtkGetMacro(TargetProcessor, int);
00074   vtkSetMacro(TargetProcessor, int);
00076 
00078 
00082   vtkGetMacro(ReplicateGraph, bool);
00083   vtkSetMacro(ReplicateGraph, bool);
00084   vtkBooleanMacro(ReplicateGraph, bool);
00086 
00088 
00090   vtkGetMacro(CopyVertexData, bool);
00091   vtkSetMacro(CopyVertexData, bool);
00092   vtkBooleanMacro(CopyVertexData, bool);
00094 
00096 
00098   vtkGetMacro(CopyEdgeData, bool);
00099   vtkSetMacro(CopyEdgeData, bool);
00100   vtkBooleanMacro(CopyEdgeData, bool);
00102 
00103 protected:
00104   vtkPBGLCollectGraph();
00105   ~vtkPBGLCollectGraph();
00106 
00107   virtual int RequestData(
00108     vtkInformation *,
00109     vtkInformationVector **,
00110     vtkInformationVector *);
00111 
00112   virtual int FillInputPortInformation(
00113     int port, vtkInformation* info);
00114 
00115   virtual int FillOutputPortInformation(
00116     int port, vtkInformation* info);
00117 
00119 
00122   void CopyStructureOfDataSetAttributes(vtkDataSetAttributes *inAttrs,
00123                                         vtkDataSetAttributes *outAttrs,
00124                                         vtkIdType numberOfTuples);
00126 
00127 private:
00128   int TargetProcessor;
00129   bool ReplicateGraph;
00130   bool CopyVertexData;
00131   bool CopyEdgeData;
00132 
00133   vtkPBGLCollectGraph(const vtkPBGLCollectGraph&);  // Not implemented.
00134   void operator=(const vtkPBGLCollectGraph&);  // Not implemented.
00135 
00136 };
00137 
00138 #endif

Generated by  doxygen 1.7.1