OTB  9.0.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | List of all members
otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision > Class Template Reference

#include <otbComplexMomentPathFunction.h>

+ Inheritance diagram for otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >:
+ Collaboration diagram for otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >:

Public Types

typedef std::complex< PrecisionTypeComplexPrecisionType
 
typedef Superclass::OutputType ComplexType
 
typedef itk::SmartPointer< const SelfConstPointer
 
typedef Superclass::OutputType OutputType
 
typedef Superclass::PathConstPointer PathConstPointer
 
typedef Superclass::PathType PathType
 
typedef itk::SmartPointer< SelfPointer
 
typedef Superclass::PrecisionType PrecisionType
 
typedef double RealType
 
typedef ComplexMomentPathFunction Self
 
typedef GeometricMomentPathFunction< TInputPath, TOutput, TPrecision > Superclass
 
typedef VertexListType::ConstPointer VertexListPointer
 
typedef itk::VectorContainer< unsigned, VertexTypeVertexListType
 
typedef PathType::ContinuousIndexType VertexType
 
- Public Types inherited from otb::GeometricMomentPathFunction< TInputPath, std::complex< double >, double >
typedef itk::SmartPointer< const SelfConstPointer
 
typedef Superclass::OutputType OutputType
 
typedef Superclass::InputPathConstPointer PathConstPointer
 
typedef Superclass::InputPathType PathType
 
typedef itk::SmartPointer< SelfPointer
 
typedef double PrecisionType
 
typedef GeometricMomentPathFunction Self
 
typedef PathFunction< TInputPath, std::complex< double > > Superclass
 
- Public Types inherited from otb::PathFunction< TInputPath, std::complex< double > >
typedef itk::SmartPointer< const SelfConstPointer
 
typedef InputPathType::ConstPointer InputPathConstPointer
 
typedef Superclass::InputType InputPathType
 
typedef Superclass::OutputType OutputType
 
typedef itk::SmartPointer< SelfPointer
 
typedef PathFunction Self
 
typedef itk::FunctionBase< TInputPath, std::complex< double > > Superclass
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const char * GetNameOfClass () const
 
- Public Member Functions inherited from otb::GeometricMomentPathFunction< TInputPath, std::complex< double >, double >
virtual const char * GetNameOfClass () const
 
- Public Member Functions inherited from otb::PathFunction< TInputPath, std::complex< double > >
const InputPathTypeGetInputPath () const
 
virtual void SetInputPath (const InputPathType *ptr)
 

Static Public Member Functions

static Pointer New ()
 
unsigned int m_P
 
unsigned int m_Q
 
OutputType Evaluate (const PathType &path) const override
 
virtual OutputType Evaluate () const
 
virtual void SetP (unsigned int _arg)
 
virtual const unsigned int & GetP () const
 
virtual void SetQ (unsigned int _arg)
 
virtual const unsigned int & GetQ () const
 
 ComplexMomentPathFunction ()
 
 ~ComplexMomentPathFunction () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
 ComplexMomentPathFunction (const Self &)=delete
 
void operator= (const Self &)=delete
 
ComplexPrecisionType EvaluateComplexMomentAtIndex (VertexType index) const
 

Additional Inherited Members

- Protected Member Functions inherited from otb::GeometricMomentPathFunction< TInputPath, std::complex< double >, double >
 GeometricMomentPathFunction ()
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
 ~GeometricMomentPathFunction () override
 
- Protected Member Functions inherited from otb::PathFunction< TInputPath, std::complex< double > >
 PathFunction ()
 
 ~PathFunction () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
- Protected Attributes inherited from otb::PathFunction< TInputPath, std::complex< double > >
InputPathConstPointer m_Path
 

Detailed Description

template<class TInputPath, class TOutput = std::complex<double>, class TPrecision = double>
class otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >

Calculate the complex moment value over a path.

The implemented equation is:

\[ c_{p, q}=\int\int_{D} (x+iy)^{p} \cdot (x-iy)^{q} \cdot dx \cdot dy \]

With:

This class is templated over :

Definition at line 54 of file otbComplexMomentPathFunction.h.

Member Typedef Documentation

◆ ComplexPrecisionType

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef std::complex<PrecisionType> otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::ComplexPrecisionType

ComplexType for calculation precision

Definition at line 88 of file otbComplexMomentPathFunction.h.

◆ ComplexType

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef Superclass::OutputType otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::ComplexType

Complex Type

Definition at line 78 of file otbComplexMomentPathFunction.h.

◆ ConstPointer

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef itk::SmartPointer<const Self> otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::ConstPointer

Definition at line 62 of file otbComplexMomentPathFunction.h.

◆ OutputType

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef Superclass::OutputType otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::OutputType

