Maps SDK for C++ 1.0.0
Loading...
Searching...
No Matches
gem::sense::IActivity Class Referenceabstract

Definition of Activity interface. More...

Inheritance diagram for gem::sense::IActivity:
Collaboration diagram for gem::sense::IActivity:

Public Types

enum class  EType {
  Unknown = 0 , InVehicle , OnBicycle , OnFoot ,
  Still , Tilting , Walking , Running ,
  AutomotiveStationary , VehicleMoving = InVehicle , Cycling = OnBicycle , PedestrianStationary = Still ,
  PedestrianWalking = Walking , PedestrianRunning = Running , VehicleStationary = AutomotiveStationary
}
 Values that represent user activity type. More...
enum class  EConfidence { Unknown , Low , Medium , High }
 Values that represent the confidence level of detected user activities. More...

Public Member Functions

virtual EType getActivityType () const =0
virtual EConfidence getActivityConfidence () const =0
EDataType getType () const override final
 Get data type.
virtual LargeInteger getAcquisitionTimestamp () const =0
Time getTime () const
template<typename TDerivedType>
StrongPointer< TDerivedType > cast ()
 Cast to a derived type.

Static Public Member Functions

static bool isSameType (const IData *ptr)
 Check if two data elements have the same type.

Detailed Description

Definition of Activity interface.

Member Enumeration Documentation

◆ EConfidence

Values that represent the confidence level of detected user activities.

Enumerator
Unknown 

Confidence level is unknown.

Low 

Low confidence in the detected activity.

Medium 

Medium confidence in the detected activity.

High 

High confidence in the detected activity.

◆ EType

enum class gem::sense::IActivity::EType
strong

Values that represent user activity type.

Enumerator
Unknown 

Unknown activity type.

InVehicle 

User is in a vehicle.

OnBicycle 

User is on a bicycle.

OnFoot 

User is on foot (general category for walking, running, etc.).

Still 

Device is stationary or not moving.

Tilting 

Device is tilting, possibly indicating a change in orientation.

Walking 

User is walking.

Running 

User is running.

AutomotiveStationary 

Vehicle is stationary.

VehicleMoving 

Alias for InVehicle, indicating the vehicle is moving.

Cycling 

Alias for OnBicycle, indicating the user is cycling.

PedestrianStationary 

Alias for Still, indicating the pedestrian is stationary.

PedestrianWalking 

Alias for Walking, indicating the pedestrian is walking.

PedestrianRunning 

Alias for Running, indicating the pedestrian is running.

VehicleStationary 

Alias for AutomotiveStationary, indicating the vehicle is stationary.

Member Function Documentation

◆ cast()

template<typename TDerivedType>
StrongPointer< TDerivedType > gem::sense::IData::cast ( )
inlineinherited

Cast to a derived type.

Returns
The requested derived type as a shared pointer.

◆ getAcquisitionTimestamp()

virtual LargeInteger gem::sense::IData::getAcquisitionTimestamp ( ) const
pure virtualinherited
Returns
Acquisition timestamp in milliseconds since 1970 ( epoch )

Implemented in gem::sense::MockPosition.

◆ getActivityConfidence()

virtual EConfidence gem::sense::IActivity::getActivityConfidence ( ) const
pure virtual
Returns
The confidence of the activity type.

◆ getActivityType()

virtual EType gem::sense::IActivity::getActivityType ( ) const
pure virtual
Returns
The activity type.

◆ getTime()

Time gem::sense::IData::getTime ( ) const
inlineinherited
Returns
System acquisition time

◆ getType()

EDataType gem::sense::IDataWithType< DerivedType >::getType ( ) const
inlinefinaloverridevirtualinherited

Get data type.

Returns
The data type.

Implements gem::sense::IData.

◆ isSameType()

bool gem::sense::IDataWithType< DerivedType >::isSameType ( const IData * ptr)
inlinestaticinherited

Check if two data elements have the same type.

Parameters
ptrThe other IData pointer to check against.
Returns
True if of same type, false if not.