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: 23609 $ 00027 * $Author: csoutheren $ 00028 * $Date: 2009-10-08 00:48:02 -0500 (Thu, 08 Oct 2009) $ 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 <opal/mediafmt.h> 00039 #include <im/t140.h> 00040 #include <im/im.h> 00041 #include <rtp/rtp.h> 00042 00043 00044 class RFC4103Context : public PObject 00045 { 00046 public: 00047 RFC4103Context(); 00048 RFC4103Context(const OpalMediaFormat & fmt); 00049 void SetMediaFormat(const OpalMediaFormat & fmt); 00050 RTP_DataFrameList ConvertToFrames(const PString & contentType, const T140String & body); 00051 00052 OpalMediaFormat m_mediaFormat; 00053 PMutex m_mutex; 00054 WORD m_sequence; 00055 DWORD m_baseTimeStamp; 00056 PTime m_baseTime; 00057 }; 00058 00059 00060 #endif // OPAL_HAS_RFC4103 00061 00062 #endif // OPAL_IM_RFC4103_H