Definition at line 80 of file otbComplexMomentPathFunction.h.

◆ PathConstPointer

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef Superclass::PathConstPointer otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::PathConstPointer

Definition at line 72 of file otbComplexMomentPathFunction.h.

◆ PathType

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef Superclass::PathType otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::PathType

InputPathType typedef support.

Definition at line 68 of file otbComplexMomentPathFunction.h.

◆ Pointer

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef itk::SmartPointer<Self> otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::Pointer

Definition at line 61 of file otbComplexMomentPathFunction.h.

◆ PrecisionType

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef Superclass::PrecisionType otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::PrecisionType

Type for calculation precision

Definition at line 85 of file otbComplexMomentPathFunction.h.

◆ RealType

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef double otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::RealType

Definition at line 82 of file otbComplexMomentPathFunction.h.

◆ Self

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef ComplexMomentPathFunction otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::Self

Standard class typedefs.

Definition at line 59 of file otbComplexMomentPathFunction.h.

◆ Superclass

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef GeometricMomentPathFunction<TInputPath, TOutput, TPrecision> otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::Superclass

Definition at line 60 of file otbComplexMomentPathFunction.h.

◆ VertexListPointer

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef VertexListType::ConstPointer otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::VertexListPointer

Definition at line 75 of file otbComplexMomentPathFunction.h.

◆ VertexListType

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef itk::VectorContainer<unsigned, VertexType> otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::VertexListType

Definition at line 74 of file otbComplexMomentPathFunction.h.

◆ VertexType

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
typedef PathType::ContinuousIndexType otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::VertexType

Definition at line 73 of file otbComplexMomentPathFunction.h.

Constructor & Destructor Documentation

◆ ComplexMomentPathFunction() [1/2]

template<class TInputPath , class TOutput , class TPrecision >
otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::ComplexMomentPathFunction
protected

Constructor

Definition at line 37 of file otbComplexMomentPathFunction.hxx.

◆ ~ComplexMomentPathFunction()

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::~ComplexMomentPathFunction ( )
inlineoverrideprotected

Evalulate the function

Definition at line 102 of file otbComplexMomentPathFunction.h.

◆ ComplexMomentPathFunction() [2/2]

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::ComplexMomentPathFunction ( const Self )
privatedelete

Evalulate the function

Member Function Documentation

◆ CreateAnother()

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
virtual::itk::LightObject::Pointer otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::CreateAnother ( void  ) const

◆ Evaluate() [1/2]

template<class TInputPath , class TOutput , class TPrecision >
ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::OutputType otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::Evaluate
virtual

Evalulate the function

Definition at line 164 of file otbComplexMomentPathFunction.hxx.

References otbMsgDevMacro.

◆ Evaluate() [2/2]

template<class TInputPath , class TOutput , class TPrecision >
ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::OutputType otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::Evaluate ( const PathType path) const
override

Evalulate the function

Definition at line 85 of file otbComplexMomentPathFunction.hxx.

◆ EvaluateComplexMomentAtIndex()

template<class TInputPath , class TOutput , class TPrecision >
ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::ComplexPrecisionType otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::EvaluateComplexMomentAtIndex ( VertexType  index) const
private

Evalulate the function

Definition at line 57 of file otbComplexMomentPathFunction.hxx.

◆ GetNameOfClass()

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
virtual const char* otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

◆ GetP()

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
virtual const unsigned int& otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::GetP ( ) const
virtual

Evalulate the function

◆ GetQ()

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
virtual const unsigned int& otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::GetQ ( ) const
virtual

Evalulate the function

◆ New()

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
static Pointer otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::New ( )
static

Method for creation through the object factory.

◆ operator=()

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
void otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::operator= ( const Self )
privatedelete

Evalulate the function

◆ PrintSelf()

template<class TInputPath , class TOutput , class TPrecision >
void otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
overrideprotected

Evalulate the function

Definition at line 47 of file otbComplexMomentPathFunction.hxx.

◆ SetP()

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
virtual void otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::SetP ( unsigned int  _arg)
virtual

Evalulate the function

◆ SetQ()

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
virtual void otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::SetQ ( unsigned int  _arg)
virtual

Evalulate the function

Member Data Documentation

◆ m_P

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
unsigned int otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::m_P
private

Evalulate the function

Definition at line 112 of file otbComplexMomentPathFunction.h.

◆ m_Q

template<class TInputPath , class TOutput = std::complex<double>, class TPrecision = double>
unsigned int otb::ComplexMomentPathFunction< TInputPath, TOutput, TPrecision >::m_Q
private

Evalulate the function

Definition at line 113 of file otbComplexMomentPathFunction.h.


The documentation for this class was generated from the following files: