Forwarder Class Reference

<class description="" goes="" here=""> <short description=""> More...

#include <Forwarder.hpp>

Inheritance diagram for Forwarder:

Adaptor List of all members.

Public Member Functions

list< Frame * > adapt (Frame *frm)
 Accepts as input a frame, and checks if it can adapt the frame, If the frame is modified, a new Frame object is created and inserted into the return list.
Adaptorclone ()
 Create a shallow copy of the Adaptor.
void initialize ()
 Initialize internal data structures.
void setESInfo (ESInfo *esi)
 Sets a reference to an ESInfo object.
ESInfogetESInfo ()
u32 getTranscodingCosts () const
 returns adaptation costs (CPU only)

Detailed Description

<class description="" goes="" here=""> <short description="">

Author:
Michael Kropfberger and Peter Schojer
Version:
Id
Forwarder.hpp,v 1.8 2006/01/20 15:37:17 mkropfbe Exp

Definition at line 60 of file Forwarder.hpp.


Member Function Documentation

list< Frame * > Forwarder::adapt Frame frm  )  [inline, virtual]
 

Accepts as input a frame, and checks if it can adapt the frame, If the frame is modified, a new Frame object is created and inserted into the return list.

This new frame is returned only, if the size of the payload is larger than zero. If the frame was not modified, it is also inserted into the list. For more complex adaptors, it will happen, that the adaptor caches up one complete GOP and returns the full GOP in network order. A caching adaptor has to create deep-copies for each frames. Never directly modify the payload of the input frm, always create copies!!!

Parameters:
frm object to adapt. An Adaptor is never allowed to free the input frame. This has to be done in the caller.
Returns:
List of adapted Frame objects

Reimplemented from Adaptor.

Definition at line 62 of file Forwarder.hpp.

00062 { 00063 list < Frame * >tmp; 00064 tmp.push_front(frm); 00065 // dprintf_full("Forwarder::adapt doing nothing to frame cts %i\n",frm->getAU()->cts); 00066 return tmp; 00067 };

Adaptor* Forwarder::clone  )  [inline, virtual]
 

Create a shallow copy of the Adaptor.

Creates an Adaptor with the same setup (without copying the current status).

Returns:
An Adaptor object.

Implements Adaptor.

Definition at line 68 of file Forwarder.hpp.

00068 { 00069 return new Forwarder(); 00070 };

void Forwarder::initialize  )  [inline, virtual]
 

Initialize internal data structures.

Implements Adaptor.

Definition at line 72 of file Forwarder.hpp.

00072 {; 00073 };

void Forwarder::setESInfo ESInfo esi  )  [inline, virtual]
 

Sets a reference to an ESInfo object.

Adaptors are allowed to change ESInfo objects. If you don't want that, pass an es->clone()

Reimplemented from Adaptor.

Definition at line 82 of file Forwarder.hpp.

00082 {;};


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