ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
itkPipelineMonitorImageFilter.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 itkPipelineMonitorImageFilter_h
19#define itkPipelineMonitorImageFilter_h
20
22
23namespace itk
24{
25
67template <typename TImageType>
68class ITK_TEMPLATE_EXPORT PipelineMonitorImageFilter : public ImageToImageFilter<TImageType, TImageType>
69{
70public:
71 ITK_DISALLOW_COPY_AND_MOVE(PipelineMonitorImageFilter);
72
77
78 using PointType = typename TImageType::PointType;
79 using DirectionType = typename TImageType::DirectionType;
80 using SpacingType = typename TImageType::SpacingType;
81 using InputImagePointer = typename TImageType::Pointer;
82 using InputImageConstPointer = typename TImageType::ConstPointer;
84
85 using RegionVectorType = std::vector<typename TImageType::RegionType>;
86
88 itkNewMacro(Self);
89
91 itkOverrideGetNameOfClassMacro(PipelineMonitorImageFilter);
92
102 itkSetMacro(ClearPipelineOnGenerateOutputInformation, bool);
103 itkGetMacro(ClearPipelineOnGenerateOutputInformation, bool);
104 itkBooleanMacro(ClearPipelineOnGenerateOutputInformation);
105
106
112 bool
113 VerifyAllInputCanStream(int expectedNumber);
114
115
119 bool
121
125 bool
127
128 bool
130
140 bool
142
147 bool
149
151 bool
153
154 bool
156
157 bool
159
160
161 [[nodiscard]] unsigned int
163 {
164 return m_NumberOfUpdates;
165 }
166 RegionVectorType
171 RegionVectorType
173 {
175 }
176 RegionVectorType
181 RegionVectorType
186
187 itkGetConstMacro(UpdatedOutputOrigin, PointType);
188 itkGetConstMacro(UpdatedOutputDirection, DirectionType);
189 itkGetConstMacro(UpdatedOutputSpacing, SpacingType);
190 itkGetConstMacro(UpdatedOutputLargestPossibleRegion, ImageRegionType);
191
194 void
196
197
201 void
203 void
205 void
207 void
209 void
210 GenerateData() override;
211
212protected:
214
215 // ~PipelineMonitorImageFilter() { } default implementation OK
216
217 void
218 PrintSelf(std::ostream & os, Indent indent) const override;
219
220private:
222
223 unsigned int m_NumberOfUpdates{};
224
226
231
236};
237} // end namespace itk
238
239#ifndef ITK_MANUAL_INSTANTIATION
240# include "itkPipelineMonitorImageFilter.hxx"
241#endif
242
243#endif // itkPipelineMonitorImageFilter_hxx
Base class for all data objects in ITK.
typename InputImageType::RegionType InputImageRegionType
Control indentation during Print() invocation.
Definition itkIndent.h:50
bool VerifyInputFilterExecutedStreaming(int expectedNumber)
bool VerifyAllInputCanStream(int expectedNumber)
std::vector< typename TImageType::RegionType > RegionVectorType
void GenerateOutputInformation() override
void EnlargeOutputRequestedRegion(DataObject *output) override
typename TImageType::PointType PointType
void PrintSelf(std::ostream &os, Indent indent) const override
void GenerateInputRequestedRegion() override
typename TImageType::SpacingType SpacingType
typename TImageType::DirectionType DirectionType
typename TImageType::Pointer InputImagePointer
void PropagateRequestedRegion(DataObject *output) override
typename Superclass::InputImageRegionType ImageRegionType
bool VerifyInputFilterMatchedUpdateOutputInformation()
ImageToImageFilter< TImageType, TImageType > Superclass
typename TImageType::ConstPointer InputImageConstPointer
Implements transparent reference counting.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....