Tramway SDK
Macros
macros.h File Reference

Go to the source code of this file.

Macros

#define TRAM_SDK_REGISTER_EVENT_DATATYPE(EVENT_ID, TYPE)   template <> struct tram::EventDataType<EVENT_ID> { TYPE type; };
 This is experimental template. More...
 
#define TRAM_SDK_IMPLEMENT_POOL(TYPE, NAME, SIZE)   template <> Pool<TYPE> PoolProxy<TYPE>::pool (NAME, SIZE);
 Implements a pool. More...
 
#define TRAM_SDK_ASSERT(EXPRESSION)   if (!(EXPRESSION)) { Log("{}\nAssert at line {} in {}", #EXPRESSION, __LINE__, __FILE__); abort(); }
 
#define TRAM_SDK_ASSERT_MESSAGE(EXPRESSION, MESSAGE)   if (!(EXPRESSION)) { Log("{}\n{}\nAssert at line {} in {}", MESSAGE, #EXPRESSION, __LINE__, __FILE__); abort(); }
 

Macro Definition Documentation

◆ TRAM_SDK_ASSERT

#define TRAM_SDK_ASSERT (   EXPRESSION)    if (!(EXPRESSION)) { Log("{}\nAssert at line {} in {}", #EXPRESSION, __LINE__, __FILE__); abort(); }

◆ TRAM_SDK_ASSERT_MESSAGE

#define TRAM_SDK_ASSERT_MESSAGE (   EXPRESSION,
  MESSAGE 
)    if (!(EXPRESSION)) { Log("{}\n{}\nAssert at line {} in {}", MESSAGE, #EXPRESSION, __LINE__, __FILE__); abort(); }

◆ TRAM_SDK_IMPLEMENT_POOL

#define TRAM_SDK_IMPLEMENT_POOL (   TYPE,
  NAME,
  SIZE 
)    template <> Pool<TYPE> PoolProxy<TYPE>::pool (NAME, SIZE);

Implements a pool.

◆ TRAM_SDK_REGISTER_EVENT_DATATYPE

#define TRAM_SDK_REGISTER_EVENT_DATATYPE (   EVENT_ID,
  TYPE 
)    template <> struct tram::EventDataType<EVENT_ID> { TYPE type; };

This is experimental template.