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 * MHWRMHapticsActuatorObserver class.
20 #ifndef M_HWRMHAPTICSACTUATOROBSERVER_H
21 #define M_HWRMHAPTICSACTUATOROBSERVER_H
23 #include <hwrmlogicalactuators.h>
26 * MHWRMHapticsActuatorObserver observer class.
28 * A client should derive from this abstract class to receive
29 * logical actuator event notifications.
33 class MHWRMHapticsActuatorObserver
38 * @enum THWRMActuatorEvents
40 * Events that can happen to logical actuators.
42 enum THWRMActuatorEvents
45 * This event occurs, when an actuator plugin of a previously
46 * unsupported logical actuator type is installed to the device.
48 * In practice, this event may occur when the user of the device
49 * starts using an external vibra device, which requires the
50 * installation of an actuator plugin currently not present in
53 EHWRMActuatorAttached,
56 * This event occurs, when an actuator plugin of a previously
57 * supported logical actuator type is uninstalled from the device.
59 * In practice, this event may occur when the user of the device
60 * chooses to stop using an external vibra device, and uninstalls
61 * a previously installed actuator plugin.
63 EHWRMActuatorDetached,
66 * Actuator is currently enabled and it is ready to be used
69 * Enabled/disabled state of an actuator is notified, when the
70 * actuator is opened by a client and when the state changes
76 * Actuator is currently disabled and it is not able to handle
77 * haptics commands. This state of a logical actuator is in most
78 * cases relevant only for actuator plugins handling external
79 * vibra devices; E.g. connection to the external device may be
80 * lost, in which case the plugin is not able to execute incoming
83 EHWRMActuatorDisabled,
86 * For sanity checks only e.g. when enumerating actuator events.
92 * Called when the state of an actuator changes.
94 * @param aEvent Indicates the type of event.
95 * @param aActuator Logical actuator to which the event happened.
99 virtual void ActuatorEventL( THWRMActuatorEvents aEvent,
100 THWRMLogicalActuators aActuator ) = 0;
103 #endif // M_HWRMHAPTICSACTUATOROBSERVER_H