RemoteViz::Rendering::KeepFramesPerSecondPolicy Class Reference

This class provides a calculation policy which allows to manage the FPS (frames per second) and the quality of interactive frames sent from Remoteviz service depending on the network bandwidth allocated to the Connection. More...

#include <RemoteViz/Rendering/KeepFramesPerSecondPolicy.h>

Inheritance diagram for RemoteViz::Rendering::KeepFramesPerSecondPolicy:
RemoteViz::Rendering::IFrameEncodingPolicy

List of all members.

Public Member Functions

 KeepFramesPerSecondPolicy ()
 KeepFramesPerSecondPolicy (unsigned int fpsTarget, float qualityTarget, float qualityThreshold)
virtual ~KeepFramesPerSecondPolicy ()
virtual unsigned int getFramesPerSecond () const
virtual float getFrameQuality () const
virtual void update (RemoteViz::Rendering::Connection *connection)

Detailed Description

This class provides a calculation policy which allows to manage the FPS (frames per second) and the quality of interactive frames sent from Remoteviz service depending on the network bandwidth allocated to the Connection.

If the Client owns multiple connections, the network bandwidth allocated to each Connection will be equitably shared. Otherwise, the network bandwidth allocated to the Connection will be equal to the network bandwidth allocated to the Client. The network bandwidth allocated to the Client can be defined from ClientSettings::setBandwidth. This policy works as described below:

See ConnectionSettings::setFrameEncodingPolicy to define the frame encoding policy.

SEE ALSO

KeepFrameQualityPolicy


Constructor & Destructor Documentation

RemoteViz::Rendering::KeepFramesPerSecondPolicy::KeepFramesPerSecondPolicy (  ) 

Constructor.

The FPS target will be set to 30.
The frame quality target will be set to 0.7.
The frame quality threshold will be set to 0.3.

RemoteViz::Rendering::KeepFramesPerSecondPolicy::KeepFramesPerSecondPolicy ( unsigned int  fpsTarget,
float  qualityTarget,
float  qualityThreshold 
)

Convenience Constructor.

Parameters:
fpsTarget : FPS target, the value range is [1, 60].
qualityTarget : frame quality target, the value range is [0, 1].
qualityThreshold : frame quality threshold, the value range is [0, 1]. (qualityThreshold <= qualityTarget)
virtual RemoteViz::Rendering::KeepFramesPerSecondPolicy::~KeepFramesPerSecondPolicy (  )  [virtual]

Destructor.


Member Function Documentation

virtual float RemoteViz::Rendering::KeepFramesPerSecondPolicy::getFrameQuality (  )  const [virtual]

Gets the interactive frame quality calculated after calling the method update().

The value range is [0, 1].

Returns:
the interactive frame quality.

Implements RemoteViz::Rendering::IFrameEncodingPolicy.

virtual unsigned int RemoteViz::Rendering::KeepFramesPerSecondPolicy::getFramesPerSecond (  )  const [virtual]

Gets the FPS calculated after calling the method update().

The value range is [1, 60].

Returns:
the FPS.

Implements RemoteViz::Rendering::IFrameEncodingPolicy.

virtual void RemoteViz::Rendering::KeepFramesPerSecondPolicy::update ( RemoteViz::Rendering::Connection connection  )  [virtual]

Update value of the FPS and frame quality.

The connection will be used to get values such encode frame buffer size or bandwidth.

Parameters:
value : connection.

Implements RemoteViz::Rendering::IFrameEncodingPolicy.


The documentation for this class was generated from the following file:

Open Inventor Toolkit reference manual, generated on 11 Nov 2019
Copyright © Thermo Fisher Scientific All rights reserved.
http://www.openinventor.com/