2 * Copyright (c) 1997-2009 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.
25 #ifndef DATAMONITORMESSAGES_H
26 #define DATAMONITORMESSAGES_H
29 //#include <comms-infras/api_ext_msg.h>
30 #include <comms-infras/ss_api_ext.h>
31 #include <comms-infras/metavirtctor.h>
33 class MDataMonitorProtocolResp;
38 const TInt KDataMonitoringRequestMessagesImplementationUid = 0x102822F5;
41 Information container for this plugin with respect to data monitoring
46 class CDataMonitoringMsgPluginInfo : public CExtItfMsgPluginInfo
49 IMPORT_C static CDataMonitoringMsgPluginInfo* NewL(TAny* aParams);
50 IMPORT_C const TImplementationProxy* ImplementationProxy() const;
51 IMPORT_C TInt ImplementationProxyTableSize() const;
55 Data monitoring response message.
59 class CCommsDataMonitorApiExtResp : public CCommsApiExtRespMsg
62 virtual void DispatchL(MDataMonitorProtocolResp& aProtocol) = 0;
66 Data monitoring request message.
70 class TCommsDataMonitorApiExtReq : public TCommsApiExtReqMsg
74 /*-------------------------------------------------------
75 Client -> Server messages
76 -------------------------------------------------------*/
79 Request message requesting the notification of the total volume of data
80 transferred in either direction.
84 class TRequestDataTransferred : public TCommsDataMonitorApiExtReq
87 IMPORT_C void DispatchL(NetInterfaces::TInterfaceControl& aIntfCtrl, const TSubSessionUniqueId& aSubSessionUniqueId, Elements::RResponseMsg& aResponseMsg);
89 DECLARE_MVIP_CTR(TRequestDataTransferred)
91 EXPORT_DATA_VTABLE_AND_FN
95 Request message requesting the cancellation of notification of the total
96 volume of data transferred in either direction.
100 class TCancelDataTransferredRequest : public TCommsDataMonitorApiExtReq
103 IMPORT_C void DispatchL(NetInterfaces::TInterfaceControl& aIntfCtrl, const TSubSessionUniqueId& aSubSessionUniqueId, Elements::RResponseMsg& aResponseMsg);
105 DECLARE_MVIP_CTR(TCancelDataTransferredRequest)
107 EXPORT_DATA_VTABLE_AND_FN
111 Request message requesting notification of the volume of data sent having reached
112 or exceeded a specified threshold.
116 class TRequestDataSentNotification : public TCommsDataMonitorApiExtReq
119 IMPORT_C void DispatchL(NetInterfaces::TInterfaceControl& aIntfCtrl, const TSubSessionUniqueId& aSubSessionUniqueId, Elements::RResponseMsg& aResponseMsg);
121 DECLARE_MVIP_CTR(TRequestDataSentNotification)
123 inline TUint32 Delta() const;
124 inline void SetDelta(TUint32 aDelta);
126 inline TUint32 SentBytes() const;
127 inline void SetSentBytes(TUint32 aSentBytes);
129 EXPORT_DATA_VTABLE_AND_FN
137 Request message requesting the cancellation of notification of the volume of
138 data sent having reached or exceeded a specified threshold.
142 class TCancelDataSentNotificationRequest : public TCommsDataMonitorApiExtReq
145 IMPORT_C void DispatchL(NetInterfaces::TInterfaceControl& aIntfCtrl, const TSubSessionUniqueId& aSubSessionUniqueId, Elements::RResponseMsg& aResponseMsg);
147 DECLARE_MVIP_CTR(TCancelDataSentNotificationRequest)
149 EXPORT_DATA_VTABLE_AND_FN
153 Request message requesting notification of volume of data received having reached
154 or exceeded a specified threshold.
158 class TRequestDataReceivedNotification : public TCommsDataMonitorApiExtReq
161 IMPORT_C void DispatchL(NetInterfaces::TInterfaceControl& aIntfCtrl, const TSubSessionUniqueId& aSubSessionUniqueId, Elements::RResponseMsg& aResponseMsg);
163 DECLARE_MVIP_CTR(TRequestDataReceivedNotification)
165 inline TUint32 Delta() const;
166 inline void SetDelta(TUint32 aDelta);
168 inline TUint32 ReceivedBytes() const;
169 inline void SetReceivedBytes(TUint32 aReceivedBytes);
171 EXPORT_DATA_VTABLE_AND_FN
175 TUint32 iReceivedBytes;
179 Request message requesting the cancellation of notification of the volume of
180 data received having reached or exceeded a specified threshold.
184 class TCancelDataReceivedNotificationRequest : public TCommsDataMonitorApiExtReq
187 IMPORT_C void DispatchL(NetInterfaces::TInterfaceControl& aIntfCtrl, const TSubSessionUniqueId& aSubSessionUniqueId, Elements::RResponseMsg& aResponseMsg);
189 DECLARE_MVIP_CTR(TCancelDataReceivedNotificationRequest)
191 EXPORT_DATA_VTABLE_AND_FN
194 #include <comms-infras/datamonitormessages.inl>
198 #endif // DATAMONITORMESSAGES_H