sipxmedialib  Version 3.3
IRTCPSession.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2006-2013 SIPez LLC. All rights reserved.
3 //
4 // Copyright (C) 2004-2006 SIPfoundry Inc.
5 // Licensed by SIPfoundry under the LGPL license.
6 //
7 // Copyright (C) 2004-2006 Pingtel Corp. All rights reserved.
8 // Licensed to SIPfoundry under a Contributor Agreement.
9 //
10 // $$
12 
13 
14 // Border Guard
15 #ifndef _IRTCPSession_h
16 #define _IRTCPSession_h
17 
18 #include "rtcp/RtcpConfig.h"
19 
20 // Includes
21 #include "IBaseClass.h"
22 #include "INetworkRender.h"
23 #include "IRTCPConnection.h"
24 
25 // Forward Declaration
26 interface IGetSrcDescription;
27 interface IGetByeInfo;
28 
29 // Enumerated Types
30 typedef enum {
34 
52 interface IRTCPSession : public IBaseClass
53  {
54 
55 // Public Methods
56 public:
57 
58 
80  virtual IRTCPConnection *CreateRTCPConnection(void)=0;
81 
82 
106  virtual bool TerminateRTCPConnection(IRTCPConnection *piRTCPConnection)=0;
107 
132  virtual void TerminateAllConnections(void)=0;
133 
150  virtual unsigned long GetSessionID(void) = 0;
151 
174  virtual void ReassignSSRC(unsigned long ulSSRC,
175  unsigned char *puchReason=NULL)=0;
176 
205  virtual void ForwardSDESReport(IGetSrcDescription *piGetSrcDescription,
206  IRTCPConnection *piRTCPConnection)=0;
207 
208 
236  virtual void ForwardByeReport(IGetByeInfo *piGetByeInfo,
237  IRTCPConnection *piRTCPConnection)=0;
238 
258  virtual void CheckLocalSSRCCollisions(void) = 0;
259 
278  virtual void
279  CheckRemoteSSRCCollisions(IRTCPConnection *piRTCPConnection) = 0;
280 
298  virtual void SetMixerMode(MIXER_MODE_ET etMixerMode)=0;
299 
316  virtual MIXER_MODE_ET GetMixerMode(void)=0;
317 
334  virtual ssrc_t GetSSRC(int, int, int)=0;
335 
357  virtual IRTCPConnection *CheckConnection(IRTCPConnection *)=0;
358 };
359 
360 #endif
virtual void ReassignSSRC(unsigned long ulSSRC, unsigned char *puchReason=NULL)=0
virtual unsigned long GetSessionID(void)=0
virtual bool TerminateRTCPConnection(IRTCPConnection *piRTCPConnection)=0
MIXER_MODE_ET
Definition: IRTCPSession.h:30
virtual void CheckLocalSSRCCollisions(void)=0
virtual MIXER_MODE_ET GetMixerMode(void)=0
virtual void TerminateAllConnections(void)=0
virtual IRTCPConnection * CheckConnection(IRTCPConnection *)=0
Definition: IRTCPSession.h:31
virtual void ForwardSDESReport(IGetSrcDescription *piGetSrcDescription, IRTCPConnection *piRTCPConnection)=0
uint32_t ssrc_t
Definition: RtcpConfig.h:62
virtual void ForwardByeReport(IGetByeInfo *piGetByeInfo, IRTCPConnection *piRTCPConnection)=0
virtual ssrc_t GetSSRC(int, int, int)=0
virtual void CheckRemoteSSRCCollisions(IRTCPConnection *piRTCPConnection)=0
Definition: IRTCPSession.h:32
interface IGetSenderStatistics IGetReceiverStatistics IGetByeInfo ** piGetByeInfo
Definition: IRTCPStatistics.h:74
virtual void SetMixerMode(MIXER_MODE_ET etMixerMode)=0