videoLat 2.0
Video conferencing delay measurements
Public Member Functions | Protected Attributes | Properties
RunCollector Class Reference

#import <RunCollector.h>

List of all members.

Public Member Functions

(void) - startCollecting:input:name:output:name:
(void) - startCollecting:
(void) - stopCollecting
 Stop filling the dataStore.
(void) - trim
 Tell the dataStore to trim its data.
(BOOL) - recordTransmission:at:
(BOOL) - recordReception:at:

Protected Attributes

NSString * lastTransmission
 Internal: records most recently transmitted data.
uint64_t lastTransmissionTime
 Internal: records timestamp of most recent transmission.
BOOL lastTransmissionReceived
 Internal: true when lastTramsnission has already been received.

Properties

double average
 accessor for dataStore average
double stddev
 accessor for dataStore stddev
int count
 accessor for dataStore count
MeasurementDataStoredataStore
 Where this RunCollector should store the measurements.

Detailed Description

Helper object for BaseRunManager. Records transmission and reception times and populates MeasurementDataStore. During compile time the decision can be made to either have RunCollector use an internal clock, or use a clock defined externally and assigned in the NIB. The latter is better, and will normally use a clock provided by the input driver.


Member Function Documentation

- (BOOL) recordReception: (NSString*)  data
at: (uint64_t)  now 

Called when something has been received.

Parameters:
datathe data received
nowthe clock time at the moment the data was received
Returns:
true if this data matches the last transmission If the data matches the last transmission and it has not been received previously then a new delay sample is stored in the dataStore and true is returned. This will signal the run manager to start a new measurement cycle.
- (BOOL) recordTransmission: (NSString*)  data
at: (uint64_t)  now 

Called when a transmission has been done.

Parameters:
datathe data transmitted, recorded in lastTransmission
nowthe clock time the data was transmitted, recorded in lastTransmissionTime
Returns:
always true, at the moment
- (void) startCollecting: (NSString*)  scenario

Signals that this RunCollector should start filling its dataStore, for two-ended measurements. The input and output calibrations should have been set previously and are used to fill the devices.

Parameters:
scenariothe measurement type in somewhat-human-readable form
- (void) startCollecting: (NSString*)  scenario
input: (NSString*)  inputId
name: (NSString*)  inputName
output: (NSString*)  outputId
name: (NSString*)  outputName 

Signals that this RunCollector should start filling its dataStore.

Parameters:
scenariothe measurement type in somewhat-human-readable form
inputIdthe input device in somewhat-human-readable form
inputNamethe input device in human readable (but possibly ambiguous) form
outputIdthe output device in somewhat-human-readable form
outputNamethe output device in human readable (but possibly ambiguous) form

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Properties Defines