IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Namespaces | Macros
ProcessorDispatcherMacros.h File Reference

Macros set for processor dispatcher management. More...

#include <IPSDKBaseProcessing/IPSDKBaseProcessingExports.h>
#include <IPSDKBaseProcessing/Attribute/Macros/AttributeCollInfoCheckMacros.h>

Go to the source code of this file.

Namespaces

 ipsdk
 Main namespace for IPSDK library.
 

Macros

#define IPSDK_DISPATCHER_DEFINE_COLLINFO_MACRO(z, n, data)   typename BOOST_PP_CAT(SplitType, n)::AttributeType
 [Internal] sub macro allowing to retrieve attribute type associated to a DataSplit object
 
#define IPSDK_DISPATCHER_CHECK_ATTRIBUTE_EXISTS_MACRO(z, n, data)
 [Internal] sub macro allowing to check whether an attribute exists More...
 
#define IPSDK_DISPATCHER_CHECK_SAME_PROCESSOR_MACRO(z, n, data)
 [Internal] macro allowing to check whether dispatcher processor and a DataSplit processor are equal More...
 
#define IPSDK_DISPATCHER_PUSH_DATASPLIT_MACRO(z, n, data)   dataSplitColl.push_back(BOOST_PP_CAT(pSplitOperation, n));
 [Internal] sub macro allowing to write push statement for data split object
 
#define IPSDK_DEFINE_DISPATCHER_INIT_FUNCTION_MACRO(z, FunIdx, data)
 [Internal] sub macro allowing to define dispatcher init functions
 
#define IPSDK_DEFINE_DISPATCHER_INIT_FUNCTION()   BOOST_PP_REPEAT(IPSDK_ATTRIBUTE_COLL_SIZE, IPSDK_DEFINE_DISPATCHER_INIT_FUNCTION_MACRO, )
 macro allowing to define dispatcher init functions
 

Detailed Description

Macros set for processor dispatcher management.

Author
E. Noirfalise
Date
2013/10/2

Macro Definition Documentation

◆ IPSDK_DISPATCHER_CHECK_ATTRIBUTE_EXISTS_MACRO

#define IPSDK_DISPATCHER_CHECK_ATTRIBUTE_EXISTS_MACRO (   z,
  n,
  data 
)
Value:
{BOOST_STATIC_ASSERT_MSG( \
(ExistsAttribute<typename BOOST_PP_CAT(SplitType,n)::AttributeType, \
typename TProcessor::AttributesInfo>::g_bValue), \
"Invalid attribute, parameter " #n " is not part of current processor class");}

[Internal] sub macro allowing to check whether an attribute exists

◆ IPSDK_DISPATCHER_CHECK_SAME_PROCESSOR_MACRO

#define IPSDK_DISPATCHER_CHECK_SAME_PROCESSOR_MACRO (   z,
  n,
  data 
)
Value:
{BOOST_STATIC_ASSERT_MSG( \
(boost::is_same<typename BOOST_PP_CAT(SplitType,n)::ProcessorType, \
TProcessor>::value), \
"Processor type mismatch between dispatcher and split operator " #n);}

[Internal] macro allowing to check whether dispatcher processor and a DataSplit processor are equal