CSensrvSsyMediator Class Reference
class CSensrvSsyMediator : public CSensrvMediatorBase
|
Mediates control flow from server main thread to plugin thread
Public Member Functions
|
|
~CSensrvSsyMediator
()
|
void
|
AffectedChannels
(
TSensrvChannelId
,
MSsyPropertyProvider
*,
RSensrvChannelList
*)
|
void
|
AvailabilityAffectedChannels
(
TSensrvChannelId
,
MSsyPropertyProvider
*,
RSensrvChannelList
*,
TSensrvAvailability
)
|
void
|
BufferFilled
(
TSensrvChannelId
,
TInt
,
TUint8
*&,
TInt
&)
|
CSensrvTransaction
*
|
ChannelChangeTransaction
()
|
void
|
ChannelClosed
(
TSensrvChannelId
)
|
void
|
ChannelOpened
(
TSensrvChannelId
,
TInt
,
MSsyChannelDataProvider
*,
MSsyPropertyProvider
*)
|
void
|
Cleanup
()
|
void
|
Destruct
()
|
void
|
GetCallbackInterfaceL
(
TUid
,
TAny
*&)
|
TInt
|
Initialize
()
|
CSensrvSsyMediator
*
|
NewL
(
CSensrvPluginProxy
*)
|
void
|
PropertyChanged
(const
TSensrvChannelId
, const
RSensrvChannelList
&, const
TSensrvProperty
&)
|
TAny
**
|
RawInfos
()
|
void
|
RegisterChannelsL
(
RSensrvChannelInfoList
&)
|
Constructor & Destructor Documentation
CSensrvSsyMediator()
CSensrvSsyMediator
|
(
|
)
|
[private]
|
~CSensrvSsyMediator()
~CSensrvSsyMediator
|
(
|
)
|
[virtual]
|
Member Functions Documentation
AffectedChannels(TSensrvChannelId, MSsyPropertyProvider *, RSensrvChannelList *)
Get all the affected channels
AvailabilityAffectedChannels(TSensrvChannelId, MSsyPropertyProvider *, RSensrvChannelList *, TSensrvAvailability)
Get all the availability property affected channels
BufferFilled(TSensrvChannelId, TInt, TUint8 *&, TInt &)
ChannelChangeTransaction()
Get ETransTypeMediatorChannelsChanged transaction pointer
ChannelClosed(TSensrvChannelId)
ChannelOpened(TSensrvChannelId, TInt, MSsyChannelDataProvider *, MSsyPropertyProvider *)
Cleanup()
Notifies this SSY mediator that cleanup is needed. Since deletion must of SSY mediator must be done in SSY thread to avoid possible complications with various SSY implementations, proxy will not delete the SSY mediator directly, but use this method instead.
ConstructL()
void
|
ConstructL
|
(
|
)
|
[private]
|
2nd phase of construction
Destruct()
Used to destruct object without calling destructor.
GetAffectedChannels(const TSensrvChannelId &, MSsyPropertyProvider *, RSensrvChannelList *)
Gets all affected channels.
GetAvailabilityAffectedChannels(const TSensrvChannelId &, MSsyPropertyProvider *, RSensrvChannelList *, const TSensrvAvailability &)
Gets all availability affected channels.
GetCallbackInterfaceL(TUid, TAny *&)
void
|
GetCallbackInterfaceL
|
(
|
TUid
|
aInterfaceUid,
|
|
TAny
*&
|
aInterface
|
|
)
|
|
HandleNotifyFailure()
void
|
HandleNotifyFailure
|
(
|
)
|
[protected, virtual]
|
HandleTransaction(CSensrvTransaction *)
Handles transaction. Handling depends on mediator type, so this must be implemented in inheriting class.
Initialize()
TInt
|
Initialize
|
(
|
)
|
[virtual]
|
Initializes the mediator. Must be called from thread this mediator mediates. If child class overloads this, base implementation must be called also.
NewL(CSensrvPluginProxy *)
Two phase constructor
-
Since
-
S60 5.0
-
Exceptions
-
KErrNoMemory
|
Out of memory
|
PolicyCheck(CSensrvChannel &, CSensrvChannelListener &, const RSensrvChannelList &)
Checks that the client has enough priority to change the value of the property.
If there are no affected channels for this property, then check is always passed. If there are affected channels, then check is passed if the priority of the client is highest among the all clients of affected channels.
Parameters
CSensrvChannel
& aChannel
|
Channel where the listener belongs to.
|
CSensrvChannelListener
& aListener
|
Listener of the process which is setting the property value.
|
const
RSensrvChannelList
& aAffectedChannels
|
Return list of the channel which will be affected if the property value will be set.
|
PropertyChanged(const TSensrvChannelId, const RSensrvChannelList &, const TSensrvProperty &)
RawInfos()
TAny
**
|
RawInfos
|
(
|
)
|
[inline]
|
Get raw channel infos pointer.
RegisterChannelsL(RSensrvChannelInfoList &)
Member Data Documentation
CSensrvTransaction * iChannelChangeTransaction
Transaction for notifying channel registration changes. It is stored and reused to ensure it always exists, as the transaction is initiated by SSY. Own.
TAny * iRawInfos
TAny
*
|
iRawInfos
|
[private]
|
Raw channel infos count and data. Allocated always on server main heap. Own.
CSsyControl * iSsyControl
SSY plugin control interface. Own. Note that this is allocated in SSY thread heap, instead of server heap like SSY mediator.
TBool
iUnloading
TBool
|
iUnloading
|
[private]
|
Indicates that unloading is requested.
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.