os/mm/devsoundextensions/effects/RoomLevel/RoomLevelProxy/Src/RoomLevelEventObserver.h
First public contribution.
2 * Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of "Eclipse Public License v1.0"
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
14 * Description: Definition of the event observer class
21 #ifndef CROOMLEVELEVENTOBSERVER_H
22 #define CROOMLEVELEVENTOBSERVER_H
26 #include "RoomLevelProxy.h"
32 * RoomLevel event observer provides encapsulates a monitoring request towards the message handler.
34 * @lib RoomLevelProxy.lib
37 class CRoomLevelEventObserver : public CActive
39 public: // Constructors and destructor
42 * Two-phased constructor.
44 static CRoomLevelEventObserver* NewL(TMMFMessageDestinationPckg aMessageHandler, MCustomCommand& aCustomCommand,
45 MRoomLevelCallback& aCallback);
50 virtual ~CRoomLevelEventObserver();
52 public: // New functions
55 * Start event monitoring
61 * Stop event monitoring
70 * C++ default constructor.
72 CRoomLevelEventObserver();
75 * By default Symbian 2nd phase constructor is private.
77 void ConstructL(TMMFMessageDestinationPckg aMessageHandler, MCustomCommand& aCustomCommand,
78 MRoomLevelCallback& aCallback);
86 // Pointer to custom command utility
87 MCustomCommand* iCustomCommand;
88 // Message handler handle
89 TMMFMessageDestinationPckg iMessageHandler;
90 // RoomLevel change event Callbacks
91 MRoomLevelCallback* iCallback;
92 // Data package received from server
93 TEfRoomLevelDataPckg iDataPckgFrom;
98 #endif // CROOMLEVELEVENTOBSERVER_H