+DALI_CORE_API void LogMessage(enum DebugPriority level, const char* format, ...);
+
+/**
+ * Prefix macros to sync with dlog logger format
+ * __MODULE__ macro also defined at dlog-internal.h
+ */
+#ifndef DALI_LOG_FORMAT_PREFIX
+#ifndef __MODULE__
+#define __MODULE__ (std::strrchr(__FILE__, '/') ? std::strrchr(__FILE__, '/') + 1 : __FILE__)
+#endif
+#define DALI_LOG_FORMAT_PREFIX "%s: %s(%d) > "
+#define DALI_LOG_FORMAT_PREFIX_ARGS __MODULE__, __func__, __LINE__
+#endif
+
+/**
+ * Global logging macros to log a message along with function/class name and line
+ * @param level debug level
+ * @param format string format
+ */
+#define LogMessageWithFunctionLine(level, format, ...) \
+ LogMessage(level, \
+ (std::string(DALI_LOG_FORMAT_PREFIX) + std::string(format)).c_str(), \
+ DALI_LOG_FORMAT_PREFIX_ARGS, \
+ ##__VA_ARGS__)