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

IPlayback interface - represents the operations that can be performed on a IDataSource which has playback capabilities (e.g. More...

Public Member Functions

virtual int pause ()=0
 Pause the playback.
virtual int resume ()=0
 Resume the playback.
virtual void step ()=0
 Step through the log data by data.
virtual EPlayingStatus getState () const =0
 Return the playback state of this data source.
virtual float getSpeedMultiplier () const =0
 Get the speed multiplier.
virtual void setSpeedMultiplier (float speedMultiplier)=0
 Set the speed multiplier.
virtual float getMaxSpeedMultiplier () const =0
 Get the max multiplier.
virtual float getMinSpeedMultiplier () const =0
 Get the min multiplier.
virtual LargeInteger getCurrentPosition () const =0
 Return the current position (milliseconds from begin/departure/starting point).
virtual LargeInteger setCurrentPosition (LargeInteger timeMS)=0
 Sets the current position.
virtual LargeInteger getDuration () const =0
 Return playback duration (milliseconds).
virtual void setLoopMode (bool value)=0
 Play log continuously.
virtual DataPtr getLatestData (EDataType dataType) const =0
virtual String getLogPath ()=0
virtual int setLogPath (const String &logPath)=0
 Set log path.
virtual Route getRoute ()=0
virtual int setRoute (const IRoute &route)=0
 Set route.

Detailed Description

IPlayback interface - represents the operations that can be performed on a IDataSource which has playback capabilities (e.g.

log, route replay)

Member Function Documentation

◆ getCurrentPosition()

virtual LargeInteger gem::sense::IPlayback::getCurrentPosition ( ) const
pure virtual

Return the current position (milliseconds from begin/departure/starting point).

Returns
The playback position in milliseconds.

◆ getDuration()

virtual LargeInteger gem::sense::IPlayback::getDuration ( ) const
pure virtual

Return playback duration (milliseconds).

Returns
The duration of the playback in milliseconds.

◆ getLatestData()

virtual DataPtr gem::sense::IPlayback::getLatestData ( EDataType dataType) const
pure virtual
Parameters
dataTypeData type.
Returns
If data source produces such a data type then it returns a shared data pointer, otherwise it returns an empty shared pointer.

◆ getLogPath()

virtual String gem::sense::IPlayback::getLogPath ( )
pure virtual
Returns
The log path

◆ getMaxSpeedMultiplier()

virtual float gem::sense::IPlayback::getMaxSpeedMultiplier ( ) const
pure virtual

Get the max multiplier.

Returns
The maximum speed multiplier.

◆ getMinSpeedMultiplier()

virtual float gem::sense::IPlayback::getMinSpeedMultiplier ( ) const
pure virtual

Get the min multiplier.

Returns
The minimum speed multiplier.

◆ getRoute()

virtual Route gem::sense::IPlayback::getRoute ( )
pure virtual
Returns
The route if it is a simulation data source.

◆ getSpeedMultiplier()

virtual float gem::sense::IPlayback::getSpeedMultiplier ( ) const
pure virtual

Get the speed multiplier.

Returns
The playback speed multiplier.

◆ getState()

virtual EPlayingStatus gem::sense::IPlayback::getState ( ) const
pure virtual

Return the playback state of this data source.

Returns
The playing state.

◆ pause()

virtual int gem::sense::IPlayback::pause ( )
pure virtual

Pause the playback.

Returns
Error code.
See also
error KNoError

◆ resume()

virtual int gem::sense::IPlayback::resume ( )
pure virtual

Resume the playback.

Returns
Error code.
See also
error KNoError

◆ setCurrentPosition()

virtual LargeInteger gem::sense::IPlayback::setCurrentPosition ( LargeInteger timeMS)
pure virtual

Sets the current position.

Parameters
[in]timeMS- The new current position (milliseconds from begin/departure/starting point).
Returns
Return the old position (milliseconds from begin)

◆ setLogPath()

virtual int gem::sense::IPlayback::setLogPath ( const String & logPath)
pure virtual

Set log path.

Parameters
[in]logPath- The log path.
Returns
Error code.
See also
error KNoError

◆ setLoopMode()

virtual void gem::sense::IPlayback::setLoopMode ( bool value)
pure virtual

Play log continuously.

Parameters
valueThe actual value to be set for loop mode.

◆ setRoute()

virtual int gem::sense::IPlayback::setRoute ( const IRoute & route)
pure virtual

Set route.

Parameters
[in]routeThe route used for generating data source data.
Returns
Error code.
See also
error KNoError

◆ setSpeedMultiplier()

virtual void gem::sense::IPlayback::setSpeedMultiplier ( float speedMultiplier)
pure virtual

Set the speed multiplier.

Parameters
[in]speedMultiplier- The speed multiplier. Can have values between 0.f and getMaxSpeedMultiplier