Maps SDK for C++ 1.0.0
Loading...
Searching...
No Matches
gem::sense::DataFactory Class Reference

Data factory. More...

Static Public Member Functions

static StrongPointer< IPositionproducePosition (LargeInteger acquisitionTimestamp, double latitudeInDegrees=0.0, double longitudeInDegrees=0.0, double altitudeInMeters=0.0, double courseInDegrees=0.0, double speedInMpS=0.0, double speedAccuracyInMpS=-1.0, double horizontalAccuracyInMeters=-1.0, double verticalAccuracyInMeters=-1.0, double courseAccuracyInDegrees=-1.0)
 produce a Position object from raw values.
static StrongPointer< IPositionproducePosition (const String &nmeaSentence)
 produce a Position object from a nmea sentence.
static StrongPointer< IAccelerationproduceAcceleration (LargeInteger acquisitionTimestamp, double x, double y, double z, EUnitOfMeasurement unitOfMeasurement)
 produce an Acceleration object from raw values.
static StrongPointer< IRotationRateproduceRotationRate (LargeInteger acquisitionTimestamp, double rotationRateAroundXAxis, double rotationRateAroundYAxis, double rotationRateAroundZAxis)
 produce a RotationRate object from raw values.
static StrongPointer< ICameraproduceCamera (LargeInteger acquisitionTimestamp, const CameraConfiguration &cameraConfiguration, EDirectBufferType directBufferType, const void *buffer, LargeInteger bufferSize, bool allowReleaseBuffer)
 produce a Camera object representing a camera frame.

Detailed Description

Data factory.

Member Function Documentation

◆ produceAcceleration()

StrongPointer< IAcceleration > gem::sense::DataFactory::produceAcceleration ( LargeInteger acquisitionTimestamp,
double x,
double y,
double z,
EUnitOfMeasurement unitOfMeasurement )
inlinestatic

produce an Acceleration object from raw values.

Parameters
acquisitionTimestampThe acquisition timestamp of the data in millis.
xThe x part of the acceleration.
yThe y part of the acceleration.
zThe z part of the acceleration.
unitOfMeasurementThe unit of measurement.
Returns
The newly created object as a shared pointer.

◆ produceCamera()

StrongPointer< ICamera > gem::sense::DataFactory::produceCamera ( LargeInteger acquisitionTimestamp,
const CameraConfiguration & cameraConfiguration,
EDirectBufferType directBufferType,
const void * buffer,
LargeInteger bufferSize,
bool allowReleaseBuffer )
inlinestatic

produce a Camera object representing a camera frame.

Parameters
acquisitionTimestampThe acquisition timestamp of the data in millis.
cameraConfigurationThe camera configuration as the properties of the camera with which the actual buffer was obtained.
directBufferTypeThe type of the direct buffer.
bufferThe actual data buffer which contains the camera frame.
bufferSizeThe size of the buffer holding the camera frame.
allowReleaseBufferMarking this parameter true instructs the function to handle the releasing of the buffer internally after the frame was used. If marked to false, the caller of the function must handle the buffer release externally.
Returns
The newly created object as a shared pointer.

◆ producePosition() [1/2]

StrongPointer< IPosition > gem::sense::DataFactory::producePosition ( const String & nmeaSentence)
inlinestatic

produce a Position object from a nmea sentence.

Parameters
nmeaSentenceThe nmea sentence.
Returns
The newly created object as a shared pointer.

◆ producePosition() [2/2]

StrongPointer< IPosition > gem::sense::DataFactory::producePosition ( LargeInteger acquisitionTimestamp,
double latitudeInDegrees = 0.0,
double longitudeInDegrees = 0.0,
double altitudeInMeters = 0.0,
double courseInDegrees = 0.0,
double speedInMpS = 0.0,
double speedAccuracyInMpS = -1.0,
double horizontalAccuracyInMeters = -1.0,
double verticalAccuracyInMeters = -1.0,
double courseAccuracyInDegrees = -1.0 )
inlinestatic

produce a Position object from raw values.

Parameters
acquisitionTimestampThe acquisition timestamp of the data in millis.
latitudeInDegreesThe latitude of the position in degrees.
longitudeInDegreesThe longitude of the position in degrees.
altitudeInMetersThe altitude in meters.
courseInDegreesThe course in degrees.
speedInMpSThe speed in meter/second.
speedAccuracyInMpSThe speed accuracy in meter/second.
horizontalAccuracyInMetersThe horizontal accuracy in meters.
verticalAccuracyInMetersThe vertical accuracy in meters.
courseAccuracyInDegreesThe course accuracy in degrees.
Returns
The newly created object as a shared pointer.

◆ produceRotationRate()

StrongPointer< IRotationRate > gem::sense::DataFactory::produceRotationRate ( LargeInteger acquisitionTimestamp,
double rotationRateAroundXAxis,
double rotationRateAroundYAxis,
double rotationRateAroundZAxis )
inlinestatic

produce a RotationRate object from raw values.

Parameters
acquisitionTimestampThe acquisition timestamp of the data in millis.
rotationRateAroundXAxisThe rotation rate round x axis in rad/second squared.
rotationRateAroundYAxisThe rotation rate round y axis in rad/second squared.
rotationRateAroundZAxisThe rotation rate round z axis in rad/second squared.
Returns
The newly created object as a shared pointer.