uiacceltk/hitchcock/backgroundanim/src/sensor.cpp
changeset 0 15bf7259bb7c
child 9 3ac8bf5c5014
equal deleted inserted replaced
-1:000000000000 0:15bf7259bb7c
       
     1 #include <sensrvaccelerometersensor.h>
       
     2 
       
     3 #include "sensor.h"
       
     4 
       
     5 
       
     6 CSensorListener* CSensorListener::NewL(MSensrvDataListener* aDataListener, TUint32 aSensorType)
       
     7     {
       
     8     CSensorListener* self = new (ELeave) CSensorListener(aDataListener);
       
     9     CleanupStack::PushL(self);
       
    10     self->ConstructL(aSensorType);
       
    11     CleanupStack::Pop();
       
    12     return self;    
       
    13     }
       
    14     
       
    15 void CSensorListener::ConstructL(TUint32 aSensorType)
       
    16     {
       
    17     CSensrvChannelFinder* sensrvChannelFinder = CSensrvChannelFinder::NewLC();
       
    18  
       
    19     RSensrvChannelInfoList channelInfoList;
       
    20     CleanupClosePushL(channelInfoList);
       
    21  
       
    22     TSensrvChannelInfo mySearchConditions;
       
    23  
       
    24     mySearchConditions.iChannelType = aSensorType;
       
    25     
       
    26     sensrvChannelFinder->FindChannelsL(channelInfoList,mySearchConditions);
       
    27  
       
    28     if (channelInfoList.Count())
       
    29         {
       
    30         iSensrvChannel = CSensrvChannel::NewL(channelInfoList[0]);
       
    31         iSensrvChannel->OpenChannelL();
       
    32         iSensrvChannel->StartDataListeningL( iDataListener, 1,1,0);
       
    33         }
       
    34  
       
    35     channelInfoList.Close();
       
    36     CleanupStack::Pop( &channelInfoList );
       
    37     CleanupStack::PopAndDestroy( sensrvChannelFinder );
       
    38     }
       
    39     
       
    40 CSensorListener::CSensorListener(MSensrvDataListener* aDataListener) : iDataListener(aDataListener)
       
    41     {
       
    42     }
       
    43     
       
    44 CSensorListener::~CSensorListener()
       
    45     {
       
    46     if (iSensrvChannel)
       
    47         {
       
    48         iSensrvChannel->StopDataListening(); 
       
    49         iSensrvChannel->CloseChannel();
       
    50         }
       
    51         
       
    52     delete iSensrvChannel;
       
    53     }
       
    54         
       
    55 
       
    56