MSsyCallback Class Reference
Baseclass for a callback instance. SSY communicates with a sensor server through this interface.
Member Functions Documentation
BufferFilled(TSensrvChannelId, TInt, TUint8 *&, TInt &)
SSY notifies a sensor server that a write buffer is filled. SSY receives a new buffer and its size as a reference parameter.
Parameters
TSensrvChannelId aChannelId | Idenfies the channel this notification is related to. |
TInt aWriteCount | Number of objects written to buffer. A negative number indicates Symbian OS error code. If there is error channel will be closed by the sensor server, and the contents of aNewBuffer and aNewCount return parameters are undefined. |
TUint8 *& aNewBuffer | Pointer to a new data buffer |
TInt & aNewCount | Indicates a new data buffer size as a count of the data objects |
ChannelClosed(TSensrvChannelId)
Response to the channel close request. SSY call this function when channel is closed after the channel close request.
Parameters
TSensrvChannelId aChannelId | Channel Id of the channel for which this response is delivered. |
ChannelOpened(TSensrvChannelId, TInt, MSsyChannelDataProvider *, MSsyPropertyProvider *)
Response to the channel open request. SSY calls this function when SSY initiatation is done after the channel open request.
Parameters
TSensrvChannelId aChannelId | Channel Id of the channel for which this response is delivered. |
TInt aErrorCode | Symbian OS error code for the operation. |
MSsyChannelDataProvider * aChannelDataProvider | Pointer to channel data provider instance. Must be a non-NULL, unless there was an error. |
MSsyPropertyProvider * aSensorPropertyProvider | Pointer to sensor property provider instance. Must be non-NULL, unless there was an error. |
GetCallbackInterfaceL(TUid, TAny *&)
void | GetCallbackInterfaceL | ( | TUid | aInterfaceUid, |
| TAny *& | aInterface |
| ) | [pure virtual] |
Returns a pointer to a specified interface - to allow future extension of this class without breaking binary compatibility
Parameters
TUid aInterfaceUid | Identifier of the interface to be retrieved |
TAny *& aInterface | A reference to a pointer that retrieves the specified interface. |
PropertyChanged(const TSensrvChannelId, const RSensrvChannelList &, const TSensrvProperty &)
SSY notifies that a sensor property value has changed and it has effect to specific channels which are listed in the parameter.
Parameters
const TSensrvChannelId aChannelId | Channel Id to be linked to this property changes message |
const RSensrvChannelList & aAffectedChannels | Channel Ids of the channels that are linked to the changed property. If the property change was initiated by sensor server using MSsyPropertyProvider::SetPropertyL, the channel linked to that property provider must not be added to this list. If this omission would leave aAffectedChannels list empty, there is no need to call PropertyChanged at all. |
const TSensrvProperty & aProperty | New values of the all changed properties. |
RegisterChannelsL(RSensrvChannelInfoList &)
Register all channels implemented by SSY. Must initially be called during CSsyControl construction or it cannot be ensured that first clients will find the channels provided by SSY.
This method must also be called after CSsyControl construction, if the set of channels provided by SSY changes. All currently provided channels must be listed at each re-registration.
Note: If this method is called multiple times in rapid succession, it is not guaranteed that clients will get notifications about all intermediate changes. However, it is guaranteed that clients will know the final registered set.
Parameters
RSensrvChannelInfoList & aChannelInfoList | Channel info list where SSY must add all channel info objects of channels it provides. The sensor server assigns the channel id to all channel info objects in the list. If a channel is exact match to a previously registered channel, it will be assigned the same channel id as previously. If the list is empty, this method leaves with KErrArgument, as SSY with no channels is not usable. |
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.