Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

SDPBuffer.h

Go to the documentation of this file.
00001 /* Copyright (C) 2002 Carsten Griwodz 00002 * 00003 * You are allowed to use all other parts of the code under the following terms: 00004 * 00005 * For non-commercial use, this code may be used in unmodified form 00006 * provided that this copyright notice and this permission notice appear 00007 * in supporting documentation. 00008 * 00009 * The code may be made subject to the terms of the GNU General Public 00010 * License, Version 2, and re-distributed under the terms of this license. 00011 * 00012 * Commercial use other than under the terms of the GNU General Public 00013 * License is allowed only after negotiation of conditions with the authors. 00014 */ 00015 #ifndef SDP_BUFFER_H 00016 #define SDP_BUFFER_H 00017 00018 #include "MNString.h" 00019 #include "PayloadTypes.h" 00020 #include "RetransTypes.h" 00021 00022 #include <vector> 00023 00024 namespace SDP 00025 { 00026 00027 typedef std::vector<PayloadTypes*> PayloadTypeVector; 00028 typedef std::vector<int32_t*> IntVector; 00029 00030 00031 class Buffer 00032 { 00033 MNString _description; 00034 00035 int32_t* _bandwidth; 00036 00037 00038 IntVector* _bandwidth_vec; 00046 // PayloadTypes* _int_pt; 00047 PayloadTypeVector* _int_pt_vec; 00048 00055 // PayloadTypes* _rtp_pt; 00056 PayloadTypeVector* _rtp_pt_vec; 00057 00058 bool* _has_lcrtp; 00059 bool* _is_mc; 00060 int16_t* _planned_port; 00061 int32_t* _duration; 00062 bool* _has_a_x_priorities; 00063 char* _a_x_priorities; 00064 bool* _has_a_x_blocksize; 00065 int32_t* _a_x_blocksize; 00066 bool* _has_a_x_retrans; 00067 00068 int _mediaLinesCount; 00069 00070 public: 00075 Buffer( ); 00076 00080 Buffer( const char* description ); 00081 ~Buffer( ); 00082 00083 bool readFile( const MNString& filename ); 00084 00089 int32_t getBandwidth( ); 00090 int32_t getBandwidth(int idx); 00091 const IntVector& getBandwidthVec( ); 00092 PayloadTypes getPayloadCodec( ); 00093 const PayloadTypeVector& getPayloadCodecVec( ); 00094 PayloadTypes getPayload( ); 00095 const PayloadTypeVector& getPayloadVec( ); 00096 bool hasLCRTP( ); 00097 bool isMC( ); 00098 int16_t getPlannedPort( ); 00099 00102 int32_t getDuration( ); 00103 00104 bool hasAXpriorities( ); 00105 const char* getAXpriorities( ); 00106 bool hasAXblocksize( ); 00107 int32_t getAXblocksize( ); 00108 bool hasAXretrans( ); 00109 RetransTypes getAXretrans( ); 00110 00111 const MNString& description( ) const; 00112 00113 private: 00114 void parseBandwidth(); 00115 void parseBandwidthVec(); 00116 00117 Buffer( const Buffer& ); 00118 Buffer& operator=( const Buffer& ); 00119 }; 00120 00121 }; // namespace SDP 00122 00123 #endif /* SDP_BUFFER_H */ 00124

Generated on Sun Mar 6 13:35:50 2005 for Komssys by doxygen 1.3.8