template<typename TInputImageType, typename TSparseOutputImageType>
class itk::FiniteDifferenceSparseImageFilter< TInputImageType, TSparseOutputImageType >
This class implements a multi-threaded base class for Image to SparseImage finite difference processes.
- This class implements a multi-threading mechanism for implementing finite difference PDE's on sparse image types. The sparse image is a image of pointers to node variables at valid pixel locations and null pointers at others. The node variable type must have the following members: m_Index, m_Data and m_Update.
- This class also adds precomputing support to the finite difference image filter scheme. This support can be used by certain filters to speed up the processing. The m_PrecomputeFlag should be set to true to use this and the Function object must provide a PrecomputeSparseUpdate method.
- INPUTS
- The input to this filter is either a regular or sparse image. Subclasses should provide a way of copying this information to the output sparse image or initializing the output image nodes from the input image.
- OUTPUTS
- The output is a sparse image. The output will be in the m_Data members of the nodes of the sparse image.
- IMPORTANT
- The output sparse image type must be templated with a node type that at least has the following member variables: m_Index, m_Data and m_Update.
Definition at line 64 of file itkFiniteDifferenceSparseImageFilter.h.
|
| virtual const char * | GetNameOfClass () const |
| |
| virtual bool | GetPrecomputeFlag () const |
| |
| virtual void | SetPrecomputeFlag (bool _arg) |
| |
| void | SetSparseFunction (SparseFunctionType *sf) |
| |
| virtual const FiniteDifferenceFunctionType::Pointer & | GetDifferenceFunction () const |
| |
| virtual const FiniteDifferenceFunctionType::Pointer & | GetDifferenceFunction () const |
| |
| virtual const IdentifierType & | GetElapsedIterations () const |
| |
| virtual const IdentifierType & | GetElapsedIterations () const |
| |
| virtual bool | GetIsInitialized () |
| |
| virtual bool | GetIsInitialized () |
| |
| virtual void | SetDifferenceFunction (FiniteDifferenceFunctionType *_arg) |
| |
| virtual void | SetDifferenceFunction (FiniteDifferenceFunctionType *_arg) |
| |
| virtual void | SetIsInitialized (bool _arg) |
| |
| virtual void | SetIsInitialized (bool _arg) |
| |
| void | SetStateToInitialized () |
| |
| void | SetStateToInitialized () |
| |
| void | SetStateToUninitialized () |
| |
| void | SetStateToUninitialized () |
| |
| virtual void | SetNumberOfIterations (IdentifierType _arg) |
| |
| virtual const IdentifierType & | GetNumberOfIterations () const |
| |
| virtual void | SetNumberOfIterations (IdentifierType _arg) |
| |
| virtual const IdentifierType & | GetNumberOfIterations () const |
| |
| virtual void | SetUseImageSpacing (bool _arg) |
| |
| virtual void | UseImageSpacingOn () |
| |
| virtual void | UseImageSpacingOff () |
| |
| virtual const bool & | GetUseImageSpacing () const |
| |
| virtual void | SetUseImageSpacing (bool _arg) |
| |
| virtual void | UseImageSpacingOn () |
| |
| virtual void | UseImageSpacingOff () |
| |
| virtual const bool & | GetUseImageSpacing () const |
| |
| | itkVirtualSetMacro (MaximumRMSError, double) |
| |
| virtual const double & | GetMaximumRMSError () const |
| |
| | itkVirtualSetMacro (MaximumRMSError, double) |
| |
| virtual const double & | GetMaximumRMSError () const |
| |
| virtual void | SetRMSChange (double _arg) |
| |
| | itkVirtualGetConstReferenceMacro (RMSChange, double) |
| |
| virtual void | SetRMSChange (double _arg) |
| |
| | itkVirtualGetConstReferenceMacro (RMSChange, double) |
| |
| virtual void | SetManualReinitialization (bool _arg) |
| |
| virtual const bool & | GetManualReinitialization () const |
| |
| virtual void | ManualReinitializationOn () |
| |
| virtual void | ManualReinitializationOff () |
| |
| virtual void | SetManualReinitialization (bool _arg) |
| |
| virtual const bool & | GetManualReinitialization () const |
| |
| virtual void | ManualReinitializationOn () |
| |
| virtual void | ManualReinitializationOff () |
| |
| virtual bool | CanRunInPlace () const |
| |
| virtual void | SetInPlace (bool _arg) |
| |
| virtual bool | GetInPlace () const |
| |
| virtual void | InPlaceOn () |
| |
| virtual void | InPlaceOff () |
| |
| const InputImageType * | GetInput () const |
| |
| const InputImageType * | GetInput () const |
| |
| const InputImageType * | GetInput (unsigned int idx) const |
| |
| const InputImageType * | GetInput (unsigned int idx) const |
| |
| void | PopBackInput () override |
| |
| void | PopBackInput () override |
| |
| void | PopFrontInput () override |
| |
| void | PopFrontInput () override |
| |
| virtual void | PushBackInput (const InputImageType *input) |
| |
| virtual void | PushBackInput (const InputImageType *input) |
| |
| virtual void | PushFrontInput (const InputImageType *input) |
| |
| virtual void | PushFrontInput (const InputImageType *input) |
| |
| virtual void | SetInput (const InputImageType *input) |
| |
| virtual void | SetInput (const InputImageType *input) |
| |
| virtual void | SetInput (unsigned int, const TInputImage *image) |
| |
| virtual void | SetInput (unsigned int, const TInputImage *image) |
| |
| virtual void | SetCoordinateTolerance (double _arg) |
| |
| virtual double | GetCoordinateTolerance () const |
| |
| virtual void | SetCoordinateTolerance (double _arg) |
| |
| virtual double | GetCoordinateTolerance () const |
| |
| virtual void | SetDirectionTolerance (double _arg) |
| |
| virtual double | GetDirectionTolerance () const |
| |
| virtual void | SetDirectionTolerance (double _arg) |
| |
| virtual double | GetDirectionTolerance () const |
| |
| OutputImageType * | GetOutput (unsigned int idx) |
| |
| virtual void | GraftNthOutput (unsigned int idx, DataObject *graft) |
| |
| virtual void | GraftOutput (const DataObjectIdentifierType &key, DataObject *graft) |
| |
| virtual void | GraftOutput (DataObject *graft) |
| |
| OutputImageType * | GetOutput () |
| |
| const OutputImageType * | GetOutput () const |
| |
| ProcessObject::DataObjectPointer | MakeOutput (ProcessObject::DataObjectPointerArraySizeType idx) override |
| |
| ProcessObject::DataObjectPointer | MakeOutput (const ProcessObject::DataObjectIdentifierType &) override |
| |
| virtual void | AbortGenerateDataOff () |
| |
| virtual void | AbortGenerateDataOn () |
| |
| virtual void | EnlargeOutputRequestedRegion (DataObject *output) |
| |
| virtual const bool & | GetAbortGenerateData () const |
| |
| DataObjectPointerArray | GetIndexedInputs () |
| |
| DataObjectPointerArray | GetIndexedOutputs () |
| |
| NameArray | GetInputNames () const |
| |
| DataObjectPointerArray | GetInputs () |
| |
| MultiThreaderBase * | GetMultiThreader () const |
| |
| DataObjectPointerArraySizeType | GetNumberOfIndexedInputs () const |
| |
| DataObjectPointerArraySizeType | GetNumberOfIndexedOutputs () const |
| |
| DataObjectPointerArraySizeType | GetNumberOfInputs () const |
| |
| DataObjectPointerArraySizeType | GetNumberOfOutputs () const |
| |
| virtual DataObjectPointerArraySizeType | GetNumberOfValidRequiredInputs () const |
| |
| NameArray | GetOutputNames () const |
| |
| DataObjectPointerArray | GetOutputs () |
| |
| virtual float | GetProgress () const |
| |
| NameArray | GetRequiredInputNames () const |
| |
| bool | HasInput (const DataObjectIdentifierType &key) const |
| |
| bool | HasOutput (const DataObjectIdentifierType &key) const |
| |
| void | IncrementProgress (float increment) |
| |
| virtual void | PrepareOutputs () |
| |
| virtual void | PropagateRequestedRegion (DataObject *output) |
| |
| virtual void | ResetPipeline () |
| |
| virtual void | SetAbortGenerateData (bool _arg) |
| |
| void | SetMultiThreader (MultiThreaderBase *threader) |
| |
| virtual void | Update () |
| |
| virtual void | UpdateLargestPossibleRegion () |
| |
| virtual void | UpdateOutputData (DataObject *output) |
| |
| virtual void | UpdateOutputInformation () |
| |
| void | UpdateProgress (float progress) |
| |
| virtual void | SetReleaseDataFlag (bool val) |
| |
| virtual bool | GetReleaseDataFlag () const |
| |
| void | ReleaseDataFlagOn () |
| |
| void | ReleaseDataFlagOff () |
| |
| virtual void | SetReleaseDataBeforeUpdateFlag (bool _arg) |
| |
| virtual const bool & | GetReleaseDataBeforeUpdateFlag () const |
| |
| virtual void | ReleaseDataBeforeUpdateFlagOn () |
| |
| virtual void | ReleaseDataBeforeUpdateFlagOff () |
| |
| | itkVirtualSetClampMacro (NumberOfWorkUnits, ThreadIdType, 1, ITK_MAX_THREADS) |
| |
| virtual const ThreadIdType & | GetNumberOfWorkUnits () const |
| |
| unsigned long | AddObserver (const EventObject &event, Command *cmd) const |
| |
| unsigned long | AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const |
| |
| LightObject::Pointer | CreateAnother () const override |
| |
| virtual void | DebugOff () const |
| |
| virtual void | DebugOn () const |
| |
| Command * | GetCommand (unsigned long tag) |
| |
| bool | GetDebug () const |
| |
| MetaDataDictionary & | GetMetaDataDictionary () |
| |
| const MetaDataDictionary & | GetMetaDataDictionary () const |
| |
| virtual ModifiedTimeType | GetMTime () const |
| |
| virtual const TimeStamp & | GetTimeStamp () const |
| |
| bool | HasObserver (const EventObject &event) const |
| |
| void | InvokeEvent (const EventObject &) |
| |
| void | InvokeEvent (const EventObject &) const |
| |
| virtual void | Modified () const |
| |
| void | Register () const override |
| |
| void | RemoveAllObservers () |
| |
| void | RemoveObserver (unsigned long tag) const |
| |
| void | SetDebug (bool debugFlag) const |
| |
| void | SetReferenceCount (int) override |
| |
| void | UnRegister () const noexcept override |
| |
| void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
| |
| void | SetMetaDataDictionary (MetaDataDictionary &&rrhs) |
| |
| virtual void | SetObjectName (std::string _arg) |
| |
| virtual const std::string & | GetObjectName () const |
| |
| Pointer | Clone () const |
| |
| virtual void | Delete () |
| |
| virtual int | GetReferenceCount () const |
| |
| void | Print (std::ostream &os, Indent indent=0) const |
| |
|
| void | AllocateUpdateBuffer () override |
| |
| void | ApplyUpdate (const TimeStepType &dt) override |
| |
| TimeStepType | CalculateChange () override |
| |
| virtual NodeDataType | DataConstraint (const NodeDataType &data) const |
| |
| | FiniteDifferenceSparseImageFilter ()=default |
| |
| ThreadIdType | GetSplitRegion (ThreadIdType i, ThreadIdType num, ThreadRegionType &splitRegion) |
| |
| void | Initialize () override |
| |
| virtual void | PrecalculateChange () |
| |
| void | PrintSelf (std::ostream &os, Indent indent) const override |
| |
| virtual void | ThreadedApplyUpdate (const TimeStepType &dt, const ThreadRegionType ®ionToProcess, ThreadIdType threadId) |
| |
| virtual TimeStepType | ThreadedCalculateChange (const ThreadRegionType ®ionToProcess, ThreadIdType threadId) |
| |
| virtual void | ThreadedPrecalculateChange (const ThreadRegionType ®ionToProcess, ThreadIdType threadId) |
| |
| | ~FiniteDifferenceSparseImageFilter () override=default |
| |
| virtual void | CopyInputToOutput ()=0 |
| |
| virtual void | CopyInputToOutput ()=0 |
| |
| | FiniteDifferenceImageFilter () |
| |
| | FiniteDifferenceImageFilter () |
| |
| void | GenerateData () override |
| |
| void | GenerateData () override |
| |
| void | GenerateInputRequestedRegion () override |
| |
| void | GenerateInputRequestedRegion () override |
| |
| virtual bool | Halt () |
| |
| virtual bool | Halt () |
| |
| virtual void | InitializeIteration () |
| |
| virtual void | InitializeIteration () |
| |
| virtual void | PostProcessOutput () |
| |
| virtual void | PostProcessOutput () |
| |
| virtual TimeStepType | ResolveTimeStep (const std::vector< TimeStepType > &timeStepList, const BooleanStdVectorType &valid) const |
| |
| virtual TimeStepType | ResolveTimeStep (const std::vector< TimeStepType > &timeStepList, const BooleanStdVectorType &valid) const |
| |
| virtual void | SetElapsedIterations (IdentifierType _arg) |
| |
| virtual void | SetElapsedIterations (IdentifierType _arg) |
| |
| virtual bool | ThreadedHalt (void *threadInfo) |
| |
| virtual bool | ThreadedHalt (void *threadInfo) |
| |
| | ~FiniteDifferenceImageFilter () override=default |
| |
| | ~FiniteDifferenceImageFilter () override=default |
| |
| void | AllocateOutputs () override |
| |
| virtual bool | GetRunningInPlace () const |
| |
| | InPlaceImageFilter ()=default |
| |
| void | PrintSelf (std::ostream &os, Indent indent) const override |
| |
| void | ReleaseInputs () override |
| |
| | ~InPlaceImageFilter () override=default |
| |
| virtual void | CallCopyInputRegionToOutputRegion (OutputImageRegionType &destRegion, const InputImageRegionType &srcRegion) |
| |
| virtual void | CallCopyInputRegionToOutputRegion (OutputImageRegionType &destRegion, const InputImageRegionType &srcRegion) |
| |
| virtual void | CallCopyOutputRegionToInputRegion (InputImageRegionType &destRegion, const OutputImageRegionType &srcRegion) |
| |
| virtual void | CallCopyOutputRegionToInputRegion (InputImageRegionType &destRegion, const OutputImageRegionType &srcRegion) |
| |
| void | GenerateInputRequestedRegion () override |
| |
| void | GenerateInputRequestedRegion () override |
| |
| | ImageToImageFilter () |
| |
| | ImageToImageFilter () |
| |
| void | VerifyInputInformation () const override |
| |
| void | VerifyInputInformation () const override |
| |
| | ~ImageToImageFilter () override=default |
| |
| | ~ImageToImageFilter () override=default |
| |
| virtual void | AfterThreadedGenerateData () |
| |
| virtual void | BeforeThreadedGenerateData () |
| |
| void | ClassicMultiThread (ThreadFunctionType callbackFunction) |
| |
| void | GenerateData () override |
| |
| virtual const ImageRegionSplitterBase * | GetImageRegionSplitter () const |
| |
| | ImageSource () |
| |
| virtual unsigned int | SplitRequestedRegion (unsigned int i, unsigned int pieces, OutputImageRegionType &splitRegion) |
| |
| | ~ImageSource () override=default |
| |
| virtual void | ThreadedGenerateData (const OutputImageRegionType ®ion, ThreadIdType threadId) |
| |
| virtual void | DynamicThreadedGenerateData (const OutputImageRegionType &outputRegionForThread) |
| |
| virtual bool | GetDynamicMultiThreading () const |
| |
| virtual void | SetDynamicMultiThreading (bool _arg) |
| |
| virtual void | DynamicMultiThreadingOn () |
| |
| virtual void | DynamicMultiThreadingOff () |
| |
| virtual void | AddInput (DataObject *input) |
| |
| void | AddOptionalInputName (const DataObjectIdentifierType &) |
| |
| void | AddOptionalInputName (const DataObjectIdentifierType &, DataObjectPointerArraySizeType idx) |
| |
| virtual void | AddOutput (DataObject *output) |
| |
| bool | AddRequiredInputName (const DataObjectIdentifierType &) |
| |
| bool | AddRequiredInputName (const DataObjectIdentifierType &, DataObjectPointerArraySizeType idx) |
| |
| virtual void | CacheInputReleaseDataFlags () |
| |
| virtual void | GenerateOutputInformation () |
| |
| virtual void | GenerateOutputRequestedRegion (DataObject *output) |
| |
| DataObject * | GetInput (const DataObjectIdentifierType &key) |
| |
| const DataObject * | GetInput (const DataObjectIdentifierType &key) const |
| |
| virtual const DataObjectPointerArraySizeType & | GetNumberOfRequiredInputs () const |
| |
| virtual const DataObjectPointerArraySizeType & | GetNumberOfRequiredOutputs () const |
| |
| bool | IsIndexedInputName (const DataObjectIdentifierType &) const |
| |
| bool | IsIndexedOutputName (const DataObjectIdentifierType &) const |
| |
| bool | IsRequiredInputName (const DataObjectIdentifierType &) const |
| |
| DataObjectPointerArraySizeType | MakeIndexFromInputName (const DataObjectIdentifierType &name) const |
| |
| DataObjectPointerArraySizeType | MakeIndexFromOutputName (const DataObjectIdentifierType &name) const |
| |
| DataObjectIdentifierType | MakeNameFromInputIndex (DataObjectPointerArraySizeType idx) const |
| |
| DataObjectIdentifierType | MakeNameFromOutputIndex (DataObjectPointerArraySizeType idx) const |
| |
| void | PrintSelf (std::ostream &os, Indent indent) const override |
| |
| | ProcessObject () |
| |
| virtual void | PropagateResetPipeline () |
| |
| virtual void | PushBackInput (const DataObject *input) |
| |
| virtual void | PushFrontInput (const DataObject *input) |
| |
| virtual void | RemoveInput (const DataObjectIdentifierType &key) |
| |
| virtual void | RemoveInput (DataObjectPointerArraySizeType) |
| |
| virtual void | RemoveOutput (const DataObjectIdentifierType &key) |
| |
| virtual void | RemoveOutput (DataObjectPointerArraySizeType idx) |
| |
| bool | RemoveRequiredInputName (const DataObjectIdentifierType &) |
| |
| virtual void | RestoreInputReleaseDataFlags () |
| |
| virtual void | SetInput (const DataObjectIdentifierType &key, DataObject *input) |
| |
| virtual void | SetNthInput (DataObjectPointerArraySizeType idx, DataObject *input) |
| |
| virtual void | SetNthOutput (DataObjectPointerArraySizeType idx, DataObject *output) |
| |
| void | SetNumberOfIndexedInputs (DataObjectPointerArraySizeType num) |
| |
| void | SetNumberOfIndexedOutputs (DataObjectPointerArraySizeType num) |
| |
| virtual void | SetNumberOfRequiredInputs (DataObjectPointerArraySizeType) |
| |
| virtual void | SetNumberOfRequiredOutputs (DataObjectPointerArraySizeType _arg) |
| |
| virtual void | SetOutput (const DataObjectIdentifierType &name, DataObject *output) |
| |
| virtual void | SetPrimaryInput (DataObject *object) |
| |
| virtual void | SetPrimaryOutput (DataObject *object) |
| |
| void | SetRequiredInputNames (const NameArray &) |
| |
| virtual void | VerifyPreconditions () const |
| |
| | ~ProcessObject () override |
| |
| DataObject * | GetInput (DataObjectPointerArraySizeType idx) |
| |
| const DataObject * | GetInput (DataObjectPointerArraySizeType idx) const |
| |
| DataObject * | GetPrimaryInput () |
| |
| const DataObject * | GetPrimaryInput () const |
| |
| virtual void | SetPrimaryInputName (const DataObjectIdentifierType &key) |
| |
| virtual const char * | GetPrimaryInputName () const |
| |
| DataObject * | GetOutput (const DataObjectIdentifierType &key) |
| |
| const DataObject * | GetOutput (const DataObjectIdentifierType &key) const |
| |
| virtual void | SetPrimaryOutputName (const DataObjectIdentifierType &key) |
| |
| virtual const char * | GetPrimaryOutputName () const |
| |
| DataObject * | GetOutput (DataObjectPointerArraySizeType i) |
| |
| const DataObject * | GetOutput (DataObjectPointerArraySizeType i) const |
| |
| DataObject * | GetPrimaryOutput () |
| |
| const DataObject * | GetPrimaryOutput () const |
| |
| virtual bool | GetThreaderUpdateProgress () const |
| |
| virtual void | ThreaderUpdateProgressOn () |
| |
| virtual void | ThreaderUpdateProgressOff () |
| |
| virtual void | SetThreaderUpdateProgress (bool arg) |
| |
| | Object () |
| |
| bool | PrintObservers (std::ostream &os, Indent indent) const |
| |
| virtual void | SetTimeStamp (const TimeStamp &timeStamp) |
| |
| | ~Object () override |
| |
| virtual LightObject::Pointer | InternalClone () const |
| |
| | LightObject () |
| |
| virtual void | PrintHeader (std::ostream &os, Indent indent) const |
| |
| virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
| |
| virtual | ~LightObject () |
| |