00001 00007 #ifndef CETONRTSP_H 00008 #define CETONRTSP_H 00009 00010 #include <QObject> 00011 #include <QHash> 00012 #include <QString> 00013 #include <QMutex> 00014 00015 class CetonRTSP 00016 { 00017 public: 00018 explicit CetonRTSP(const QString &ip, uint tuner, ushort port); 00019 00020 bool GetOptions(QStringList &options); 00021 bool Describe(void); 00022 bool Setup(ushort clientPort1, ushort clientPort2); 00023 bool Play(void); 00024 bool Teardown(void); 00025 00026 protected: 00027 bool ProcessRequest( 00028 const QString &method, const QStringList *headers = NULL); 00029 00030 private: 00031 QString _ip; 00032 ushort _port; 00033 uint _tuner; 00034 uint _sequenceNumber; 00035 uint _sessionNumber; 00036 QString _requestUrl; 00037 00038 int _responseCode; 00039 QString _responseMessage; 00040 QHash<QString,QString> _responseHeaders; 00041 QByteArray _responseContent; 00042 00043 static QMutex _rtspMutex; 00044 00045 }; 00046 00047 #endif // CETONRTSP_H
1.6.3