sl@0: // Copyright (c) 2007-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 "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: // sl@0: sl@0: /** sl@0: @file sl@0: @test sl@0: @internalComponent - Internal Symbian test code sl@0: */ sl@0: sl@0: #ifndef __EFMFEATURENOTIFIERSTEPBASE__ sl@0: #define __EFMFEATURENOTIFIERSTEPBASE__ sl@0: sl@0: #include sl@0: #include sl@0: #include sl@0: #include "efm_teststepbase.h" sl@0: #include "efm_test_consts.h" sl@0: sl@0: sl@0: sl@0: class TWaitInfo sl@0: { sl@0: public: sl@0: CPeriodic* iPeriodic; sl@0: CActiveSchedulerWait* iWait; sl@0: }; sl@0: sl@0: class CFeatureNotifierStepBase : public CEFMConfigurableTestStepBase, public MFeatureObserver sl@0: { sl@0: public: sl@0: virtual TVerdict doTestStepPreambleL(void); sl@0: virtual TVerdict doTestStepPostambleL(void); sl@0: void HandleNotifyChange( TFeatureChangeType aType, TFeatureEntry aFeature ); sl@0: void HandleNotifyError( TInt aError ); sl@0: void CheckNotifyRequestResultL(TUid aUid); sl@0: void CheckNotifyCancelResultL(TUid aUid); sl@0: void CheckDeleteNotificationResultL(TUid aUid); sl@0: protected: sl@0: void WaitL( TInt aIntervalInMicorseconds ); sl@0: protected: sl@0: CActiveScheduler* iSched; sl@0: CActiveSchedulerWait* iWait; sl@0: TBool iNotifyCompleted; sl@0: RFeatureControl icontrol; sl@0: }; sl@0: sl@0: sl@0: sl@0: sl@0: #endif