diff -r 43e37759235e -r 51a74ef9ed63 Symbian3/SDK/Source/GUID-09E44FE5-6BEE-49FF-8BBF-CBB3C066EE10.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/SDK/Source/GUID-09E44FE5-6BEE-49FF-8BBF-CBB3C066EE10.dita Wed Mar 31 11:11:55 2010 +0100 @@ -0,0 +1,64 @@ + + + + + +Listening +for Channel ChangesThe sensor channel APIs enable you to receive notifications when +a sensor channel is added or removed. This ensures that you are informed of +changes to sensor channels whenever there is a change. For example, you can +receive notifications when a specific proximity sensor channel is added. +

Before listening +for channel changes, you must open +the sensor channel.

+ +Create a channel +listener implementation for the MSensrvChannelListener interface. +class ChannelListener:public MSensrvChannelListener + { + public: + void ChannelChangeDetected(const TSensrvChannelInfo &aDetectedChannel, TSensrvChannelChangeType aChangeType) + { + ... + //Implementation + } + void ChannelDetectionError(CSensrvChannelFinder aChannelFinder, TSensrvErrorSeverity aError) + { + ... + //Implementation + } + void GetChannelListenerInterfaceL(TUid aInterfaceUid, TAny *aInterface) + { + ... + //Implementation + } + }; + +Start channel listening +by passing an instance of the channel listener implementation, using CSensrvChannelFinder::SetChannelListenerL() function. +//Instance of the channel listener implementation +ChannelListener channelListener; +//Channel search parameters +TSensrvChannelInfo &searchParameters +... +CSensrvChannelFinder* finder = CSensrvChannelFinder::NewLC(); +... +channel->SetChannelListenerL(channelListener, searchParameters); +... +

This listens for channels that meet the supplied search parameters. +When a channel change occurs, a ChannelChangeDetected notification +is delivered through the MSensrvChannelListener interface.

+
+Stop channel listening +by passing a NULL parameter to the CSensrvChannelFinder::SetChannelListenerL() function. +ChannelListener channelListener=NULL; +finder->SetChannelListenerL(channelListener, searchParameters); + +
+
\ No newline at end of file