IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Macros
ProcessingAlgorithmSrcDetailsMacros.h File Reference

Internal source part of macros set for processing algorithm class implementation. More...

#include <IPSDKBaseProcessing/Processor/ProcessorSrcMacros.h>
#include <IPSDKBaseProcessing/Logger/IPSDKBaseProcessingLog.h>
#include <IPSDKBaseProcessing/Algorithm/Function/AlgorithmFunctionLogMessages.h>
#include <boost/static_assert.hpp>

Go to the source code of this file.

Macros

#define IPSDK_ENUM_IDENTIFIER_VALUE_MACRO(z, n, dataTypeSeq)
 [Internal] macro allowing to enumerate data type identifiers underlying values More...
 
#define IPSDK_INIT_IDENTIFIER_FROM_VALUE_MACRO(r, _, idx, dataType)
 [Internal] macro allowing to generate a data type identifier from a value (first element is not proceeded) More...
 
#define IPSDK_REGISTER_ALGORITHM_FUNCTION_MACRO(className, dataTypeSeq, instructionSetsIdentifier, functionEfficiency)
 [Internal] macro allowing to register an image processing function More...
 

Detailed Description

Internal source part of macros set for processing algorithm class implementation.

Author
E. Noirfalise
Date
2014/02/17

Macro Definition Documentation

◆ IPSDK_ENUM_IDENTIFIER_VALUE_MACRO

#define IPSDK_ENUM_IDENTIFIER_VALUE_MACRO (   z,
  n,
  dataTypeSeq 
)
Value:
BOOST_PP_CAT(IPSDK_GET_IDENTIFIER_VALUE_, \
BOOST_PP_SEQ_ELEM(0, BOOST_PP_SEQ_ELEM(n, dataTypeSeq)))( \
BOOST_PP_SEQ_ELEM(1, BOOST_PP_SEQ_ELEM(n, dataTypeSeq)))

[Internal] macro allowing to enumerate data type identifiers underlying values

◆ IPSDK_INIT_IDENTIFIER_FROM_VALUE_MACRO

#define IPSDK_INIT_IDENTIFIER_FROM_VALUE_MACRO (   r,
  _,
  idx,
  dataType 
)
Value:
BOOST_PP_IF(idx, \
BOOST_PP_CAT(IPSDK_IDENTIFIER_TYPE_, BOOST_PP_SEQ_ELEM(0, dataType))() \
BOOST_PP_CAT(dataTypeIdentifier, BOOST_PP_DEC(idx)); \
BOOST_PP_CAT(IPSDK_INIT_IDENTIFIER_FROM_VALUE_, \
BOOST_PP_SEQ_ELEM(0, dataType))( \
BOOST_PP_CAT(dataTypeIdentifier, BOOST_PP_DEC(idx)), \
BOOST_PP_SEQ_ELEM(1, dataType)), \
)

[Internal] macro allowing to generate a data type identifier from a value (first element is not proceeded)

◆ IPSDK_REGISTER_ALGORITHM_FUNCTION_MACRO

#define IPSDK_REGISTER_ALGORITHM_FUNCTION_MACRO (   className,
  dataTypeSeq,
  instructionSetsIdentifier,
  functionEfficiency 
)
Value:
dataTypeIdColl.init(BOOST_PP_ENUM(BOOST_PP_DEC(BOOST_PP_SEQ_SIZE((_)dataTypeSeq)), \
functionId.init(dataTypeIdColl, instructionSetsIdentifier, \
functionEfficiency, functionPtr); \
bRegistred = functionSelector.registerFunction(functionId); \
if (bRegistred == false) \
errorMsgColl += bRegistred.getMsg() + "\n";
#define IPSDK_ENUM_DATATYPE_IDENTIFIER_MACRO(z, n, _)
[Internal] macro allowing to enumerate data type identifiers
Definition: ProcessingAlgorithmHdrDetailsMacros.h:30

[Internal] macro allowing to register an image processing function