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

Header part of macros set allowing to manager log messages map into libraries. More...

#include <IPSDKUtil/Logger/LogMessageManagerHdrDetailsMacros.h>

Go to the source code of this file.

Macros

#define DECLARE_LOG_MESSAGE_MAP(libraryName, enumTypeStr, enumSeq)
 macro allowing to declare a message map for a given library libraryName and a given enumerate enumTypeStr More...
 

Detailed Description

Header part of macros set allowing to manager log messages map into libraries.

Author
E. Noirfalise
Date
2014/03/18

Macro Definition Documentation

◆ DECLARE_LOG_MESSAGE_MAP

#define DECLARE_LOG_MESSAGE_MAP (   libraryName,
  enumTypeStr,
  enumSeq 
)
Value:
BOOST_ENUM(enumTypeStr, \
BOOST_PP_IF( \
BOOST_PP_DEC(BOOST_PP_SEQ_SIZE((_)enumSeq)), \
enumSeq, \
(__EmptyEnum__))) \
template <typename EnumType, typename Derived> \
struct IPSDK_LIB_API(libraryName) MsgMapRegistrator; \
template <typename Derived> \
struct MsgMapRegistrator<enumTypeStr, Derived> \
{ \
static bool registerMessageMap() { \
static bool g_bAlreadyRegistred = false; \
if (g_bAlreadyRegistred == false) { \
g_bAlreadyRegistred = true; \
ipsdk::LogMessageManager& msgManager = \
BOOST_PP_SEQ_FOR_EACH_I(ADD_LOG_MSG_ITEM_MACRO, \
enumTypeStr, (_)enumSeq); \
} \
return true; \
} \
};
#define IPSDK_LIB_API(libraryName)
macro allowing to format macro name used to retrieve a library api macro given its base name ...
static LogMessageManager & getInstance(const std::string &libraryName)
retrieve singleton instance of message
#define ADD_LOG_MSG_ITEM_MACRO(r, enumTypeStr, i, msgId)
[Internal] macro allowing to add a message item to message map
Definition: LogMessageManagerHdrDetailsMacros.h:41

macro allowing to declare a message map for a given library libraryName and a given enumerate enumTypeStr