#include <itkTernaryFunctorImageFilter.h>
Implements pixel-wise generic operation of three images.
This class is parameterized over the types of the three input images and the type of the output image. It is also parameterized by the operation to be applied, using a Functor style.
Definition at line 43 of file itkTernaryFunctorImageFilter.h.
Public Types | |
using | ConstPointer = SmartPointer<const Self> |
using | FunctorType = TFunction |
using | Input1ImagePixelType = typename Input1ImageType::PixelType |
using | Input1ImagePointer = typename Input1ImageType::ConstPointer |
using | Input1ImageRegionType = typename Input1ImageType::RegionType |
using | Input1ImageType = TInputImage1 |
using | Input2ImagePixelType = typename Input2ImageType::PixelType |
using | Input2ImagePointer = typename Input2ImageType::ConstPointer |
using | Input2ImageRegionType = typename Input2ImageType::RegionType |
using | Input2ImageType = TInputImage2 |
using | Input3ImagePixelType = typename Input3ImageType::PixelType |
using | Input3ImagePointer = typename Input3ImageType::ConstPointer |
using | Input3ImageRegionType = typename Input3ImageType::RegionType |
using | Input3ImageType = TInputImage3 |
using | OutputImagePixelType = typename OutputImageType::PixelType |
using | OutputImagePointer = typename OutputImageType::Pointer |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TOutputImage |
using | Pointer = SmartPointer<Self> |
using | Self = TernaryFunctorImageFilter |
using | Superclass = InPlaceImageFilter<TInputImage1, TOutputImage> |
![]() | |
using | ConstPointer |
using | InputImageConstPointer |
using | InputImagePixelType |
using | InputImagePointer |
using | InputImageRegionType |
using | InputImageType |
typedef typename OutputImageType::PixelType | OutputImagePixelType |
using | OutputImagePixelType |
typedef typename OutputImageType::RegionType | OutputImageRegionType |
using | OutputImageRegionType |
using | Pointer |
using | Self |
using | Superclass |
![]() | |
using | ConstPointer = SmartPointer<const Self> |
using | InputImageConstPointer = typename InputImageType::ConstPointer |
using | InputImagePixelType = typename InputImageType::PixelType |
using | InputImagePointer = typename InputImageType::Pointer |
using | InputImageRegionType = typename InputImageType::RegionType |
using | InputImageType = TInputImage |
using | OutputImagePixelType |
using | OutputImageRegionType |
using | Pointer = SmartPointer<Self> |
using | Self = ImageToImageFilter |
using | Superclass = ImageSource<TOutputImage> |
![]() | |
using | ConstPointer = SmartPointer<const Self> |
using | DataObjectIdentifierType = Superclass::DataObjectIdentifierType |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArraySizeType = Superclass::DataObjectPointerArraySizeType |
using | OutputImagePixelType = typename OutputImageType::PixelType |
using | OutputImagePointer = typename OutputImageType::Pointer |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TOutputImage |
using | Pointer = SmartPointer<Self> |
using | Self = ImageSource |
using | Superclass = ProcessObject |
![]() | |
using | ConstPointer = SmartPointer<const Self> |
using | DataObjectIdentifierType = DataObject::DataObjectIdentifierType |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArray = std::vector<DataObjectPointer> |
using | DataObjectPointerArraySizeType = DataObjectPointerArray::size_type |
using | MultiThreaderType = MultiThreaderBase |
using | NameArray = std::vector<DataObjectIdentifierType> |
using | Pointer = SmartPointer<Self> |
using | Self = ProcessObject |
using | Superclass = Object |
![]() | |
using | ConstPointer = SmartPointer<const Self> |
using | Pointer = SmartPointer<Self> |
using | Self = Object |
using | Superclass = LightObject |
![]() | |
using | ConstPointer = SmartPointer<const Self> |
using | Pointer = SmartPointer<Self> |
using | Self = LightObject |
Public Member Functions | |
virtual::itk::LightObject::Pointer | CreateAnother () const |
FunctorType & | GetFunctor () |
const FunctorType & | GetFunctor () const |
const char * | GetNameOfClass () const override |
void | SetInput1 (const TInputImage1 *image1) |
void | SetInput2 (const TInputImage2 *image2) |
void | SetInput3 (const TInputImage3 *image3) |
void | SetFunctor (const FunctorType &functor) |
![]() | |
virtual bool | CanRunInPlace () const |
virtual bool | CanRunInPlace () const |
virtual void | SetInPlace (bool _arg) |
virtual bool | GetInPlace () const |
virtual void | InPlaceOn () |
virtual void | InPlaceOff () |
virtual void | SetInPlace (bool _arg) |
virtual bool | GetInPlace () const |
virtual void | InPlaceOn () |
virtual void | InPlaceOff () |
![]() | |
const InputImageType * | GetInput () const |
const InputImageType * | GetInput (unsigned int idx) const |
void | PopBackInput () override |
void | PopFrontInput () override |
virtual void | PushBackInput (const InputImageType *input) |
virtual void | PushFrontInput (const InputImageType *input) |
virtual void | SetInput (const InputImageType *input) |
virtual void | SetInput (unsigned int, const TInputImage *image) |
virtual void | SetCoordinateTolerance (double _arg) |
virtual double | GetCoordinateTolerance () const |
virtual void | SetDirectionTolerance (double _arg) |
virtual double | GetDirectionTolerance () const |
![]() | |
OutputImageType * | GetOutput (unsigned int idx) |
OutputImageType * | GetOutput () |
const OutputImageType * | GetOutput () const |
virtual void | GraftOutput (DataObject *graft) |
virtual void | GraftOutput (const DataObjectIdentifierType &key, DataObject *graft) |
virtual void | GraftNthOutput (unsigned int idx, DataObject *graft) |
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 () |
MultiThreaderType * | 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 (MultiThreaderType *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 () |
virtual void | SetNumberOfWorkUnits (ThreadIdType _arg) |
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 |
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 |
Static Public Member Functions | |
static Pointer | New () |
![]() | |
static double | GetGlobalDefaultCoordinateTolerance () |
static double | GetGlobalDefaultDirectionTolerance () |
static void | SetGlobalDefaultCoordinateTolerance (double) |
static void | SetGlobalDefaultDirectionTolerance (double) |
![]() | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool val) |
![]() | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static constexpr unsigned int | Input1ImageDimension = TInputImage1::ImageDimension |
static constexpr unsigned int | Input2ImageDimension = TInputImage2::ImageDimension |
static constexpr unsigned int | Input3ImageDimension = TInputImage3::ImageDimension |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
![]() | |
static constexpr unsigned int | InputImageDimension |
static constexpr unsigned int | InputImageDimension |
static constexpr unsigned int | OutputImageDimension |
static constexpr unsigned int | OutputImageDimension |
![]() | |
static constexpr unsigned int | InputImageDimension = TInputImage::ImageDimension |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
![]() | |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Private Attributes | |
FunctorType | m_Functor {} |
Additional Inherited Members | |
![]() | |
using | InputToOutputRegionCopierType |
using | OutputToInputRegionCopierType |
![]() | |
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | ThreaderCallback (void *arg) |
![]() | |
template<typename TSourceObject> | |
static void | MakeRequiredOutputs (TSourceObject &sourceObject, const DataObjectPointerArraySizeType numberOfRequiredOutputs) |
static constexpr float | progressFixedToFloat (uint32_t fixed) |
static uint32_t | progressFloatToFixed (float f) |
![]() | |
bool | m_DynamicMultiThreading { true } |
![]() | |
TimeStamp | m_OutputInformationMTime {} |
bool | m_Updating {} |
![]() | |
std::atomic< int > | m_ReferenceCount {} |
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::ConstPointer = SmartPointer<const Self> |
Definition at line 52 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::FunctorType = TFunction |
Some type alias.
Definition at line 61 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Input1ImagePixelType = typename Input1ImageType::PixelType |
Definition at line 65 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Input1ImagePointer = typename Input1ImageType::ConstPointer |
Definition at line 63 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Input1ImageRegionType = typename Input1ImageType::RegionType |
Definition at line 64 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Input1ImageType = TInputImage1 |
Definition at line 62 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Input2ImagePixelType = typename Input2ImageType::PixelType |
Definition at line 69 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Input2ImagePointer = typename Input2ImageType::ConstPointer |
Definition at line 67 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Input2ImageRegionType = typename Input2ImageType::RegionType |
Definition at line 68 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Input2ImageType = TInputImage2 |
Definition at line 66 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Input3ImagePixelType = typename Input3ImageType::PixelType |
Definition at line 73 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Input3ImagePointer = typename Input3ImageType::ConstPointer |
Definition at line 71 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Input3ImageRegionType = typename Input3ImageType::RegionType |
Definition at line 72 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Input3ImageType = TInputImage3 |
Definition at line 70 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::OutputImagePixelType = typename OutputImageType::PixelType |
Definition at line 77 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::OutputImagePointer = typename OutputImageType::Pointer |
Definition at line 75 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::OutputImageRegionType = typename OutputImageType::RegionType |
Definition at line 76 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::OutputImageType = TOutputImage |
Definition at line 74 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Pointer = SmartPointer<Self> |
Definition at line 51 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Self = TernaryFunctorImageFilter |
Standard class type aliases.
Definition at line 49 of file itkTernaryFunctorImageFilter.h.
using itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::Superclass = InPlaceImageFilter<TInputImage1, TOutputImage> |
Definition at line 50 of file itkTernaryFunctorImageFilter.h.
|
protected |
Referenced by GetNameOfClass().
|
overrideprotecteddefault |
|
overrideprotectedvirtual |
Validate the presence of all three inputs. If one or more inputs are missing, throw an exception.
Reimplemented from itk::ImageSource< TOutputImage >.
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
|
overrideprotectedvirtual |
TernaryFunctorImageFilter can be implemented as a multithreaded filter. Therefore, this implementation provides a DynamicThreadedGenerateData() routine which is called for each processing thread. The output image data is allocated automatically by the superclass prior to calling DynamicThreadedGenerateData(). DynamicThreadedGenerateData can only write to the portion of the output image specified by the parameter "outputRegionForThread"
Reimplemented from itk::ImageSource< TOutputImage >.
|
inline |
Get the functor object. The functor is returned by reference. (Functors do not have to derive from itk::LightObject, so they do not necessarily have a reference count. So we cannot return a SmartPointer).
Definition at line 96 of file itkTernaryFunctorImageFilter.h.
References m_Functor.
|
inline |
Get the functor object. The functor is returned by reference. (Functors do not have to derive from itk::LightObject, so they do not necessarily have a reference count. So we cannot return a SmartPointer.)
Definition at line 106 of file itkTernaryFunctorImageFilter.h.
References m_Functor.
|
overridevirtual |
Reimplemented from itk::InPlaceImageFilter< TInputImage1, TOutputImage >.
References TernaryFunctorImageFilter().
|
static |
Method for creation through the object factory.
|
inline |
Set the functor object. This replaces the current Functor with a copy of the specified Functor. This allows the user to specify a functor that has ivars set differently than the default functor. This method requires an operator==() be defined on the functor (or the compiler's default implementation of operator==() being appropriate).
Definition at line 118 of file itkTernaryFunctorImageFilter.h.
References m_Functor, and itk::Object::Modified().
void itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::SetInput1 | ( | const TInputImage1 * | image1 | ) |
Connect one of the operands for pixel-wise addition.
void itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::SetInput2 | ( | const TInputImage2 * | image2 | ) |
Connect one of the operands for pixel-wise addition.
void itk::TernaryFunctorImageFilter< TInputImage1, TInputImage2, TInputImage3, TOutputImage, TFunction >::SetInput3 | ( | const TInputImage3 * | image3 | ) |
Connect one of the operands for pixel-wise addition.
|
staticconstexpr |
Image dimensions
Definition at line 129 of file itkTernaryFunctorImageFilter.h.
|
staticconstexpr |
Definition at line 130 of file itkTernaryFunctorImageFilter.h.
|
staticconstexpr |
Definition at line 131 of file itkTernaryFunctorImageFilter.h.
|
private |
Definition at line 162 of file itkTernaryFunctorImageFilter.h.
Referenced by GetFunctor(), GetFunctor(), and SetFunctor().
|
staticconstexpr |
Definition at line 132 of file itkTernaryFunctorImageFilter.h.