VTK
dox/Infovis/vtkPContingencyStatistics.h
Go to the documentation of this file.
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 "vtkContingencyStatistics.h"
00046 
00047 //BTX
00048 #include <vector> // STL Header
00049 //ETX
00050 
00051 class vtkMultiBlockDataSet;
00052 class vtkMultiProcessController;
00053 
00054 class VTK_INFOVIS_EXPORT vtkPContingencyStatistics : public vtkContingencyStatistics
00055 {
00056 public:
00057   static vtkPContingencyStatistics* New();
00058   vtkTypeMacro(vtkPContingencyStatistics, vtkContingencyStatistics);
00059   void PrintSelf(ostream& os, vtkIndent indent);
00060 
00062 
00064   virtual void SetController(vtkMultiProcessController*);
00065   vtkGetObjectMacro(Controller, vtkMultiProcessController);
00067 
00069 
00070   virtual void Learn( vtkTable*,
00071                       vtkTable*,
00072                       vtkMultiBlockDataSet* );
00074 
00075 protected:
00076   vtkPContingencyStatistics();
00077   ~vtkPContingencyStatistics();
00078 
00079 //BTX
00081 
00082   bool Reduce( vtkIdType&,
00083                char*,
00084                vtkStdString&,
00085                vtkIdType&,
00086                vtkIdType*,
00087                std::vector<vtkIdType>& );
00089 
00091 
00092   bool Broadcast( vtkIdType,
00093                   vtkStdString&,
00094                   std::vector<vtkStdString>&,
00095                   vtkIdType,
00096                   std::vector<vtkIdType>&,
00097                   vtkIdType );
00098 //ETX
00100 
00101   vtkMultiProcessController* Controller;
00102 private:
00103   vtkPContingencyStatistics(const vtkPContingencyStatistics&); // Not implemented.
00104   void operator=(const vtkPContingencyStatistics&); // Not implemented.
00105 };
00106 
00107 #endif
00108