RTP Trace System
1.0
|
00001 // ########################################################################## 00002 // #### #### 00003 // #### RTP Audio Server Project #### 00004 // #### ============================ #### 00005 // #### #### 00006 // #### Source State Info #### 00007 // #### #### 00008 // #### Version 1.00 -- February 16, 2001 #### 00009 // #### #### 00010 // #### Copyright (C) 1999 Thomas Dreibholz #### 00011 // #### 2000 Universität Bonn, Abt. IV #### 00012 // #### 2001 EMail: dreibh@iem.uni-due.de #### 00013 // #### WWW: https://www.uni-due.de/~be0001 #### 00014 // #### #### 00015 // ########################################################################## 00016 00017 00018 #ifndef SOURCESTATEINFO_H 00019 #define SOURCESTATEINFO_H 00020 00021 00022 #include "system.h" 00023 #include "synchronizable.h" 00024 #include "seqnumvalidator.h" 00025 00026 00027 namespace Coral { 00028 00029 00042 class SourceStateInfo : public SeqNumValidator, 00043 public Synchronizable 00044 { 00045 // ====== Constructor ==================================================== 00046 public: 00050 SourceStateInfo(); 00051 00052 00053 // ====== Reset ========================================================== 00057 void reset(); 00058 00059 00060 // ====== Status functions =============================================== 00066 inline card32 getSSRC() const; 00067 00073 inline card32 getLSR() const; 00074 00080 card32 calculateDLSR() const; 00081 00087 inline void setLSR(const card32 lsr); 00088 00094 inline void setSSRC(card32 ssrc); 00095 00096 00097 // ====== Private data =================================================== 00098 private: 00099 card64 LSRUpdateTimeStamp; // Timestamp of last setLSR() call 00100 00101 card32 ReceivedPrior; // Packet received at last interval 00102 card32 ExpectedPrior; // Packet expected at last interval 00103 card32 FractionLost; // Fraction lost 00104 card32 SSRC; // Data source identifier 00105 card32 LSR; // Last SR packet from this source 00106 }; 00107 00108 00109 } 00110 00111 00112 #include "sourcestateinfo.icc" 00113 00114 00115 #endif