RTP Trace System  1.0
traceclientapppacket.h
Go to the documentation of this file.
00001 // ##########################################################################
00002 // ####                                                                  ####
00003 // ####                    Master Thesis Implementation                  ####
00004 // ####  Management of Layered Variable Bitrate Multimedia Streams over  ####
00005 // ####                  DiffServ with A Priori Knowledge                ####
00006 // ####                                                                  ####
00007 // #### ================================================================ ####
00008 // ####                                                                  ####
00009 // ####                                                                  ####
00010 // #### Trace Client App Packet                                          ####
00011 // ####                                                                  ####
00012 // #### Version 1.00  --  February 19, 2001                              ####
00013 // ####                                                                  ####
00014 // #### Copyright (C) 2000/2001 Thomas Dreibholz                         ####
00015 // #### University of Bonn, Department of Computer Science IV            ####
00016 // #### EMail: dreibh@iem.uni-due.de                                     ####
00017 // #### WWW:   https://www.uni-due.de/~be0001/diplom/index.html          ####
00018 // ####                                                                  ####
00019 // ##########################################################################
00020 
00021 
00022 #ifndef AUDIOCLIENTAPP_H
00023 #define AUDIOCLIENTAPP_H
00024 
00025 
00026 // #include <linux/ip.h>
00027 
00028 
00029 namespace Coral {
00030 
00031 
00032 // ###### IPv6 Traffic Class Settings #######################################
00036 const card8 TraceServerDefaultTrafficClass = 0x00;
00037    // IPTOS_THROUGHPUT|IPTOS_RELIABILITY|IPTOS_LOWDELAY|IPTOS_PREC_FLASH;
00038 
00042 const card8 TraceClientDefaultTrafficClass = 0x00;
00043    // IPTOS_RELIABILITY|IPTOS_PREC_PRIORITY;
00044 
00045 
00057 class TraceClientAppPacket
00058 {
00059    // ====== Constructor ====================================================
00060    public:
00064    TraceClientAppPacket();
00065 
00066    // ====== Byte order translation =========================================
00070    void translate();
00071 
00072 
00073    // ====== Status functions ===============================================
00077    void reset();
00078 
00079 
00080    // ====== Constants ======================================================
00084    static const card32 TraceClientFormatID = 0x64643554;
00085 
00089    enum TraceClientAppMode {
00090       TCAS_UnknownCommand = 0,
00091       TCAS_Play           = 1,
00092       TCAS_Pause          = 2
00093    };
00094 
00098    static const cardinal RTPTraceDefaultPort = 7100;
00099 
00100 
00101    // ====== Packet data ====================================================
00102    public:
00106    card32 FormatID;
00107 
00111    card16 SequenceNumber;
00112 
00116    card16 PosChgSeqNumber;
00117 
00121    card64 StartPosition;
00122 
00126    card64 RestartPosition;
00127 
00131    card64 WantedUtilization;
00132 
00136    card32 Flags;
00137 
00141    card64 MinWantedBandwidth;
00142 
00146    card64 MaxWantedBandwidth;
00147 
00151    card32 MaxTransferDelay;
00152 
00156    card16 Status;
00157 
00161    card16 Encoding;
00162 
00166    int8 StreamPriority;
00167 
00171    int8 SessionPriority;
00172 
00176    card32 SessionDescriptor;
00177 
00181    char MediaName[128];
00182 };
00183 
00184 
00185 }
00186 
00187 
00188 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines