VTK
dox/Infovis/vtkBoostRandomSparseArraySource.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkBoostRandomSparseArraySource.h
00005   
00006 -------------------------------------------------------------------------
00007   Copyright 2008 Sandia Corporation.
00008   Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
00009   the U.S. Government retains certain rights in this software.
00010 -------------------------------------------------------------------------
00011 
00012   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00013   All rights reserved.
00014   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00015 
00016      This software is distributed WITHOUT ANY WARRANTY; without even
00017      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00018      PURPOSE.  See the above copyright notice for more information.
00019 
00020 =========================================================================*/
00021 
00032 #ifndef __vtkBoostRandomSparseArraySource_h
00033 #define __vtkBoostRandomSparseArraySource_h
00034 
00035 #include "vtkArrayDataAlgorithm.h"
00036 #include "vtkArrayExtents.h"
00037 
00038 class VTK_INFOVIS_EXPORT vtkBoostRandomSparseArraySource : public vtkArrayDataAlgorithm
00039 {
00040 public:
00041   static vtkBoostRandomSparseArraySource* New();
00042   vtkTypeMacro(vtkBoostRandomSparseArraySource, vtkArrayDataAlgorithm);
00043   void PrintSelf(ostream& os, vtkIndent indent);
00044 
00045 //BTX
00047   void SetExtents(const vtkArrayExtents&);
00048 
00050 
00051   vtkArrayExtents GetExtents();
00052 //ETX
00054 
00056 
00058   vtkGetMacro(ElementProbabilitySeed, vtkTypeUInt32);
00059   vtkSetMacro(ElementProbabilitySeed, vtkTypeUInt32);
00061 
00063 
00065   vtkGetMacro(ElementProbability, double);
00066   vtkSetMacro(ElementProbability, double);
00068 
00070 
00071   vtkGetMacro(ElementValueSeed, vtkTypeUInt32);
00072   vtkSetMacro(ElementValueSeed, vtkTypeUInt32);
00074 
00076 
00077   vtkGetMacro(MinValue, double);
00078   vtkSetMacro(MinValue, double);
00080 
00082 
00083   vtkGetMacro(MaxValue, double);
00084   vtkSetMacro(MaxValue, double);
00086 
00087 //BTX
00088 protected:
00089   vtkBoostRandomSparseArraySource();
00090   ~vtkBoostRandomSparseArraySource();
00091 
00092   int RequestData(
00093     vtkInformation*, 
00094     vtkInformationVector**, 
00095     vtkInformationVector*);
00096 
00097 private:
00098   vtkBoostRandomSparseArraySource(const vtkBoostRandomSparseArraySource&); // Not implemented
00099   void operator=(const vtkBoostRandomSparseArraySource&);   // Not implemented
00100 
00101   vtkArrayExtents Extents;
00102 
00103   vtkTypeUInt32 ElementProbabilitySeed;
00104   double ElementProbability;
00105 
00106   vtkTypeUInt32 ElementValueSeed;
00107   double MinValue;
00108   double MaxValue;
00109 //ETX
00110 };
00111 
00112 #endif
00113