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

Base macros set for IPSDK library. More...

#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/stringize.hpp>
#include <boost/preprocessor/seq/for_each.hpp>

Go to the source code of this file.

Macros

#define IPSDK_LIB_API(libraryName)   BOOST_PP_CAT(IPSDK_LIB_API_, libraryName)()
 macro allowing to format macro name used to retrieve a library api macro given its base name
 
#define IPSDK_LIB_NAMESPACE(libraryName)   BOOST_PP_CAT(IPSDK_LIB_NAMESPACE_, libraryName)()
 macro allowing to format macro name used to retrieve a library base namespace given its base name
 
#define IPSDK_LIB_EXCEPTION(libraryName)
 macro allowing to retrieve a library exception class given its base name More...
 
#define IPSDK_LIB_LOGGER_NAME(libraryName)
 macro allowing to retrieve a library logger name getter function given its base name More...
 
#define IPSDK_LIB_LOGGER(libraryName)
 macro allowing to retrieve a library logger getter function given its base name More...
 
#define IPSDK_LIB_LOG_MSG_MANAGER(libraryName)
 macro allowing to retrieve a library log message manager getter function given its base name More...
 
#define IPSDK_START_NAMESPACE_MACRO(r, data, namespaceName)   namespace namespaceName {
 [INTERNAL] macro allowing to print namespaces begining
 
#define IPSDK_START_NAMESPACE(namespaceSeq)   BOOST_PP_SEQ_FOR_EACH_R(200, IPSDK_START_NAMESPACE_MACRO, _, namespaceSeq)
 macro allowing to print namespaces begining
 
#define IPSDK_END_NAMESPACE_MACRO(r, data, namespaceName)   }
 [INTERNAL] macro allowing to print namespaces ending
 
#define IPSDK_END_NAMESPACE(namespaceSeq)   BOOST_PP_SEQ_FOR_EACH_R(200, IPSDK_END_NAMESPACE_MACRO, _, namespaceSeq)
 macro allowing to print namespaces ending
 
#define IPSDK_NAMESPACE_NAME_MACRO(r, data, namespaceName)   namespaceName::
 [INTERNAL] macro allowing to print full namespace name
 
#define IPSDK_NAMESPACE_NAME(namespaceSeq)   BOOST_PP_SEQ_FOR_EACH_R(200, IPSDK_NAMESPACE_NAME_MACRO, _, namespaceSeq)
 macro allowing to print full namespace name
 
#define IPSDK_FULL_NAMESPACE_STR_MACRO(r, _, namespaceName)   BOOST_PP_STRINGIZE(namespaceName) "::"
 [INTERNAL] macro allowing to retrieve string associated to a namespace sequence
 
#define IPSDK_FULL_NAMESPACE_STR(namespaceSeq)   BOOST_PP_SEQ_FOR_EACH_R(200, IPSDK_FULL_NAMESPACE_STR_MACRO, _, namespaceSeq)
 macro allowing to retrieve string associated to a namespace sequence
 
#define IPSDK_FULL_CLASSNAME_STR(namespaceSeq, className)
 macro allowing to retrieve string associated to a class name and a namespace sequence More...
 

Detailed Description

Base macros set for IPSDK library.

Author
E. Noirfalise
Date
2013/10/8

Macro Definition Documentation

◆ IPSDK_LIB_EXCEPTION

#define IPSDK_LIB_EXCEPTION (   libraryName)
Value:
IPSDK_LIB_NAMESPACE(libraryName) :: \
BOOST_PP_CAT(libraryName, Exception)
#define IPSDK_LIB_NAMESPACE(libraryName)
macro allowing to format macro name used to retrieve a library base namespace given its base name ...
Definition: BaseMacros.h:34

macro allowing to retrieve a library exception class given its base name

◆ IPSDK_LIB_LOGGER_NAME

#define IPSDK_LIB_LOGGER_NAME (   libraryName)
Value:
IPSDK_LIB_NAMESPACE(libraryName) :: \
BOOST_PP_CAT(get, BOOST_PP_CAT(libraryName, LoggerName))()
#define IPSDK_LIB_NAMESPACE(libraryName)
macro allowing to format macro name used to retrieve a library base namespace given its base name ...
Definition: BaseMacros.h:34

macro allowing to retrieve a library logger name getter function given its base name

◆ IPSDK_LIB_LOGGER

#define IPSDK_LIB_LOGGER (   libraryName)
Value:
IPSDK_LIB_NAMESPACE(libraryName) :: \
BOOST_PP_CAT(get, BOOST_PP_CAT(libraryName, Logger))()
#define IPSDK_LIB_NAMESPACE(libraryName)
macro allowing to format macro name used to retrieve a library base namespace given its base name ...
Definition: BaseMacros.h:34

macro allowing to retrieve a library logger getter function given its base name

◆ IPSDK_LIB_LOG_MSG_MANAGER

#define IPSDK_LIB_LOG_MSG_MANAGER (   libraryName)
Value:
IPSDK_LIB_NAMESPACE(libraryName) :: \
BOOST_PP_CAT(get, BOOST_PP_CAT(libraryName, LogMessageManager))()
#define IPSDK_LIB_NAMESPACE(libraryName)
macro allowing to format macro name used to retrieve a library base namespace given its base name ...
Definition: BaseMacros.h:34

macro allowing to retrieve a library log message manager getter function given its base name

◆ IPSDK_FULL_CLASSNAME_STR

#define IPSDK_FULL_CLASSNAME_STR (   namespaceSeq,
  className 
)
Value:
IPSDK_FULL_NAMESPACE_STR(namespaceSeq) \
BOOST_PP_STRINGIZE(className)
#define IPSDK_FULL_NAMESPACE_STR(namespaceSeq)
macro allowing to retrieve string associated to a namespace sequence
Definition: BaseMacros.h:106

macro allowing to retrieve string associated to a class name and a namespace sequence