diff options
Diffstat (limited to 'Swiften/ScreenSharing/RTPSessionImpl.h')
| -rw-r--r-- | Swiften/ScreenSharing/RTPSessionImpl.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/Swiften/ScreenSharing/RTPSessionImpl.h b/Swiften/ScreenSharing/RTPSessionImpl.h index 15ca4b3..657a34a 100644 --- a/Swiften/ScreenSharing/RTPSessionImpl.h +++ b/Swiften/ScreenSharing/RTPSessionImpl.h @@ -15,9 +15,8 @@ #include <rtpexternaltransmitter.h> #include <rtpipv4address.h> namespace Swift { - // Temporary class class Sender : public jrtplib::RTPExternalSender { public: @@ -40,11 +39,15 @@ namespace Swift { }; class RTPSessionImpl : public RTPSession { public: - RTPSessionImpl(const HostAddressPort& remotePeer, PayloadType payloadType, int frequency); + typedef boost::shared_ptr<RTPSession> ref; + + public: + RTPSessionImpl(); virtual ~RTPSessionImpl(); + virtual void create(boost::shared_ptr<UDPSocket> udpSocket, const HostAddressPort &remotePeer, PayloadType payloadType, int frequency); virtual void poll(); virtual void checkIncomingPackets(); virtual void sendPacket(const SafeByteArray &data, int timestampinc, bool marker = false); virtual void injectData(const SafeByteArray &data); @@ -54,10 +57,14 @@ namespace Swift { static void nativeAddressToJRTPAddress(const HostAddressPort& hostAddressPort, jrtplib::RTPIPv4Address& jRTPAddress); private: inline void checkError(int rtperr) const; + void handleDataRead(boost::shared_ptr<SafeByteArray> data); private: + boost::shared_ptr<UDPSocket> udpSocket; + PayloadType payloadType; + int frequency; jrtplib::RTPIPv4Address jRTPRemotePeer; jrtplib::RTPSession session; Sender sender; jrtplib::RTPExternalPacketInjecter *packetInjecter; |
Swift