MeVisLab Toolbox Reference
ml::internal::TypedHandlerBase< BaseClass, Derived, NumberOfInputImages > Class Template Reference

The base class for TypedCalculateOutputImageHandler and TypedProcessAllPagesHandler. More...

#include <mlTypedHandlers.h>

Inheritance diagram for ml::internal::TypedHandlerBase< BaseClass, Derived, NumberOfInputImages >:
ml::TypedCalculateOutputImageHandler< AlgorithmModuleExampleWithOutputImageOutputImageHandler, 1, ScalarTypes > ml::AlgorithmModuleExampleWithOutputImageOutputImageHandler

Public Types

enum  {
  OutputSubImage_Type = MLVariableType0 , InputSubImage0_Type = MLVariableType1 , InputSubImage1_Type = MLVariableType2 , InputSubImage2_Type = MLVariableType3 ,
  InputSubImage3_Type = MLVariableType3 , InputSubImage4_Type = MLVariableType3 , InputSubImage5_Type = MLVariableType3 , InputSubImage6_Type = MLVariableType3 ,
  InputSubImage7_Type = MLVariableType3 , InputSubImage8_Type = MLVariableType3 , InputSubImage9_Type = MLVariableType3 , InputSubImage0_ReadOnly = true ,
  InputSubImage1_ReadOnly = true , InputSubImage2_ReadOnly = true , InputSubImage3_ReadOnly = true , InputSubImage4_ReadOnly = true ,
  InputSubImage5_ReadOnly = true , InputSubImage6_ReadOnly = true , InputSubImage7_ReadOnly = true , InputSubImage8_ReadOnly = true ,
  InputSubImage9_ReadOnly = true
}
 

Public Member Functions

 TypedHandlerBase ()
 
void calculateOutputSubImage (SubImage *outImg, SubImage *inImgs, UserThreadData *userThreadData) override
 Overrides the calculateOutputSubImage of CalculateOutputImageHandler. More...
 

Static Public Member Functions

static void setupKnownProperties (PagedImage *outImg)
 Setup the properties of the outImg and its input sub images according to the settings of OutputSubImage_Type, InputSubImage[0-9]_Type, ... More...
 
static bool verifyProperties (PagedImage *outImg)
 Verify the properties of the outImg (its datatype and the datatypes of the input sub images compared with the static properties of the variable types and fixed datatypes). More...
 

Detailed Description

template<class BaseClass, class Derived, int NumberOfInputImages>
class ml::internal::TypedHandlerBase< BaseClass, Derived, NumberOfInputImages >

The base class for TypedCalculateOutputImageHandler and TypedProcessAllPagesHandler.

The main purpose of this class is to delegate the virtual calculateOutputSubImage call to the correct typedCalculateOutputSubImage method of the derived class, depending on the number of input images (NumberOfInputImages).

Definition at line 244 of file mlTypedHandlers.h.

Member Enumeration Documentation

◆ anonymous enum

template<class BaseClass , class Derived , int NumberOfInputImages>
anonymous enum
Enumerator
OutputSubImage_Type 

Defines which type to use for the output TSubImage (either MLVariableType[N] or ML datatypes)

InputSubImage0_Type 

Defines which type to use for the input0 TSubImage (either MLVariableType[N] or ML datatypes)

InputSubImage1_Type 

Defines which type to use for the input1 TSubImage (either MLVariableType[N] or ML datatypes)

InputSubImage2_Type 

Defines which type to use for the input2 TSubImage (either MLVariableType[N] or ML datatypes)

InputSubImage3_Type 

Defines which type to use for the input3 TSubImage (either MLVariableType[N] or ML datatypes)

InputSubImage4_Type 

Defines which type to use for the input4 TSubImage (either MLVariableType[N] or ML datatypes)

InputSubImage5_Type 

Defines which type to use for the input5 TSubImage (either MLVariableType[N] or ML datatypes)

InputSubImage6_Type 

Defines which type to use for the input6 TSubImage (either MLVariableType[N] or ML datatypes)

InputSubImage7_Type 

Defines which type to use for the input7 TSubImage (either MLVariableType[N] or ML datatypes)

InputSubImage8_Type 

Defines which type to use for the input8 TSubImage (either MLVariableType[N] or ML datatypes)

InputSubImage9_Type 

Defines which type to use for the input9 TSubImage (either MLVariableType[N] or ML datatypes)

InputSubImage0_ReadOnly 

Defines if the input0 TSubImage will be used const only.

InputSubImage1_ReadOnly 

Defines if the input1 TSubImage will be used const only.

InputSubImage2_ReadOnly 

Defines if the input2 TSubImage will be used const only.

InputSubImage3_ReadOnly 

Defines if the input3 TSubImage will be used const only.

InputSubImage4_ReadOnly 

Defines if the input4 TSubImage will be used const only.

InputSubImage5_ReadOnly 

Defines if the input5 TSubImage will be used const only.

InputSubImage6_ReadOnly 

Defines if the input6 TSubImage will be used const only.

InputSubImage7_ReadOnly 

Defines if the input7 TSubImage will be used const only.

InputSubImage8_ReadOnly 

Defines if the input8 TSubImage will be used const only.

InputSubImage9_ReadOnly 

Defines if the input9 TSubImage will be used const only.

Definition at line 248 of file mlTypedHandlers.h.

Constructor & Destructor Documentation

◆ TypedHandlerBase()

template<class BaseClass , class Derived , int NumberOfInputImages>
ml::internal::TypedHandlerBase< BaseClass, Derived, NumberOfInputImages >::TypedHandlerBase ( )
inline

Definition at line 274 of file mlTypedHandlers.h.

Member Function Documentation

◆ calculateOutputSubImage()

template<class BaseClass , class Derived , int NumberOfInputImages>
void ml::internal::TypedHandlerBase< BaseClass, Derived, NumberOfInputImages >::calculateOutputSubImage ( SubImage outImg,
SubImage inImgs,
UserThreadData userThreadData 
)
inlineoverride

Overrides the calculateOutputSubImage of CalculateOutputImageHandler.

Definition at line 309 of file mlTypedHandlers.h.

References _ML_OUTPUTINDEX.

◆ setupKnownProperties()

template<class BaseClass , class Derived , int NumberOfInputImages>
static void ml::internal::TypedHandlerBase< BaseClass, Derived, NumberOfInputImages >::setupKnownProperties ( PagedImage outImg)
inlinestatic

Setup the properties of the outImg and its input sub images according to the settings of OutputSubImage_Type, InputSubImage[0-9]_Type, ...

and InputSubImage[0-9]_ReadOnly.

Definition at line 544 of file mlTypedHandlers.h.

References _ML_COLLECT_ENUMS.

◆ verifyProperties()

template<class BaseClass , class Derived , int NumberOfInputImages>
static bool ml::internal::TypedHandlerBase< BaseClass, Derived, NumberOfInputImages >::verifyProperties ( PagedImage outImg)
inlinestatic

Verify the properties of the outImg (its datatype and the datatypes of the input sub images compared with the static properties of the variable types and fixed datatypes).

Sets a useful error message and invalidates the outImg in case of errors.

Definition at line 553 of file mlTypedHandlers.h.

References _ML_COLLECT_ENUMS, _ML_OUTPUTINDEX, ml::PagedImage::isValid(), ML_BAD_DATA_TYPE, MLNameFromDataType(), ml::PagedImage::setInvalid(), and ml::PagedImage::setStateInfo().


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