#include <sensordatacompensator.h>
class CSensorDataCompensator : public CBase |
Public Member Functions | |
---|---|
pure virtual TInt | Compensate(TDes8 &) |
pure virtual TSensrvChannelDataTypeId | GetChannelDataType() |
pure virtual TSensorCompensationType | GetCompensationType() |
IMPORT_C CSensorDataCompensator * | NewL(TSensrvChannelDataTypeId, TSensorCompensationType) |
Class provides operations to compensate sensor data.
Usage:
#include <sensordatacompensator.h> #include <sensrvaccelerometersensor.h> // Client creates the compensator instance as a member. // This compensates the axis data received from accelerometer. // The data is compensated according to both device and UI rotation. // See sensrvtypes.h and sensordatacompensationtypes.h for more information. iDataCompensator = CSensorDataCompensator::NewL( KSensrvChannelTypeIdAccelerometerXYZAxisData, ESensorCompensateDeviceAndUIOrientation ); // Data compensation is done in client's MSensrvDataListener::DataReceived() implementation // where 'iSensorChannel' contains the accelerometer channel instance. TPckgBuf<TSensrvAccelerometerAxisData> dataPckgBuf; // Get data from accelerometer ( iSensorChannel->GetData( dataPckgBuf ) ) TInt err( iDataCompensator->Compensate( dataPckgBuf ) ); // Client deletes the compensator instance in destructor. delete iDataCompensator;
Compensates sensor data.
Parameter | Description |
---|---|
aData | Reference to descriptor where sensor data locates. On return contains compensated data if compensation successful. The following packages can be used in compensating; TSensrvAccelerometerAxisData TSensrvMagnetometerAxisData TSensrvMagneticNorthData TSensrvTappingData |
Returns: TInt KErrNone - Compensation successful. KErrArgument - Input aData does not match data type. KErrNotSupported - Compensation not supported for data type. KErrNotReady - Not ready for compensation. KErrCorrupt - Configured compensation values are invalid.
TSensrvChannelDataTypeId | GetChannelDataType | ( | ) | const [pure virtual] |
Used to get the compensated channel data type.
Returns: TSensrvChannelDataTypeId The compensated data type.
TSensorCompensationType | GetCompensationType | ( | ) | const [pure virtual] |
Used to get the compensation type.
Returns: TSensorCompensationType The used compensation type.
IMPORT_C CSensorDataCompensator * | NewL | ( | TSensrvChannelDataTypeId | aDataType, |
TSensorCompensationType | aType | |||
) | [static] |
Two-phase constructor
Parameter | Description |
---|---|
aDataType | Specifies the data type to be compensated. |
aType | Specifies the type of compensation. See TSensorCompensationType. |
Returns: CSensorDataCompensator* Pointer to created object