Merge "(Actor) Fix mismatch between GetTargetSize method and Size property" into...
[platform/core/uifw/dali-core.git] / dali / integration-api / debug.h
index 38deddd..b22a5fe 100644 (file)
@@ -22,6 +22,7 @@
 #include <string>
 #include <sstream>
 #include <list>
+#include <stdint.h>
 
 // INTERNAL INCLUDES
 #include <dali/public-api/common/dali-common.h>
@@ -90,6 +91,8 @@ DALI_IMPORT_API void UninstallLogFunction();
 
 #define DALI_LOG_ERROR_NOFN(format, args...)     Dali::Integration::Log::LogMessage(Dali::Integration::Log::DebugError, format, ## args)
 
+#define DALI_LOG_WARNING_NOFN(format, args...)     Dali::Integration::Log::LogMessage(Dali::Integration::Log::DebugWarning, format, ## args)
+
 /**
  * Provides unfiltered logging for fps monitor
  */
@@ -251,7 +254,6 @@ public:
   static Filter *gElement;
   static Filter *gActor;
   static Filter *gShader;
-  static Filter *gDynamics;
 
 private:
   LogLevel mLoggingLevel;
@@ -484,7 +486,33 @@ DALI_IMPORT_API std::string MatrixToString(const Matrix& m, size_t precision=3,
 
 #endif
 
-}}} // Dali/Integration/Debug namespaces
+/********************************************************************************
+ *                            Time instrumentation                              *
+ ********************************************************************************/
+
+#if defined(DEBUG_ENABLED)
+
+void GetNanoseconds( uint64_t& timeInNanoseconds );
+
+#define DALI_LOG_TIMER_START( timeVariable )      \
+  uint64_t timeVariable##1; \
+  Debug::GetNanoseconds( timeVariable##1 );
+
+#define DALI_LOG_TIMER_END( timeVariable, filter, level, preString)  \
+  uint64_t timeVariable##2; \
+  Debug::GetNanoseconds( timeVariable##2 );                             \
+  DALI_LOG_INFO( filter, level, preString " %ld uSec\n", ((timeVariable##2-timeVariable##1)/1000));
+
+#else // DEBUG_ENABLED
+
+#define DALI_LOG_TIMER_START( timeVariable )
+#define DALI_LOG_TIMER_END( timeVariable, filter, level, preString)
+
+#endif
+
+} // Debug
+} // Integration
+} // Dali
 
 
 #endif // __DALI_INTEGRATION_DEBUG_H__