sl@0: // Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: // All rights reserved. sl@0: // This component and the accompanying materials are made available sl@0: // under the terms of the License "Eclipse Public License v1.0" sl@0: // which accompanies this distribution, and is available sl@0: // at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: // sl@0: // Initial Contributors: sl@0: // Nokia Corporation - initial contribution. sl@0: // sl@0: // Contributors: sl@0: // sl@0: // Description: sl@0: // Internal class used to assemble debug functionality data block sl@0: // sl@0: sl@0: #ifndef T_DEBUG_FUNCTIONALITY_H sl@0: #define T_DEBUG_FUNCTIONALITY_H sl@0: sl@0: /** sl@0: * This class is used to represent and assemble the debug functionality sl@0: * block sl@0: */ sl@0: class TDebugFunctionality sl@0: { sl@0: sl@0: public: sl@0: TUint32 GetDebugFunctionalityBufSize(void); sl@0: TBool GetDebugFunctionality(TDes8& aDFBlock); sl@0: TUint32 GetStopModeFunctionalityBufSize(void); sl@0: TBool GetStopModeFunctionality(TDes8& aDFBlock); sl@0: static TInt GetRegister(const Debug::TRegisterInfo aRegisterInfo, Debug::TTag& aTag); sl@0: static TUint32 GetMemoryOperationMaxBlockSize(); sl@0: sl@0: private: sl@0: sl@0: // Helper functions when assembling the buffer sl@0: void AppendBlock(const Debug::TSubBlock& aDFSubBlock, TDes8& aDFBlock); sl@0: TUint32 ComputeBlockSize(const Debug::TSubBlock& aDFSubBlock); sl@0: }; sl@0: sl@0: #endif // T_DEBUG_FUNCTIONALITY_H