summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Lorenz <jlorenz@de.adit-jv.com>2018-05-15 17:20:55 +0200
committerJens Lorenz <jlorenz@de.adit-jv.com>2018-06-20 16:59:02 +0200
commit1a1e39f47fa81308f2208fa29d98b4ddedc20453 (patch)
treec717cfd8318c06a981f05667b5102a2d46497b85
parent6969c67f12736a489c8a93d3d8505f4778894120 (diff)
downloadaudiomanager-1a1e39f47fa81308f2208fa29d98b4ddedc20453.tar.gz
AMCore: Rework of preprocessor defines to improve readability
Signed-off-by: Jens Lorenz <jlorenz@de.adit-jv.com>
-rw-r--r--AudioManagerCore/include/CAmDatabaseHandlerMap.h140
-rw-r--r--AudioManagerCore/include/CAmLog.h2
-rw-r--r--AudioManagerCore/include/CAmRouter.h13
-rw-r--r--AudioManagerCore/src/CAmLog.cpp4
4 files changed, 57 insertions, 102 deletions
diff --git a/AudioManagerCore/include/CAmDatabaseHandlerMap.h b/AudioManagerCore/include/CAmDatabaseHandlerMap.h
index 3686027..2a3a9ec 100644
--- a/AudioManagerCore/include/CAmDatabaseHandlerMap.h
+++ b/AudioManagerCore/include/CAmDatabaseHandlerMap.h
@@ -258,109 +258,65 @@ public:
/**
* The following structures extend the base structures with the field 'reserved'.
*/
-
-#define AM_SUBCLASS_BEGIN(Subclass, Class) \
- typedef struct Subclass : public Class\
- {
-
-#define AM_SUBCLASS_CONSTR(Subclass, Class) \
- Subclass():Class()
-
-#define AM_SUBCLASS_CONSTR_BODY()\
- {};
-
-#define AM_SUBCLASS_COPY_OP_START(Subclass, Class) \
- Subclass & operator=(const Subclass & anObject)\
- {\
- if (this != &anObject)\
- {\
- Class::operator=(anObject);
-
-#define AM_SUBCLASS_COPY_OP_END()\
- }\
- return *this;\
- };
-
-#define AM_SUBCLASS_OP(Subclass, Class) \
- Subclass & operator=(const Class & anObject)\
- {\
- if (this != &anObject)\
- Class::operator=(anObject);\
- return *this;\
- };
-
-#define AM_SUBCLASS_END(Typedef) \
- void getDescription (std::string & outString) const;\
- } Typedef;
-
-#define AM_TYPEDEF_SUBCLASS_RESERVED_FLAG_BEGIN(Subclass, Class)\
- AM_SUBCLASS_BEGIN(Subclass, Class)\
- bool reserved;\
- AM_SUBCLASS_CONSTR(Subclass, Class)\
- ,reserved(false)\
- AM_SUBCLASS_CONSTR_BODY()\
- AM_SUBCLASS_COPY_OP_START(Subclass, Class)\
- reserved = anObject.reserved;\
- AM_SUBCLASS_COPY_OP_END()\
- AM_SUBCLASS_OP(Subclass, Class)\
-
-#define AM_TYPEDEF_SUBCLASS_SOUND_PROPERTIES_BEGIN(Subclass, Class)\
- AM_SUBCLASS_BEGIN(Subclass, Class)\
- bool reserved;\
- std::unordered_map<am_CustomSoundPropertyType_t, int16_t> cacheSoundProperties;\
- std::unordered_map<am_CustomMainSoundPropertyType_t, int16_t> cacheMainSoundProperties;\
- AM_SUBCLASS_CONSTR(Subclass, Class)\
- ,reserved(false), cacheSoundProperties(), cacheMainSoundProperties()\
- AM_SUBCLASS_CONSTR_BODY()\
- AM_SUBCLASS_COPY_OP_START(Subclass, Class)\
- reserved = anObject.reserved;\
- cacheSoundProperties = anObject.cacheSoundProperties;\
- cacheMainSoundProperties = anObject.cacheMainSoundProperties;\
- AM_SUBCLASS_COPY_OP_END()\
- AM_SUBCLASS_OP(Subclass, Class)\
-
-#define AM_TYPEDEF_SUBCLASS_BEGIN(Subclass, Class)\
- AM_SUBCLASS_BEGIN(Subclass, Class)\
- AM_SUBCLASS_COPY_OP_START(Subclass, Class)\
- AM_SUBCLASS_COPY_OP_END()\
- AM_SUBCLASS_OP(Subclass, Class)\
+#define AM_SUBCLASS(TYPE, SUBCLASS, CLASS, MEMBER, ASSIGN) \
+ typedef struct SUBCLASS : public CLASS \
+ { \
+ MEMBER \
+ bool reserved; \
+ SUBCLASS() : CLASS(), reserved(false) {} \
+ SUBCLASS & operator=(const SUBCLASS &anObject) \
+ { \
+ if (this != &anObject) \
+ { \
+ CLASS::operator=(anObject); \
+ reserved = anObject.reserved; \
+ ASSIGN \
+ } \
+ return *this; \
+ } \
+ SUBCLASS & operator=(const CLASS & anObject) \
+ { \
+ if (this != &anObject) { \
+ CLASS::operator=(anObject);} \
+ return *this; \
+ } \
+ void getDescription(std::string & outString) const; \
+ } TYPE \
+
+#define AM_SUBLCASS_ADD_MAP_TYPE(TYPE, NAME) std::unordered_map<TYPE, int16_t> NAME;
+#define AM_SUBLCASS_ADD_ASSIGNMENT(NAME) NAME = anObject.NAME;
private:
- AM_TYPEDEF_SUBCLASS_RESERVED_FLAG_BEGIN(am_Domain_Database_s,am_Domain_s)
- AM_SUBCLASS_END(AmDomain)
+ AM_SUBCLASS(AmDomain, am_Domain_Database_s, am_Domain_s, , );
- AM_TYPEDEF_SUBCLASS_SOUND_PROPERTIES_BEGIN(am_Sink_Database_s,am_Sink_s)
- void getSinkType(am_SinkType_s & sinkType) const;\
- AM_SUBCLASS_END(AmSink)
+ AM_SUBCLASS(AmSink, am_Sink_Database_s, am_Sink_s, \
+ void getSinkType(am_SinkType_s & sinkType) const; \
+ AM_SUBLCASS_ADD_MAP_TYPE(am_CustomSoundPropertyType_t, cacheSoundProperties) \
+ AM_SUBLCASS_ADD_MAP_TYPE(am_CustomMainSoundPropertyType_t, cacheMainSoundProperties), \
+ AM_SUBLCASS_ADD_ASSIGNMENT(cacheSoundProperties) \
+ AM_SUBLCASS_ADD_ASSIGNMENT(cacheMainSoundProperties) );
- AM_TYPEDEF_SUBCLASS_SOUND_PROPERTIES_BEGIN(am_Source_Database_s,am_Source_s)
- void getSourceType(am_SourceType_s & sourceType) const;\
- AM_SUBCLASS_END(AmSource)
+ AM_SUBCLASS(AmSource, am_Source_Database_s, am_Source_s,
+ void getSourceType(am_SourceType_s & sourceType) const; \
+ AM_SUBLCASS_ADD_MAP_TYPE(am_CustomSoundPropertyType_t, cacheSoundProperties) \
+ AM_SUBLCASS_ADD_MAP_TYPE(am_CustomMainSoundPropertyType_t, cacheMainSoundProperties), \
+ AM_SUBLCASS_ADD_ASSIGNMENT(cacheSoundProperties) \
+ AM_SUBLCASS_ADD_ASSIGNMENT(cacheMainSoundProperties) );
- AM_TYPEDEF_SUBCLASS_RESERVED_FLAG_BEGIN(am_Connection_Database_s,am_Connection_s)
- AM_SUBCLASS_END(AmConnection)
+ AM_SUBCLASS(AmConnection, am_Connection_Database_s, am_Connection_s, , );
- /**
- * The following structures extend the base structures with print capabilities.
- */
- AM_TYPEDEF_SUBCLASS_BEGIN(am_MainConnection_Database_s, am_MainConnection_s)
- void getMainConnectionType(am_MainConnectionType_s & connectionType) const;\
- AM_SUBCLASS_END(AmMainConnection)
+ AM_SUBCLASS(AmMainConnection, am_MainConnection_Database_s, am_MainConnection_s,
+ void getMainConnectionType(am_MainConnectionType_s & connectionType) const;, );
- AM_TYPEDEF_SUBCLASS_BEGIN(am_SourceClass_Database_s, am_SourceClass_s)
- AM_SUBCLASS_END(AmSourceClass)
+ AM_SUBCLASS(AmSourceClass, am_SourceClass_Database_s, am_SourceClass_s, , );
- AM_TYPEDEF_SUBCLASS_BEGIN(am_SinkClass_Database_s, am_SinkClass_s)
- AM_SUBCLASS_END(AmSinkClass)
+ AM_SUBCLASS(AmSinkClass, am_SinkClass_Database_s, am_SinkClass_s, , );
- AM_TYPEDEF_SUBCLASS_BEGIN(am_Gateway_Database_s, am_Gateway_s)
- AM_SUBCLASS_END(AmGateway)
+ AM_SUBCLASS(AmGateway, am_Gateway_Database_s, am_Gateway_s, , );
- AM_TYPEDEF_SUBCLASS_BEGIN(am_Converter_Database_s, am_Converter_s)
- AM_SUBCLASS_END(AmConverter)
+ AM_SUBCLASS(AmConverter, am_Converter_Database_s, am_Converter_s, , );
- AM_TYPEDEF_SUBCLASS_BEGIN(am_Crossfader_Database_s, am_Crossfader_s)
- AM_SUBCLASS_END(AmCrossfader)
+ AM_SUBCLASS(AmCrossfader, am_Crossfader_Database_s, am_Crossfader_s, , );
typedef std::unordered_map<am_domainID_t, AmDomain> AmMapDomain;
diff --git a/AudioManagerCore/include/CAmLog.h b/AudioManagerCore/include/CAmLog.h
index 35c6a41..cf7a3a6 100644
--- a/AudioManagerCore/include/CAmLog.h
+++ b/AudioManagerCore/include/CAmLog.h
@@ -44,7 +44,7 @@
#define DEFAULT_LOGFILE_PREFIX "am_dump_"
#define DEFAULT_LOGFILE_EXT ".log"
-#define DEL( aPointer ) delete aPointer, aPointer = NULL;
+#define DEL( aPointer ) delete aPointer, aPointer = NULL
/* */
typedef enum { eCAmLogNone = 0, eCAmLogStdout = 1, eCAmLogFile = 2 } eCAmLogType;
diff --git a/AudioManagerCore/include/CAmRouter.h b/AudioManagerCore/include/CAmRouter.h
index 88f73ea..f62141a 100644
--- a/AudioManagerCore/include/CAmRouter.h
+++ b/AudioManagerCore/include/CAmRouter.h
@@ -75,8 +75,7 @@ namespace am
*/
struct am_RoutingNodeData_s
{
- typedef enum
- :int
+ typedef enum:int
{ SINK, SOURCE, GATEWAY, CONVERTER
} am_NodeDataType_e;
am_NodeDataType_e type; //!< data type:sink, source, gateway or converter
@@ -114,18 +113,18 @@ namespace am
#ifdef TRACE_GRAPH
#define COUT_NODE(HEAD, NAME, ID) \
- std::cout << HEAD << "(" << std::setfill('0') << std::setw(4) << ID << " " << NAME << ")";
+ std::cout << HEAD << "(" << std::setfill('0') << std::setw(4) << ID << " " << NAME << ")"
void trace() const
{
if(type==SINK)
- COUT_NODE("SI", data.sink->name, data.sink->sinkID )
+ COUT_NODE("SI", data.sink->name, data.sink->sinkID );
else if(type==SOURCE)
- COUT_NODE("SO", data.source->name, data.source->sourceID )
+ COUT_NODE("SO", data.source->name, data.source->sourceID );
else if(type==GATEWAY)
- COUT_NODE("GA", data.gateway->name, data.gateway->gatewayID )
+ COUT_NODE("GA", data.gateway->name, data.gateway->gatewayID );
else if(type==CONVERTER)
- COUT_NODE("CO", data.converter->name, data.converter->converterID )
+ COUT_NODE("CO", data.converter->name, data.converter->converterID );
};
#endif
diff --git a/AudioManagerCore/src/CAmLog.cpp b/AudioManagerCore/src/CAmLog.cpp
index f68f660..5e58f27 100644
--- a/AudioManagerCore/src/CAmLog.cpp
+++ b/AudioManagerCore/src/CAmLog.cpp
@@ -42,7 +42,7 @@ CAmLog::CAmFileLogger::~CAmFileLogger()
{
std::ofstream* of = static_cast<std::ofstream*>(mOutputStream);
of->close();
- DEL(mOutputStream)
+ DEL(mOutputStream);
}
}
@@ -64,7 +64,7 @@ CAmLog::~CAmLog()
void CAmLog::releaseLogger()
{
if(mLogger)
- DEL(mLogger)
+ DEL(mLogger);
}
void CAmLog::instantiateLogger( const eCAmLogType type)