ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
itkImageRandomConstIteratorWithIndex.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright NumFOCUS
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * https://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18#ifndef itkImageRandomConstIteratorWithIndex_h
19#define itkImageRandomConstIteratorWithIndex_h
20
23
24namespace itk
25{
115template <typename TImage>
116class ITK_TEMPLATE_EXPORT ImageRandomConstIteratorWithIndex : public ImageConstIteratorWithIndex<TImage>
117{
118public:
122
124 using typename Superclass::IndexType;
125 using typename Superclass::SizeType;
126 using typename Superclass::OffsetType;
127 using typename Superclass::RegionType;
128 using typename Superclass::ImageType;
129 using typename Superclass::PixelContainer;
131 using typename Superclass::InternalPixelType;
132 using typename Superclass::PixelType;
133 using typename Superclass::AccessorType;
134 using typename Superclass::IndexValueType;
135 using typename Superclass::OffsetValueType;
136 using typename Superclass::SizeValueType;
137
142
146
157
159 void
161 {
162 this->RandomJump();
164 }
165
166
168 void
174
175
177 bool
178 IsAtBegin() const
179 {
180 return (m_NumberOfSamplesDone == 0L);
181 }
182
184 bool
185 IsAtEnd() const
186 {
188 }
189
192 Self &
194 {
195 this->RandomJump();
197 return *this;
198 }
199
200
203 Self &
205 {
206 this->RandomJump();
208 return *this;
209 }
210
211
213 void
218
221 {
223 }
224
226 void
228
229 void
231
232private:
234 void
236
242};
243} // end namespace itk
244
245#ifndef ITK_MANUAL_INSTANTIATION
246# include "itkImageRandomConstIteratorWithIndex.hxx"
247#endif
248
249#endif
typename OffsetType::OffsetValueType OffsetValueType
Self & operator=(const Self &it)
typename SizeType::SizeValueType SizeValueType
typename IndexType::IndexValueType IndexValueType
typename PixelContainer::Pointer PixelContainerPointer
typename TImage::InternalPixelType InternalPixelType
typename TImage::PixelContainer PixelContainer
~ImageRandomConstIteratorWithIndex() override=default
typename Statistics::MersenneTwisterRandomVariateGenerator::Pointer GeneratorPointer
ImageRandomConstIteratorWithIndex(const ImageType *ptr, const RegionType &region)
ImageRandomConstIteratorWithIndex(const ImageConstIteratorWithIndex< TImage > &it)
static Pointer New()
Method for creation through the object factory.
AddImageFilter Self
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
unsigned long SizeValueType
Definition itkIntTypes.h:86