18 #ifndef __itkUniformRandomSpatialNeighborSubsampler_h
19 #define __itkUniformRandomSpatialNeighborSubsampler_h
25 namespace Statistics {
45 template <
class TSample,
class TRegion >
63 typedef typename Superclass::SampleType
SampleType;
82 typedef typename Superclass::SizeType
SizeType;
91 Superclass::SetSeed(seed);
92 this->m_RandomNumberGenerator->SetSeed(this->m_Seed);
95 virtual void SetUseClockForSeed(
const bool& useClock)
97 if (useClock != this->m_UseClockForSeed)
99 this->m_UseClockForSeed = useClock;
100 if (this->m_UseClockForSeed)
102 this->m_RandomNumberGenerator->SetSeed();
108 itkBooleanMacro(UseClockForSeed);
109 itkGetConstMacro(UseClockForSeed,
bool);
113 itkDebugMacro(
"setting NumberOfResultsRequested to " << numberRequested);
114 if (this->m_RequestMaximumNumberOfResults ||
115 this->m_NumberOfResultsRequested != numberRequested)
117 this->m_NumberOfResultsRequested = numberRequested;
118 this->m_RequestMaximumNumberOfResults =
false;
122 itkGetConstMacro(NumberOfResultsRequested, SearchSizeType);
129 virtual void Search(
const InstanceIdentifier& query,
130 SubsamplePointer& results);
143 virtual void PrintSelf(std::ostream& os,
Indent indent)
const;
149 virtual RandomIntType GetIntegerVariate(RandomIntType lowerBound,
150 RandomIntType upperBound,
151 RandomIntType itkNotUsed(mean));
159 void operator=(
const Self&);
166 #ifndef ITK_MANUAL_INSTANTIATION
167 #include "itkUniformRandomSpatialNeighborSubsampler.hxx"