VTK
vtkBoxMuellerRandomSequence.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkBoxMuellerRandomSequence.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 =========================================================================*/
26 #ifndef vtkBoxMuellerRandomSequence_h
27 #define vtkBoxMuellerRandomSequence_h
28 
29 #include "vtkCommonCoreModule.h" // For export macro
31 
32 class VTKCOMMONCORE_EXPORT vtkBoxMuellerRandomSequence: public vtkGaussianRandomSequence
33 {
34 public:
36 
41  void PrintSelf(ostream& os, vtkIndent indent) override;
43 
48  void Initialize(vtkTypeUInt32 vtkNotUsed(seed)) override
49  {}
50 
54  double GetValue() override;
55 
59  void Next() override;
60 
64  vtkRandomSequence *GetUniformSequence();
65 
70  void SetUniformSequence(vtkRandomSequence *uniformSequence);
71 
72 protected:
74  ~vtkBoxMuellerRandomSequence() override;
75 
77  double Value;
78 private:
80  void operator=(const vtkBoxMuellerRandomSequence&) = delete;
81 };
82 
83 #endif // #ifndef vtkBoxMuellerRandomSequence_h
Generate a sequence of random numbers.
virtual void Next()=0
Move to the next number in the random sequence.
virtual double GetValue()=0
Return the current value.
a simple class to control print indentation
Definition: vtkIndent.h:33
Gaussian sequence of pseudo random numbers.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Gaussian sequence of pseudo random numbers implemented with the Box-Mueller transform.
void Initialize(vtkTypeUInt32 vtkNotUsed(seed)) override
Satisfy general API of vtkRandomSequence superclass.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for type information and printing.