diff -r 000000000000 -r a41df078684a kerneltest/e32test/emi/d_emitest.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/kerneltest/e32test/emi/d_emitest.h Mon Oct 19 15:55:17 2009 +0100 @@ -0,0 +1,177 @@ +// Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of the License "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: +// e32test\emi\d_emitest.h +// +// + +#ifndef __EMITEST_H__ +#define __EMITEST_H__ + +#include +#include +#ifndef __KERNEL_MODE__ +#include +#endif + + +struct TUserTaskEventRecord + { + TUint8 iType; // Type of event, 0 = Reschedule + // 1..127 = Reserved + // > 127 = User Defined + TUint8 iFlags; // Includes: + //Bit 0 - Events lost before this event. (All types) + //Bit 1 - Previous thread now waiting. (Reschedule only) + TUint16 iExtra; //This has no use in reschedule events, but may be used by other event types. + TUint32 iUserState; //The state variable at the time of the event, which will probably indicate the clock frequency at the time of the event. + TUint32 iTime; //Time that the event occurred. Units defined by the GET_HIGH_RES_TICK macro. + TAny* iPrevious; // The NThread that was executing before the switch. + TAny* iNext; //The NThread that was executing after the switch. + + }; + +const TInt KEMI_EventLost =1; +const TInt KEMI_PrevWaiting=2; + +_LIT(KEMITestName,"EMITEST"); + +enum TMonitors + { + ENone, + ENormal, + EStressFirst, + EStressSecond + }; + +class REMITest : public RBusLogicalChannel + { +public: + + enum TControl + { + ETaskEventLogging, + EGetTaskEvent, + EAddTaskEvent, + EGetIdleThread, + EGetSigmaThread, + ESetVEMSData, + EGetVEMSData, + ESetThreadLoggable, + EGetThreadLoggable, + ESetThreadTag, + EGetThreadTag, + ESetMask, + EGetMask, + ESetDFC, + ESetState, + EGetState, + EGetNThread, + EAfterIdle + }; + + enum TRequest + { + ENumRequests, + EAllRequests = (1<