UDPVideoStreamCli Class Reference

#include <UDPVideoStreamCli.h>

Inheritance diagram for UDPVideoStreamCli:

UDPAppBase

List of all members.


Detailed Description

A "Realtime" VideoStream client application.

Basic video stream application. Clients connect to server and get a stream of video back.

Protected Member Functions

virtual void requestStream ()
virtual void receiveStream (cPacket *msg)
Overridden cSimpleModule functions
virtual void initialize ()
virtual void finish ()
virtual void handleMessage (cMessage *msg)

Protected Attributes

cOutVector eed


Member Function Documentation

void UDPVideoStreamCli::initialize (  )  [protected, virtual]

00031 {
00032     eed.setName("video stream eed");
00033     simtime_t startTime = par("startTime");
00034 
00035     if (startTime>=0)
00036         scheduleAt(startTime, new cMessage("UDPVideoStreamStart"));
00037 }

void UDPVideoStreamCli::finish (  )  [protected, virtual]

00040 {
00041 }

void UDPVideoStreamCli::handleMessage ( cMessage *  msg  )  [protected, virtual]

00044 {
00045     if (msg->isSelfMessage())
00046     {
00047         delete msg;
00048         requestStream();
00049     }
00050     else
00051     {
00052         receiveStream(PK(msg));
00053     }
00054 }

void UDPVideoStreamCli::requestStream (  )  [protected, virtual]

Referenced by handleMessage().

00057 {
00058     int svrPort = par("serverPort");
00059     int localPort = par("localPort");
00060     const char *address = par("serverAddress");
00061     IPvXAddress svrAddr = IPAddressResolver().resolve(address);
00062     if (svrAddr.isUnspecified())
00063     {
00064         EV << "Server address is unspecified, skip sending video stream request\n";
00065         return;
00066     }
00067 
00068     EV << "Requesting video stream from " << svrAddr << ":" << svrPort << "\n";
00069 
00070     bindToPort(localPort);
00071 
00072     cPacket *msg = new cPacket("VideoStrmReq");
00073     sendToUDP(msg, localPort, svrAddr, svrPort);
00074 }

void UDPVideoStreamCli::receiveStream ( cPacket *  msg  )  [protected, virtual]

Referenced by handleMessage().

00077 {
00078     EV << "Video stream packet:\n";
00079     printPacket(msg);
00080     eed.record(simTime() - msg->getCreationTime());
00081     delete msg;
00082 }


Member Data Documentation

cOutVector UDPVideoStreamCli::eed [protected]

Referenced by initialize(), and receiveStream().


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

Generated on Fri Mar 20 18:51:23 2009 for INET Framework for OMNeT++/OMNEST by  doxygen 1.5.5