#define LOTTIE_THREAD_SUPPORT
//enable logging
-#define LOTTIE_LOGGING_SUPPORT
+//#define LOTTIE_LOGGING_SUPPORT
//enable static building of image loader
//#define LOTTIE_STATIC_IMAGE_LOADER
#define VBITMAP_H
#include "vrect.h"
+#include <memory>
V_BEGIN_NAMESPACE
*/
#include "vdebug.h"
-#include "config.h"
+
+#ifdef LOTTIE_LOGGING_SUPPORT
+
#include <atomic>
#include <chrono>
#include <cstring>
loglevel.store(static_cast<unsigned int>(level), std::memory_order_release);
}
-#ifdef LOTTIE_LOGGING_SUPPORT
-
bool is_logged(LogLevel level)
{
return static_cast<unsigned int>(level) >=
loglevel.load(std::memory_order_relaxed);
}
-#else
-
-bool is_logged(LogLevel)
-{
- return false;
-}
-
-#endif
+#endif //LOTTIE_LOGGING_SUPPORT
#ifndef VDEBUG_H
#define VDEBUG_H
+
+#include "config.h"
+
+#ifdef LOTTIE_LOGGING_SUPPORT
+
#include <cstdint>
#include <iosfwd>
#include <memory>
#define vWarning is_logged(LogLevel::WARN) && VDEBUG_LOG(LogLevel::WARN)
#define vCritical is_logged(LogLevel::CRIT) && VDEBUG_LOG(LogLevel::CRIT)
+#else
+
+struct VDebug
+{
+ template<typename Args>
+ VDebug& operator<<(const Args &){return *this;}
+};
+
+#define vDebug VDebug()
+#define vWarning VDebug()
+#define vCritical VDebug()
+
+#endif //LOTTIE_LOGGING_SUPPORT
+
#endif // VDEBUG_H
#define VDRAWHELPER_H
#include <cstring>
+#include <memory>
#include "assert.h"
#include "vbitmap.h"
#include "vbrush.h"