diff -r 7d48bed6ce0c -r 987c9837762f telutils/keysequencerecognitionservice/inc/keysequencerecognitionservicelog.h --- a/telutils/keysequencerecognitionservice/inc/keysequencerecognitionservicelog.h Tue Aug 31 15:45:17 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -/*! -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Definitions for key sequence recognition component. -* -*/ - -#ifndef KEYSEQUENCERECOGNITIONSERVICELOG_H -#define KEYSEQUENCERECOGNITIONSERVICELOG_H - -#include - -class MethodEntryExitDebugPrint -{ -public: - MethodEntryExitDebugPrint(const char* methodDescription) - : - m_methodDescription(0), - m_stackFrame(0) - { -#ifdef __WINS__ - // Workaround for exception detection as MSL runtime has a bug in - // std::uncaught_exception() implementation. - int stackFrame = 0; - _asm( mov stackFrame, ebp ); - m_stackFrame = stackFrame; -#endif - m_methodDescription = methodDescription; - qDebug() << m_methodDescription << "IN"; - }; - - ~MethodEntryExitDebugPrint() - { -#ifdef __WINS__ - // Workaround for exception detection as MSL runtime has a bug in - // std::uncaught_exception() implementation. - int stackFrame = 0; - int returnValue = -1; - _asm( mov stackFrame, ebp ); - _asm( mov returnValue, ebx ); - if ((stackFrame + sizeof(int) != m_stackFrame) && (0 == returnValue)) { - qDebug() << m_methodDescription << "EXCEPTION!"; - } else { - qDebug() << m_methodDescription << "OUT"; - } -#else - if (std::uncaught_exception()) { - qDebug() << m_methodDescription << "EXCEPTION!"; - } else { - qDebug() << m_methodDescription << "OUT"; - } -#endif - }; - -private: - const char* m_methodDescription; - int m_stackFrame; -}; - -#define DPRINT_METHODENTRYEXIT \ - MethodEntryExitDebugPrint __entryExitDebugPrint(__PRETTY_FUNCTION__) - -#endif // KEYSEQUENCERECOGNITIONSERVICELOG_H