ITK  5.1.0
Insight Toolkit
itkMultiphaseSparseFiniteDifferenceImageFilter.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  * http://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 itkMultiphaseSparseFiniteDifferenceImageFilter_h
19 #define itkMultiphaseSparseFiniteDifferenceImageFilter_h
20 
27 
28 #include <vector>
29 
30 namespace itk
31 {
176 template <typename TInputImage,
177  typename TFeatureImage,
178  typename TOutputImage,
179  typename TFunction,
180  typename TIdCell = unsigned int>
182  : public MultiphaseFiniteDifferenceImageFilter<TInputImage, TFeatureImage, TOutputImage, TFunction, TIdCell>
183 {
184 public:
185  ITK_DISALLOW_COPY_AND_ASSIGN(MultiphaseSparseFiniteDifferenceImageFilter);
187 
190  using Superclass =
194 
196  itkNewMacro(Self);
197 
200 
201  static constexpr unsigned int ImageDimension = Superclass::ImageDimension;
202 
204  using TimeStepType = typename Superclass::TimeStepType;
205 
207  using InputImageType = typename Superclass::InputImageType;
208  using InputImagePointer = typename Superclass::InputImagePointer;
209  using InputRegionType = typename Superclass::InputRegionType;
210  using InputSizeType = typename Superclass::InputSizeType;
211  using InputSizeValueType = typename Superclass::InputSizeValueType;
212  using InputIndexType = typename Superclass::InputIndexType;
213  using InputIndexValueType = typename Superclass::InputIndexValueType;
214  using InputPixelType = typename Superclass::InputPixelType;
215  using InputPointType = typename Superclass::InputPointType;
216  using InputSpacingType = typename Superclass::InputSpacingType;
217  using InputOffsetValueType = typename Superclass::InputOffsetValueType;
218 
219  using FeatureImageType = typename Superclass::FeatureImageType;
220  using FeatureSizeType = typename Superclass::FeatureSizeType;
221  using FeatureImagePointer = typename Superclass::FeatureImagePointer;
222  using FeatureRegionType = typename Superclass::FeatureRegionType;
223  using FeatureSpacingType = typename Superclass::FeatureSpacingType;
224  using FeaturePointType = typename Superclass::FeaturePointType;
225 
226  using OutputImageType = typename Superclass::OutputImageType;
227  using OutputImagePointer = typename Superclass::OutputImagePointer;
228  using OutputRegionType = typename Superclass::OutputRegionType;
229  using OutputSizeType = typename Superclass::OutputSizeType;
230  using OutputIndexType = typename Superclass::OutputIndexType;
231  using OutputIndexValueType = typename Superclass::OutputIndexValueType;
232  using OutputPixelType = typename Superclass::OutputPixelType;
233 
234  using ValueType = typename InputImageType::ValueType;
235  using IdCellType = typename Superclass::IdCellType;
236 
237  using FiniteDifferenceFunctionType = typename Superclass::FiniteDifferenceFunctionType;
238  using FiniteDifferenceFunctionPointer = typename Superclass::FiniteDifferenceFunctionPointer;
239  using FiniteDifferenceFunctionFloatOffsetType = typename FiniteDifferenceFunctionType::FloatOffsetType;
240 
243 
249 
251  using LayerListType = std::vector<LayerPointerType>;
252  using LayerListIterator = typename LayerListType::iterator;
253  using LayerListConstIterator = typename LayerListType::const_iterator;
254 
256  using StatusType = signed char;
257 
262 
265 
267 
272 
274  using UpdateBufferType = std::vector<ValueType>;
275  using UpdateBufferConstIterator = typename UpdateBufferType::const_iterator;
276 
279 
283  itkSetMacro(NumberOfLayers, unsigned int);
284  itkGetConstMacro(NumberOfLayers, unsigned int);
286 
288  itkSetMacro(IsoSurfaceValue, ValueType);
289  itkGetConstMacro(IsoSurfaceValue, ValueType);
291 
296  itkSetMacro(InterpolateSurfaceLocation, bool);
297  itkGetConstMacro(InterpolateSurfaceLocation, bool);
299 
301  void
303  {
304  this->SetInterpolateSurfaceLocation(true);
305  }
306  void
308  {
309  this->SetInterpolateSurfaceLocation(false);
310  }
312 
313  void
315  {
316  this->Superclass::SetFunctionCount(n);
317 
318  m_SparseData.resize(this->m_FunctionCount, nullptr);
319 
320  for (IdCellType i = 0; i < this->m_FunctionCount; i++)
321  {
322  m_SparseData[i] = new SparseDataStruct(i);
323  }
324  }
325 
326 #ifdef ITK_USE_CONCEPT_CHECKING
327  // Begin concept checking
331  // End concept checking
332 #endif
333 
334 protected:
337  {
338  while (!m_SparseData.empty())
339  {
340  delete m_SparseData.back();
341  m_SparseData.pop_back();
342  }
343  }
344 
345  void
346  PrintSelf(std::ostream & os, Indent indent) const override;
347 
348  // This data structure is created for each phase
350  {
352  {
353  m_LayerNodeStore = LayerNodeStorageType::New();
354  m_LayerNodeStore->SetGrowthStrategyToExponential();
355  m_Index = index;
356  }
357 
363 
366 
369 
373 
375  };
376 
379 
381  std::vector<ValueType> m_PixelDistance;
382 
387  inline virtual ValueType
388  CalculateUpdateValue(const OutputIndexType & itkNotUsed(idx),
389  const TimeStepType & dt,
390  const ValueType & value,
391  const ValueType & change)
392  {
393  return (value + dt * change);
394  }
395 
399  void
400  PostProcessOutput() override;
401 
406  virtual void
407  InitializeBackgroundPixels();
408 
410  void
411  Initialize() override;
412 
417  void
418  CopyInputToOutput() override;
419 
421  void
423  {}
424 
427  void
428  ApplyUpdate(TimeStepType dt) override;
429 
432  TimeStepType
433  CalculateChange() override;
434 
438  void
439  ConstructLayer(SparseDataStruct * sparsePtr, StatusType from, StatusType to);
440 
445  void
446  ConstructActiveLayer();
447 
449  void
450  InitializeActiveLayerValues();
451 
454  void
455  InitializeBackgroundConstants();
456 
464  void
465  PropagateLayerValues(SparseDataStruct * sparsePtr, StatusType from, StatusType to, StatusType promote, int InOrOut);
466 
471  void
472  PropagateAllLayerValues();
473 
474  void
475  PropagateFunctionLayerValues(unsigned int functionIndex);
476 
480  void
481  UpdateActiveLayerValues(TimeStepType dt, LayerType * StatusUpList, LayerType * StatusDownList);
482 
484  void
485  ProcessStatusList(LayerType * InputList,
486  LayerType * OutputList,
487  StatusType ChangeToStatus,
488  StatusType SearchForStatus);
489 
491  void
492  ProcessOutsideList(LayerType * OutsideList, StatusType ChangeToStatus);
493 
494  void
495  InitializeIteration() override;
496 
497  virtual void
498  UpdatePixel(unsigned int itkNotUsed(functionIndex),
499  unsigned int itkNotUsed(idx),
500  NeighborhoodIterator<InputImageType> & itkNotUsed(iterator),
501  ValueType & itkNotUsed(newValue),
502  bool & itkNotUsed(status))
503  {}
504 
505  itkGetConstMacro(ValueZero, ValueType);
506  itkGetConstMacro(ValueOne, ValueType);
507 
510  static double m_ConstantGradientValue;
511 
513  static const ValueType m_ValueOne;
514 
516  static const ValueType m_ValueZero;
517 
521 
525 
529 
533 
536  static const StatusType m_StatusNull;
537 
538  std::vector<SparseDataStruct *> m_SparseData;
539 
543  unsigned int m_NumberOfLayers;
544 
547 
550 
556 
557 private:
559 
560  double m_RMSSum;
561  unsigned int m_RMSCounter;
562 
566 };
567 } // end namespace itk
568 
569 #ifndef ITK_MANUAL_INSTANTIATION
570 # include "itkMultiphaseSparseFiniteDifferenceImageFilter.hxx"
571 #endif
572 
573 #endif
itk::NeighborhoodAlgorithm::ImageBoundaryFacesCalculator
Splits an image into a main region and several "face" regions which are used to handle computations o...
Definition: itkNeighborhoodAlgorithm.h:63
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_SparseData
std::vector< SparseDataStruct * > m_SparseData
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:538
itkMultiphaseFiniteDifferenceImageFilter.h
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_StatusActiveChangingDown
static const StatusType m_StatusActiveChangingDown
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:528
itk::Concept::OStreamWritable
Definition: itkConceptChecking.h:634
itk::MultiphaseSparseFiniteDifferenceImageFilter::InputPixelType
typename Superclass::InputPixelType InputPixelType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:214
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_NeighborList
NeighborListType m_NeighborList
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:378
itk::ZeroCrossingImageFilter
This filter finds the closest pixel to the zero-crossings (sign changes) in a signed itk::Image.
Definition: itkZeroCrossingImageFilter.h:64
itk::MultiphaseSparseFiniteDifferenceImageFilter::InputImageType
typename Superclass::InputImageType InputImageType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:207
itk::MultiphaseSparseFiniteDifferenceImageFilter::FeatureRegionType
typename Superclass::FeatureRegionType FeatureRegionType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:222
itk::ImageSource::OutputImagePointer
typename OutputImageType::Pointer OutputImagePointer
Definition: itkImageSource.h:91
itkNeighborhoodAlgorithm.h
itk::MultiphaseSparseFiniteDifferenceImageFilter::~MultiphaseSparseFiniteDifferenceImageFilter
~MultiphaseSparseFiniteDifferenceImageFilter() override
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:336
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_ConstantGradientValue
static double m_ConstantGradientValue
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:506
itk::MultiphaseSparseFiniteDifferenceImageFilter::SparseDataStruct::m_StatusImage
StatusImagePointer m_StatusImage
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:365
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_InterpolateSurfaceLocation
bool m_InterpolateSurfaceLocation
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:555
itk::MultiphaseSparseFiniteDifferenceImageFilter::LayerListConstIterator
typename LayerListType::const_iterator LayerListConstIterator
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:253
itk::MultiphaseSparseFiniteDifferenceImageFilter::OutputRegionType
typename Superclass::OutputRegionType OutputRegionType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:228
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_ValueZero
static const ValueType m_ValueZero
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:516
itk::MultiphaseSparseFiniteDifferenceImageFilter::SetFunctionCount
void SetFunctionCount(const IdCellType &n)
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:314
itk::MultiphaseSparseFiniteDifferenceImageFilter::LayerConstIterator
typename LayerType::ConstIterator LayerConstIterator
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:248
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_RMSCounter
unsigned int m_RMSCounter
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:561
itk::MultiphaseSparseFiniteDifferenceImageFilter::LayerListType
std::vector< LayerPointerType > LayerListType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:251
itk::MultiphaseSparseFiniteDifferenceImageFilter::AllocateUpdateBuffer
void AllocateUpdateBuffer() override
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:422
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_ValueOne
static const ValueType m_ValueOne
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:513
itk::MultiphaseSparseFiniteDifferenceImageFilter::FeaturePointType
typename Superclass::FeaturePointType FeaturePointType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:224
itk::MultiphaseSparseFiniteDifferenceImageFilter::InputSizeValueType
typename Superclass::InputSizeValueType InputSizeValueType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:211
itk::SmartPointer< Self >
itk::Indent
Control indentation during Print() invocation.
Definition: itkIndent.h:49
itk::ConstSparseFieldLayerIterator< NodeType >
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_BoundsCheckingActive
bool m_BoundsCheckingActive
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:565
itk::MultiphaseSparseFiniteDifferenceImageFilter::UpdateBufferType
std::vector< ValueType > UpdateBufferType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:274
itk::SparseFieldCityBlockNeighborList< NeighborhoodIterator< OutputImageType > >::OffsetType
typename NeighborhoodType::OffsetType OffsetType
Definition: itkSparseFieldLevelSetImageFilter.h:77
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_NumberOfLayers
unsigned int m_NumberOfLayers
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:543
itkImageRegionConstIterator.h
itk::SparseFieldLevelSetNode
Definition: itkSparseFieldLevelSetImageFilter.h:36
itkShiftScaleImageFilter.h
itk::MultiphaseSparseFiniteDifferenceImageFilter::FeatureSpacingType
typename Superclass::FeatureSpacingType FeatureSpacingType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:223
itk::MultiphaseSparseFiniteDifferenceImageFilter::SparseDataStruct::m_Layers
LayerListType m_Layers
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:362
itk::SparseFieldLayer
A very simple linked list that is used to manage nodes in a layer of a sparse field level-set solver.
Definition: itkSparseFieldLayer.h:172
itk::MultiphaseSparseFiniteDifferenceImageFilter::InputImagePointer
typename Superclass::InputImagePointer InputImagePointer
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:208
itk::ImageSource
Base class for all process objects that output image data.
Definition: itkImageSource.h:67
itk::SparseFieldCityBlockNeighborList< NeighborhoodIterator< OutputImageType > >
itk::ObjectStore
A specialized memory management object for allocating and destroying contiguous blocks of objects.
Definition: itkObjectStore.h:84
itk::MultiphaseSparseFiniteDifferenceImageFilter::ZeroCrossingFilterPointer
typename ZeroCrossingFilterType::Pointer ZeroCrossingFilterPointer
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:264
itk::MultiphaseSparseFiniteDifferenceImageFilter
This class implements a finite difference partial differential equation solver for evolving surfaces ...
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:181
itk::MultiphaseSparseFiniteDifferenceImageFilter::CalculateUpdateValue
virtual ValueType CalculateUpdateValue(const OutputIndexType &, const TimeStepType &dt, const ValueType &value, const ValueType &change)
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:388
itk::MultiphaseSparseFiniteDifferenceImageFilter::OutputSizeType
typename Superclass::OutputSizeType OutputSizeType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:229
itk::MultiphaseSparseFiniteDifferenceImageFilter::FeatureImagePointer
typename Superclass::FeatureImagePointer FeatureImagePointer
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:221
itk::MultiphaseSparseFiniteDifferenceImageFilter::LayerListIterator
typename LayerListType::iterator LayerListIterator
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:252
itk::MultiphaseSparseFiniteDifferenceImageFilter::OutputIndexValueType
typename Superclass::OutputIndexValueType OutputIndexValueType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:231
itk::MultiphaseSparseFiniteDifferenceImageFilter::InterpolateSurfaceLocationOff
void InterpolateSurfaceLocationOff()
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:307
itk::SparseFieldLayerIterator
The non-const version of the ConstSparseFieldLayerIterator.
Definition: itkSparseFieldLayer.h:104
itk::MultiphaseSparseFiniteDifferenceImageFilter::SparseDataStruct::SparseDataStruct
SparseDataStruct(const IdCellType &index)
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:351
itk::MultiphaseSparseFiniteDifferenceImageFilter::InputIndexType
typename Superclass::InputIndexType InputIndexType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:212
itk::MultiphaseSparseFiniteDifferenceImageFilter::OffsetType
typename NeighborListType::OffsetType OffsetType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:278
itk::MultiphaseSparseFiniteDifferenceImageFilter::LayerIterator
typename LayerType::Iterator LayerIterator
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:247
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_StatusBoundaryPixel
static const StatusType m_StatusBoundaryPixel
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:532
itk::MultiphaseSparseFiniteDifferenceImageFilter::InputOffsetValueType
typename Superclass::InputOffsetValueType InputOffsetValueType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:217
itk::MultiphaseSparseFiniteDifferenceImageFilter::InputSizeType
typename Superclass::InputSizeType InputSizeType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:210
itk::MultiphaseFiniteDifferenceImageFilter
Definition: itkMultiphaseFiniteDifferenceImageFilter.h:165
itk::MultiphaseSparseFiniteDifferenceImageFilter::SparseDataStruct
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:349
itk::MultiphaseSparseFiniteDifferenceImageFilter::FeatureSizeType
typename Superclass::FeatureSizeType FeatureSizeType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:220
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_PixelDistance
std::vector< ValueType > m_PixelDistance
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:381
itk::MultiphaseSparseFiniteDifferenceImageFilter::OutputPixelType
typename Superclass::OutputPixelType OutputPixelType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:232
itk::MultiphaseSparseFiniteDifferenceImageFilter::SparseDataStruct::m_LayerNodeStore
LayerNodeStoragePointer m_LayerNodeStore
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:368
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_BackgroundValue
ValueType m_BackgroundValue
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:549
itk::MultiphaseSparseFiniteDifferenceImageFilter::InputPointType
typename Superclass::InputPointType InputPointType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:215
itk::MultiphaseSparseFiniteDifferenceImageFilter::StatusImagePointer
typename StatusImageType::Pointer StatusImagePointer
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:261
itk::NeighborhoodIterator
Defines iteration of a local N-dimensional neighborhood of pixels across an itk::Image.
Definition: itkNeighborhoodIterator.h:211
itk::MultiphaseSparseFiniteDifferenceImageFilter::LayerPointerType
typename LayerType::Pointer LayerPointerType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:246
itk::MultiphaseSparseFiniteDifferenceImageFilter::OutputIndexType
typename Superclass::OutputIndexType OutputIndexType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:230
itk::MultiphaseSparseFiniteDifferenceImageFilter::FeatureImageType
typename Superclass::FeatureImageType FeatureImageType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:219
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_StatusNull
static const StatusType m_StatusNull
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:536
itkConceptMacro
#define itkConceptMacro(name, concept)
Definition: itkConceptChecking.h:64
itk::MultiphaseSparseFiniteDifferenceImageFilter::IdCellType
typename Superclass::IdCellType IdCellType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:235
itk
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Definition: itkArray.h:26
itk::MultiphaseSparseFiniteDifferenceImageFilter::StatusType
signed char StatusType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:256
itk::MultiphaseSparseFiniteDifferenceImageFilter::SparseDataStruct::m_UpdateBuffer
UpdateBufferType m_UpdateBuffer
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:372
itk::MultiphaseSparseFiniteDifferenceImageFilter::SparseDataStruct::m_Index
IdCellType m_Index
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:374
itk::ProcessObject
The base class for all process objects (source, filters, mappers) in the Insight data processing pipe...
Definition: itkProcessObject.h:138
itkZeroCrossingImageFilter.h
itk::MultiphaseSparseFiniteDifferenceImageFilter::TimeStepType
typename Superclass::TimeStepType TimeStepType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:204
itk::Concept::Convertible
Definition: itkConceptChecking.h:214
itk::MultiphaseSparseFiniteDifferenceImageFilter::LayerNodeStoragePointer
typename LayerNodeStorageType::Pointer LayerNodeStoragePointer
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:271
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_RMSSum
double m_RMSSum
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:560
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_IsoSurfaceValue
ValueType m_IsoSurfaceValue
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:546
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_CurrentFunctionIndex
unsigned int m_CurrentFunctionIndex
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:558
itk::MultiphaseSparseFiniteDifferenceImageFilter::InputRegionType
typename Superclass::InputRegionType InputRegionType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:209
itk::MultiphaseSparseFiniteDifferenceImageFilter::InputIndexValueType
typename Superclass::InputIndexValueType InputIndexValueType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:213
itk::Image
Templated n-dimensional image class.
Definition: itkImage.h:86
itk::MultiphaseSparseFiniteDifferenceImageFilter::UpdatePixel
virtual void UpdatePixel(unsigned int, unsigned int, NeighborhoodIterator< InputImageType > &, ValueType &, bool &)
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:498
itk::MultiphaseSparseFiniteDifferenceImageFilter::InterpolateSurfaceLocationOn
void InterpolateSurfaceLocationOn()
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:302
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_StatusActiveChangingUp
static const StatusType m_StatusActiveChangingUp
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:524
itk::MultiphaseSparseFiniteDifferenceImageFilter::FiniteDifferenceFunctionFloatOffsetType
typename FiniteDifferenceFunctionType::FloatOffsetType FiniteDifferenceFunctionFloatOffsetType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:239
itk::MultiphaseSparseFiniteDifferenceImageFilter::m_StatusChanging
static const StatusType m_StatusChanging
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:520
itkSparseFieldLevelSetImageFilter.h
itk::MultiphaseSparseFiniteDifferenceImageFilter::InputSpacingType
typename Superclass::InputSpacingType InputSpacingType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:216
itk::Concept::EqualityComparable
Definition: itkConceptChecking.h:304
itk::MultiphaseSparseFiniteDifferenceImageFilter::FiniteDifferenceFunctionType
typename Superclass::FiniteDifferenceFunctionType FiniteDifferenceFunctionType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:237
itk::MultiphaseSparseFiniteDifferenceImageFilter::ValueType
typename InputImageType::ValueType ValueType
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:234
itk::ImageSource::OutputImageType
TOutputImage OutputImageType
Definition: itkImageSource.h:90
itk::MultiphaseSparseFiniteDifferenceImageFilter::UpdateBufferConstIterator
typename UpdateBufferType::const_iterator UpdateBufferConstIterator
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:275
itk::MultiphaseSparseFiniteDifferenceImageFilter::FiniteDifferenceFunctionPointer
typename Superclass::FiniteDifferenceFunctionPointer FiniteDifferenceFunctionPointer
Definition: itkMultiphaseSparseFiniteDifferenceImageFilter.h:238