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 =========================================================================*/
29 #ifndef vtkBoxMuellerRandomSequence_h
30 #define vtkBoxMuellerRandomSequence_h
31 
32 #include "vtkCommonCoreModule.h" // For export macro
34 
35 class VTKCOMMONCORE_EXPORT vtkBoxMuellerRandomSequence: public vtkGaussianRandomSequence
36 {
37 public:
39 
44  void PrintSelf(ostream& os, vtkIndent indent) override;
46 
51  void Initialize(vtkTypeUInt32 vtkNotUsed(seed)) override
52  {}
53 
57  double GetValue() override;
58 
62  void Next() override;
63 
68 
73  void SetUniformSequence(vtkRandomSequence *uniformSequence);
74 
75 protected:
78 
80  double Value;
81 private:
83  void operator=(const vtkBoxMuellerRandomSequence&) = delete;
84 };
85 
86 #endif // #ifndef vtkBoxMuellerRandomSequence_h
vtkBoxMuellerRandomSequence::Initialize
void Initialize(vtkTypeUInt32 vtkNotUsed(seed)) override
Satisfy general API of vtkRandomSequence superclass.
Definition: vtkBoxMuellerRandomSequence.h:51
vtkBoxMuellerRandomSequence::UniformSequence
vtkRandomSequence * UniformSequence
Definition: vtkBoxMuellerRandomSequence.h:79
vtkRandomSequence
Generate a sequence of random numbers.
Definition: vtkRandomSequence.h:38
vtkBoxMuellerRandomSequence::GetUniformSequence
vtkRandomSequence * GetUniformSequence()
Return the uniformly distributed sequence of random numbers.
vtkBoxMuellerRandomSequence::GetValue
double GetValue() override
Current value.
vtkBoxMuellerRandomSequence::Next
void Next() override
Move to the next number in the random sequence.
vtkBoxMuellerRandomSequence::New
static vtkBoxMuellerRandomSequence * New()
Standard methods for instantiation, type information, and printing.
vtkBoxMuellerRandomSequence::Value
double Value
Definition: vtkBoxMuellerRandomSequence.h:80
vtkBoxMuellerRandomSequence::SetUniformSequence
void SetUniformSequence(vtkRandomSequence *uniformSequence)
Set the uniformly distributed sequence of random numbers.
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:40
vtkGaussianRandomSequence
Gaussian sequence of pseudo random numbers.
Definition: vtkGaussianRandomSequence.h:32
vtkBoxMuellerRandomSequence
Gaussian sequence of pseudo random numbers implemented with the Box-Mueller transform.
Definition: vtkBoxMuellerRandomSequence.h:36
vtkBoxMuellerRandomSequence::~vtkBoxMuellerRandomSequence
~vtkBoxMuellerRandomSequence() override
vtkGaussianRandomSequence.h
vtkBoxMuellerRandomSequence::vtkBoxMuellerRandomSequence
vtkBoxMuellerRandomSequence()
vtkBoxMuellerRandomSequence::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.