sensorservices/orientationssy/src/SsyProperty.cpp
branchRCL_3
changeset 21 ccb4f6b3db21
parent 0 4e1aa6a622a0
child 22 8cb079868133
equal deleted inserted replaced
20:1ddbe54d0645 21:ccb4f6b3db21
    50     {
    50     {
    51     SSY_TRACE_IN();
    51     SSY_TRACE_IN();
    52 
    52 
    53     for ( TInt index = 0; index < aNumberOfProperties ; index++ )
    53     for ( TInt index = 0; index < aNumberOfProperties ; index++ )
    54         {
    54         {
    55         iChannelProperties.Append( aProperties[ index ] );
    55         if(iChannelProperties.Append( aProperties[ index ])!= KErrNone )
       
    56         {
       
    57          iChannelProperties.Reset();
       
    58          break;
       
    59         }
    56         }
    60         }
    57 
    61 
    58     SSY_TRACE_OUT();
    62     SSY_TRACE_OUT();
    59     }
    63     }
    60 
    64 
   295         returnValue = KErrGeneral;
   299         returnValue = KErrGeneral;
   296         }
   300         }
   297 
   301 
   298     else if ( aProperty.GetPropertyId() == KSensrvPropIdDataRate )
   302     else if ( aProperty.GetPropertyId() == KSensrvPropIdDataRate )
   299         {
   303         {
   300         SSY_TRACE( EExtended, "ORIENTATIONSSY: Updating data rate property" );
   304         // Since Orientation is an event, the data rate property is made readonly.
   301         // Data rate property is replaced in a different way than others.
   305         // In ssyconfiguration.h file, the datarate property is defined as writable,
   302         // Note that this can be done only once as this property is set to read only.
   306         // it is not modified due to backward compatibility. 
   303         aProperty.GetValue( intValue );
   307         // Now it is changed and the orientation channel property is made readonly always.
   304         // Leave value to 0, update only max value because that is the only value we can provide
   308         
   305         if( iChannelProperties.Count() >= index )
   309         if( iChannelProperties.Count() >= index )
   306             {
   310             {
   307             iChannelProperties[index].iIntMaxValue = intValue;
       
   308             iChannelProperties[index].iReadOnly = ETrue;
   311             iChannelProperties[index].iReadOnly = ETrue;
   309             }
   312             }
   310         
   313         
   311         // No need to get data rate anymore as it's already got
   314         // No need to get data rate anymore as it's already got
   312         iDataRateUpdate = ETrue;
   315         iDataRateUpdate = ETrue;