# HG changeset patch # User hgs # Date 1283774447 -10800 # Node ID 827f48a8fbdf3e0c5abc0ca41502d7c97d30b532 # Parent 0ff24a8f6ca29ed379b0410731a49d250104fe25 201035 diff -r 0ff24a8f6ca2 -r 827f48a8fbdf perfsrv/memspy/Driver/Kernel/Include/SubChannels/MemSpyDriverLogChanStack.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/perfsrv/memspy/Driver/Kernel/Include/SubChannels/MemSpyDriverLogChanStack.h Mon Sep 06 15:00:47 2010 +0300 @@ -0,0 +1,62 @@ +/* +* Copyright (c) 2009 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: +* +*/ + +#ifndef MEMSPYDRIVERLOGICALCHANSTACK_H +#define MEMSPYDRIVERLOGICALCHANSTACK_H + +// System includes +#include +#include + +// Shared includes +#include + +// User includes +#include "MemSpyDriverLogChanBase.h" + +// Classes referenced +class DMemSpyDriverDevice; +class TMemSpyDriverStackInfo; +class TMemSpyDriverInternalStackDataParams; + + + +class DMemSpyDriverLogChanStack : public DMemSpyDriverLogChanBase + { +public: + DMemSpyDriverLogChanStack( DMemSpyDriverDevice& aDevice, DThread& aThread ); + ~DMemSpyDriverLogChanStack(); + +public: // From DMemSpyDriverLogChanBase + TInt Request( TInt aFunction, TAny* a1, TAny* a2 ); + TBool IsHandler( TInt aFunction ) const; + +private: // Channel operation handlers + TInt GetStackData( TMemSpyDriverInternalStackDataParams* aParams ); + TInt GetStackInfo( TUint aTid, TMemSpyDriverStackInfo* aParams ); + +private: // Internal methods + void GetStackPointers( DThread* aThread, TUint& aSupSP, TUint& aUsrSP ); + TInt GetStackHighWatermark( DThread& aThread, TLinAddr& aHighWaterMark, TMemSpyDriverDomainType aDomain, TUint aRune ); + TInt ReadStackData( DThread& aThread, TDes8& aDestination, TUint8*& aReadAddress, TMemSpyDriverDomainType aDomain ); + TLinAddr GetStackPointerByDomain( DThread* aThread, TMemSpyDriverDomainType aDomainType ); + +private: // Data members + }; + + +#endif diff -r 0ff24a8f6ca2 -r 827f48a8fbdf perfsrv/memspy/Driver/Kernel/Include/SubChannels/MemSpyDriverLogChanThreadAndProcess.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/perfsrv/memspy/Driver/Kernel/Include/SubChannels/MemSpyDriverLogChanThreadAndProcess.h Mon Sep 06 15:00:47 2010 +0300 @@ -0,0 +1,63 @@ +/* +* Copyright (c) 2009 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: +* +*/ + +#ifndef MEMSPYDRIVERLOGICALCHANTHREADANDPROCESS_H +#define MEMSPYDRIVERLOGICALCHANTHREADANDPROCESS_H + +// System includes +#include +#include + +// User includes +#include "MemSpyDriverLogChanBase.h" + +// Classes referenced +class DMemSpyDriverDevice; +class TMemSpyDriverProcessInfo; +class TMemSpyDriverInternalThreadInfoParams; + + +class DMemSpyDriverLogChanThreadAndProcess : public DMemSpyDriverLogChanBase + { +public: + DMemSpyDriverLogChanThreadAndProcess( DMemSpyDriverDevice& aDevice, DThread& aThread ); + ~DMemSpyDriverLogChanThreadAndProcess(); + TInt Construct(); + +public: // From DMemSpyDriverLogChanBase + TInt Request( TInt aFunction, TAny* a1, TAny* a2 ); + TBool IsHandler( TInt aFunction ) const; + +private: // Channel operation handlers + TInt GetInfoThread(TUint aTid, TMemSpyDriverInternalThreadInfoParams* aParams ); + TInt GetInfoProcess(TUint aTid, TMemSpyDriverProcessInfo* aParams ); + TInt EndThread( TUint aId, TExitType aType ); + TInt OpenThread( TUint aId ); + TInt OpenProcess( TUint aId ); + TInt SuspendAllThreadsInProcess( TUint aPid ); + TInt ResumeAllThreadsInProcess( TUint aPid ); + TInt GetThreadsForProcess( TUint aPid, TDes8* aBufferSink ); + TInt SetPriority( TUint aTid, TThreadPriority aPriority ); + +private: // Internal methods + static TInt MapToMemSpyExitReason( TExitType aType ); + +private: // Data members + }; + + +#endif diff -r 0ff24a8f6ca2 -r 827f48a8fbdf perfsrv/memspy/MemSpyClient/inc/memspythreaddata.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/perfsrv/memspy/MemSpyClient/inc/memspythreaddata.h Mon Sep 06 15:00:47 2010 +0300 @@ -0,0 +1,50 @@ +/* +* Copyright (c) 2009 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: +* +*/ + +#ifndef MEMSPYTHREADDATA_H +#define MEMSPYTHREADDATA_H + +//#include + +class TMemSpyThreadData { +public: + TMemSpyThreadData() + : iId(0), iPid(0), iSID(0), iVID(0), iRequestCount(0), iThreadHandles(0), iProcessHandles(0), iThreadNumberUsing(0), + iProcessNumberUsing(0), iAttributes(0), iCpuUse(0) + { + } + +public: + TThreadId iId; + TProcessId iPid; + TFullName iName; //name without formatting. Formatting to be moved to the Avkon UI part + TInt iSID; + TInt iVID; + TThreadPriority iThreadPriority; + TProcessPriority iProcessPriority; + TInt iRequestCount; + TInt iThreadHandles; + TInt iProcessHandles; + TInt iThreadNumberUsing; + TInt iProcessNumberUsing; + TInt iAttributes; + TInt iCpuUse; + TExitType iExitType; + RArray iRegisters; //containts register contents of the thread (R00-R12, SP, LR, PC, Flags & DACR) - TUint for formating to HEX +}; + +#endif diff -r 0ff24a8f6ca2 -r 827f48a8fbdf perfsrv/piprofiler/rom/piprofiler_s2.iby --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/perfsrv/piprofiler/rom/piprofiler_s2.iby Mon Sep 06 15:00:47 2010 +0300 @@ -0,0 +1,37 @@ +/* +* Copyright (c) 2009 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: +* +*/ + + +#ifndef __PIPROFILER__ +#define __PIPROFILER__ + +// PI Profiler Engine itself +file=ABI_DIR\BUILD_DIR\PIProfilerEngine.exe sys\bin\PIProfilerEngine.exe +file=ABI_DIR\BUILD_DIR\PIProfiler.exe sys\bin\PIProfiler.exe + +// sampler plugins +// NOTE: Mandatory kernel driver included in piprofiler_ldd.iby +ECOM_PLUGIN(PIProfilerGenerals.dll, PIProfilerGenerals.rsc) + +ECOM_PLUGIN(PIProfilerBUP.dll, PIProfilerBUP.rsc) +file=ABI_DIR\BUILD_DIR\PIProfilerTouchEventAnim.dll sys\bin\PIProfilerTouchEventAnim.dll + +// Writer plugins +ECOM_PLUGIN(piprofilerdebugwriter.dll, piprofilerdebugwriter.rsc) +ECOM_PLUGIN(piprofilerdiskwriter.dll, piprofilerdiskwriter.rsc) + +#endif //__PIPROFILER__ diff -r 0ff24a8f6ca2 -r 827f48a8fbdf perfsrv/piprofiler/symbian_version.hrh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/perfsrv/piprofiler/symbian_version.hrh Mon Sep 06 15:00:47 2010 +0300 @@ -0,0 +1,43 @@ +/* +* Copyright (c) 2009 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: Symbian version configuration file +* +*/ + +#ifndef __SYMBIAN_VERSION_HRH +#define __SYMBIAN_VERSION_HRH + +// S60 and Symbian version number enumeration definitions + +#define S60_30 30 +#define S60_31 31 +#define S60_32 32 +#define S60_50 50 +#define S60_51 91 +#define S60_52 92 +#define SYMBIAN_1 50 +#define SYMBIAN_2 91 +#define SYMBIAN_3 92 +#define SYMBIAN_4 101 + + +/** + * Defines the S60 or Symbian version used by this component. This flag can be + * used to variate the source code based on the SDK in use. The value of the + * flag should be always changed to reflect the current build environment. + */ +#define SYMBIAN_VERSION_SUPPORT SYMBIAN_4 + + +#endif // __SYMBIAN_VERSION_HRH