The channel properties can be configured using the CSensrvChannel::SetProperty()
function.
Before setting channel properties, you must open the sensor channel.
Create a TSensrvProperty
property object for setting the KSensrvPropIdDataRate
property using the TSensrvProperty(const
TSensrvPropertyId,const TInt,const TInt)
constructor.
... TInt val=2; TSensrvProperty sensrvProperty(KSensrvPropIdDataRate,KSensrvItemIndexNone,val); ...
Set the KSensrvPropIdDataRate
property value by passing the property
object that you created to CSensrvChannel::SetProperty()
.
... CSensrvChannel* channel; ... TInt ret; ret=channel->SetProperty(sensrvProperty); ...
The following example explains how to set the x-axis of accelerometer channel status from activated to deactivated.
The axis active property KSensrvPropIdAxisActive
is first retrieved using the CSensrvChannel::GetPropertyL()
function. If the axis is active, the new deactivated value
is set in the retrieved property object. Then the channel is updated
with this updated property object by using the CSensrvChannel::SetProperty()
function.
TSensrvProperty property; TInt err( KErrNone ); TInt axisActive( 0 ); iSensorChannel->GetPropertyL( KSensrvPropIdAxisActive, TSensrvAccelerometerAxisData::Index::iAxisX, property ); property.GetValue( axisActive ); if( 1 == axisActive ) { property.SetValue( 0 ); // A value other than 1 means that sensor axis is deactivated. err = iSensorChannel->SetProperty( property ); if( KErrNone == err ) { //Accelerometer x-axis was successfully deactivated } } else { //Accelerometer x-axis is already inactive }
End the
session with the sensor channel using the CSensrvChannel::CloseChannel()
function.