2 * Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
14 * Description: This file contains the header of the
15 * MHWRMHapticsObserver class.
20 #ifndef M_HWRMHAPTICSOBSERVER_H
21 #define M_HWRMHAPTICSOBSERVER_H
26 * MHWRMHapticsObserver observer class.
28 * A client should derive from this abstract class to receive haptics
29 * status notifications and notification of effect completion.
33 class MHWRMHapticsObserver
40 enum THWRMHapticsStatus
43 * Haptics is available for the observing client.
45 EHWRMHapticsStatusAvailable = 0,
48 * Haptics is reserved for another client. The client making
49 * the active reservation does not receive this notification, but
50 * a success code for the reservation command.
52 EHWRMHapticsStatusReserved,
55 * Haptics has been suspended for this client. This occurs, when
56 * another client with higher priority makes reservation for
57 * haptics, or when this client is making reservation and haptics
58 * has already been reserved for a client with higher priority.
60 * In suspended state, haptics effects are not played for the
61 * suspended client, but other commands are executed as normal.
63 EHWRMHapticsStatusSuspended
67 * Called when the device's haptics feature state changes
69 * @param aStatus Indicates haptics status.
73 * @see CHWRMHaptics::THWRMHapticsStatus
75 virtual void HapticsStatusChangedL( THWRMHapticsStatus aStatus ) = 0;
78 * Called when effect has completed playing.
80 * Method reserved for future use.
82 * @param aError Reason of completion.
83 * @param aEffectHandle The associated effectHandle to the effect.
87 virtual void EffectCompletedL( TInt aError, TInt aEffectHandle ) = 0;
90 #endif // M_HWRMHAPTICSOBSERVER_H