00001 /* 00002 * rfc4103.h 00003 * 00004 * Implementation of RFC 4103 RTP Payload for Text Conversation 00005 * 00006 * Open Phone Abstraction Library (OPAL) 00007 * 00008 * Copyright (c) 2008 Post Increment 00009 * 00010 * The contents of this file are subject to the Mozilla Public License 00011 * Version 1.0 (the "License"); you may not use this file except in 00012 * compliance with the License. You may obtain a copy of the License at 00013 * http://www.mozilla.org/MPL/ 00014 * 00015 * Software distributed under the License is distributed on an "AS IS" 00016 * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See 00017 * the License for the specific language governing rights and limitations 00018 * under the License. 00019 * 00020 * The Original Code is Open Phone Abstraction Library. 00021 * 00022 * The Initial Developer of the Original Code is Post Increment 00023 * 00024 * Contributor(s): ______________________________________. 00025 * 00026 * $Revision: 28208 $ 00027 * $Author: rjongbloed $ 00028 * $Date: 2012-08-16 20:54:46 -0500 (Thu, 16 Aug 2012) $ 00029 */ 00030 00031 #ifndef OPAL_IM_RFC4103_H 00032 #define OPAL_IM_RFC4103_H 00033 00034 #include <opal/buildopts.h> 00035 00036 #if OPAL_HAS_RFC4103 00037 00038 #include <ptclib/url.h> 00039 00040 #include <opal/mediastrm.h> 00041 #include <rtp/rtp.h> 00042 00043 00044 class T140String; 00045 00046 00049 class OpalT140MediaStream : public OpalMediaStream 00050 { 00051 public: 00052 OpalT140MediaStream( 00053 OpalConnection & conn, 00054 const OpalMediaFormat & mediaFormat, 00055 unsigned sessionID, 00056 bool isSource 00057 ); 00058 00059 virtual PBoolean IsSynchronous() const { return false; } 00060 virtual PBoolean RequiresPatchThread() const { return false; } 00061 00062 bool ReadPacket(RTP_DataFrame & packet); 00063 bool WritePacket(RTP_DataFrame & packet); 00064 00065 protected: 00066 virtual void InternalClose() { } 00067 }; 00068 00069 00070 #endif // OPAL_HAS_RFC4103 00071 00072 #endif // OPAL_IM_RFC4103_H