VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkPContingencyStatistics.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 =========================================================================*/ 00015 /*------------------------------------------------------------------------- 00016 Copyright 2011 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 -------------------------------------------------------------------------*/ 00042 #ifndef vtkPContingencyStatistics_h 00043 #define vtkPContingencyStatistics_h 00044 00045 #include "vtkFiltersParallelStatisticsModule.h" // For export macro 00046 #include "vtkContingencyStatistics.h" 00047 00048 //BTX 00049 #include <vector> // STL Header 00050 //ETX 00051 00052 class vtkMultiBlockDataSet; 00053 class vtkMultiProcessController; 00054 00055 class VTKFILTERSPARALLELSTATISTICS_EXPORT vtkPContingencyStatistics : public vtkContingencyStatistics 00056 { 00057 public: 00058 static vtkPContingencyStatistics* New(); 00059 vtkTypeMacro(vtkPContingencyStatistics, vtkContingencyStatistics); 00060 void PrintSelf(ostream& os, vtkIndent indent); 00061 00063 00065 virtual void SetController(vtkMultiProcessController*); 00066 vtkGetObjectMacro(Controller, vtkMultiProcessController); 00068 00070 00071 virtual void Learn( vtkTable*, 00072 vtkTable*, 00073 vtkMultiBlockDataSet* ); 00075 00076 protected: 00077 vtkPContingencyStatistics(); 00078 ~vtkPContingencyStatistics(); 00079 00080 //BTX 00082 00083 bool Reduce( vtkIdType&, 00084 char*, 00085 vtkStdString&, 00086 vtkIdType&, 00087 vtkIdType*, 00088 std::vector<vtkIdType>& ); 00090 00092 00093 bool Broadcast( vtkIdType, 00094 vtkStdString&, 00095 std::vector<vtkStdString>&, 00096 vtkIdType, 00097 std::vector<vtkIdType>&, 00098 vtkIdType ); 00099 //ETX 00101 00102 vtkMultiProcessController* Controller; 00103 private: 00104 vtkPContingencyStatistics(const vtkPContingencyStatistics&); // Not implemented. 00105 void operator=(const vtkPContingencyStatistics&); // Not implemented. 00106 }; 00107 00108 #endif 00109