From: HeeJu Kang Date: Thu, 6 Jun 2013 01:24:54 +0000 (+0900) Subject: Add dump X-Git-Tag: accepted/tizen/20130912.150013^2~78 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=eacc108e97f695918a818810e5e09d4fa0491a53;p=platform%2Fframework%2Fnative%2Fshell.git Add dump Change-Id: I8e8579c4ee3ce9ed1385aca9ffd6631e675bdebc Signed-off-by: HeeJu Kang --- diff --git a/src/FShell_AppWidgetViewManager.cpp b/src/FShell_AppWidgetViewManager.cpp index 9873d31..9e27578 100644 --- a/src/FShell_AppWidgetViewManager.cpp +++ b/src/FShell_AppWidgetViewManager.cpp @@ -380,6 +380,29 @@ _AppWidgetViewManager::IsGlMode(void) const } void +_AppWidgetViewManager::DumpBuffer(void* pBuffer, FloatDimension size, const char* pName) +{ + static int index = 0; + int buffSize = static_cast(size.width) * static_cast(size.height) * sizeof(int); + + char fileName[1024]; + memset(fileName, 0, sizeof(fileName)); + snprintf(fileName, sizeof(fileName), "./dump-%s-%d.raw", pName, index++); + + FILE* pFile = fopen(fileName, "w+b"); + if (pFile) + { + fwrite(pBuffer, buffSize, 1, pFile); + fclose(pFile); + SysSecureLog(NID_SHELL, "buffer (0x%x) buffSize (%d)", pBuffer, buffSize); + } + else + { + SysSecureLog(NID_SHELL, "File open failed: (%s) buffer (0x%x) buffSize (%d)", strerror(errno), pBuffer, buffSize); + } +} + +void _AppWidgetViewManager::DumpBuffer(unsigned int pixmap, const char* pName) { if (__pAppWidgetBuffer->GetPixmap() != pixmap) @@ -440,6 +463,10 @@ _AppWidgetViewManager::OnAppWidgetUpdated(livebox* pAppWidget) FloatDimension sourceSize = GetAppWidgetSize(pAppWidget); SysLog(NID_SHELL, "size [%d %d]", sourceSize.width, sourceSize.height); +#if defined(_DUMP_BUFFER) + DumpBuffer(pBuffer, sourceSize, "Box"); +#endif // _DUMP_BUFFER + unique_ptr pBitmap(GetBitmapN(pBuffer, sourceSize)); SysTryReturnVoidResult(NID_SHELL, pBitmap, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory is insufficient."); @@ -466,6 +493,10 @@ _AppWidgetViewManager::OnAppWidgetUpdated(livebox* pAppWidget) FloatDimension sourceSize = GetAppWidgetSize(pAppWidget); +#if defined(_DUMP_BUFFER) + DumpBuffer(pBuffer, sourceSize, "Box"); +#endif // _DUMP_BUFFER + unique_ptr pBitmap(GetBitmapN(pBuffer, sourceSize)); SysTryReturnVoidResult(NID_SHELL, pBitmap, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory is insufficient."); @@ -516,6 +547,10 @@ _AppWidgetViewManager::OnAppWidgetPopupUpdated(livebox* pAppWidget) FloatDimension sourceSize = GetAppWidgetPopupSize(pAppWidget); +#if defined(_DUMP_BUFFER) + DumpBuffer(pBuffer, sourceSize, "Popup"); +#endif // _DUMP_BUFFER + unique_ptr pBitmap(GetBitmapN(pBuffer, sourceSize)); SysTryReturnVoidResult(NID_SHELL, pBitmap, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory is insufficient."); @@ -541,6 +576,10 @@ _AppWidgetViewManager::OnAppWidgetPopupUpdated(livebox* pAppWidget) FloatDimension sourceSize = GetAppWidgetPopupSize(pAppWidget); +#if defined(_DUMP_BUFFER) + DumpBuffer(pBuffer, sourceSize, "Popup"); +#endif // _DUMP_BUFFER + unique_ptr pBitmap(GetBitmapN(pBuffer, sourceSize)); SysTryReturnVoidResult(NID_SHELL, pBitmap, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory is insufficient."); diff --git a/src/FShell_AppWidgetViewManager.h b/src/FShell_AppWidgetViewManager.h index e09dc49..1d4267e 100644 --- a/src/FShell_AppWidgetViewManager.h +++ b/src/FShell_AppWidgetViewManager.h @@ -78,6 +78,7 @@ private: Tizen::Graphics::Bitmap* GetBitmapN(const Tizen::Base::String& fileName) const; Tizen::Graphics::Bitmap* GetBitmapN(void* pBuffer, const Tizen::Graphics::FloatDimension& size) const; bool IsGlMode(void) const; + void DumpBuffer(void* pBuffer, Tizen::Graphics::FloatDimension size, const char* pName); void DumpBuffer(unsigned int pixmap, const char* pName); void OnAppWidgetCreated(livebox* pAppWidget);