|
RTP Trace System
1.0
|
#include <tracearray.h>
Classes | |
| struct | Trace |
Public Member Functions | |
| TraceArray (const TraceConfiguration &config) | |
| virtual | ~TraceArray () |
| void | init (const cardinal maxLayers, const cardinal maxFrames) |
| void | calculateEmpiricalEnvelope (const cardinal layer, const cardinal start, const cardinal end, const cardinal traceStart, const cardinal traceEnd, EmpiricalEnvelope *ee, const bool frameCount=false) const |
| void | calculateOptimalIntervals (double *costArray, cardinal *lengthArray, const cardinal minLength, const cardinal maxLength) const |
| double | TraceArray::calculateTrafficCost (EmpiricalEnvelope **ee, const cardinal position, const cardinal length) const |
| double | TraceArray::calculateNextTrafficCost (EmpiricalEnvelope **ee, const cardinal position, const cardinal length) const |
| virtual TraceArray * | decreaseFrameRate () const |
| EmpiricalEnvelope * | TraceArray::initEmpiricalEnvelope (char *buffer, const cardinal eePairs, const bool frameCount=false) const |
Public Attributes | |
| cardinal | Layers |
| cardinal | Frames |
| cardinal | MaxLayers |
| cardinal | MaxFrames |
| double | FrameRate |
| struct Coral::TraceArray::Trace ** | LayerTrace |
Protected Attributes | |
| TraceConfiguration | Config |
Private Member Functions | |
| cardinal | calculateEmpiricalEnvelopePoint (const cardinal layer, const cardinal start, const cardinal end, const cardinal traceStart, const cardinal traceEnd, const cardinal delay, const bool frameCount=false) const |
| Coral::TraceArray::TraceArray | ( | const TraceConfiguration & | config | ) |
Constructor.
| config | TraceConfiguration object with configuration of the trace. |
| Coral::TraceArray::~TraceArray | ( | ) | [virtual] |
Destructor.
| void Coral::TraceArray::calculateEmpiricalEnvelope | ( | const cardinal | layer, |
| const cardinal | start, | ||
| const cardinal | end, | ||
| const cardinal | traceStart, | ||
| const cardinal | traceEnd, | ||
| EmpiricalEnvelope * | ee, | ||
| const bool | frameCount = false |
||
| ) | const |
Calculate empirical envelope.
| layer | Layer number to calculate empirical envelope for. |
| start | Start position. |
| end | End position. |
| traceStart | Trace start position. |
| traceEnd | Trace end position. |
| ee | Initialized EmpiricalEnvelope to write sums into. |
| frameCount | true, to calculate empirical envelope for frame count; false for byterate. |
| cardinal Coral::TraceArray::calculateEmpiricalEnvelopePoint | ( | const cardinal | layer, |
| const cardinal | start, | ||
| const cardinal | end, | ||
| const cardinal | traceStart, | ||
| const cardinal | traceEnd, | ||
| const cardinal | delay, | ||
| const bool | frameCount = false |
||
| ) | const [private] |
| void Coral::TraceArray::calculateOptimalIntervals | ( | double * | costArray, |
| cardinal * | lengthArray, | ||
| const cardinal | minLength, | ||
| const cardinal | maxLength | ||
| ) | const |
Calculate optimal intervals refering to given configuration.
| costArray | Array to store costs into. |
| lengthArray | Array to store lengths into. |
| minLength | Minimum length. |
| maxLength | Maximum length. |
| TraceArray * Coral::TraceArray::decreaseFrameRate | ( | ) | const [virtual] |
Decrease frame rate to next lower setting.
| void Coral::TraceArray::init | ( | const cardinal | maxLayers, |
| const cardinal | maxFrames | ||
| ) |
Initialize trace array.
| maxLayers | Maximum number of layers. |
| maxFrames | Maximum number of frames. |
| double Coral::TraceArray::TraceArray::calculateNextTrafficCost | ( | EmpiricalEnvelope ** | ee, |
| const cardinal | position, | ||
| const cardinal | length | ||
| ) | const [inline] |
Update traffic cost calculation done by calculateTrafficCost() by an additional frame. In this case, the already calculated empirical envelope can be reused resulting in a huge speed improvement.
| ee | EmpiricalEnvelope array. |
| position | Position. |
| length | Length. |
| double Coral::TraceArray::TraceArray::calculateTrafficCost | ( | EmpiricalEnvelope ** | ee, |
| const cardinal | position, | ||
| const cardinal | length | ||
| ) | const |
Calculate traffic cost for an interval.
| ee | EmpiricalEnvelope array. |
| position | Position. |
| length | Length. |
| EmpiricalEnvelope* Coral::TraceArray::TraceArray::initEmpiricalEnvelope | ( | char * | buffer, |
| const cardinal | eePairs, | ||
| const bool | frameCount = false |
||
| ) | const |
Initialize EmpiricalEnvelope.
| buffer | Buffer for empirical envelope. |
| eePairs | Number of D-BIND pairs. |
| frameCount | true, if empirical envelope is for frame count; false for byterate. |
TraceConfiguration Coral::TraceArray::Config [protected] |
| double Coral::TraceArray::FrameRate |