00001 /* 00002 * Copyright (C) 2003 Jens Zechlin 00003 */ 00004 00005 #ifndef EXPAT_TRANSCODINGCLIENT_H 00006 #define EXPAT_TRANSCODINGCLIENT_H 00007 00008 #include <string> 00009 #include "EConfBool.h" 00010 #include "EConfComplain.h" 00011 #include "EConfTransLibList.h" 00012 #include "EConfBase.h" 00013 #include "EConfInt.h" 00014 00019 class EConfTranscodingClient : public EConfBase{ 00020 00021 EConfBool _useTranscoding; 00022 EConfInt _screenWidth; 00023 EConfInt _screenHeight; 00024 EConfTransLibList _transLibList; 00025 string _clientName; 00026 00027 public: 00028 EConfTranscodingClient(bool useTrans, int screenW, int screenH ); 00029 00030 virtual bool start_child_element( const char* name, const char** atts, XML_Parser p ); 00031 00032 virtual bool end_child_element( const char* name, XML_Parser p ); 00033 bool begin_parse( const char* name, const char** atts, XML_Parser p ); 00034 virtual void dump( int depth, ostream& ostr, bool complete ); 00035 00036 void specialize( const EConfTranscodingClient& o ); 00037 00038 string getTransLib(SDP::PayloadTypes pt); 00039 00040 inline string getName() const { return _clientName; } 00041 inline bool getUseTranscoding() const { return _useTranscoding.get(); } 00042 inline int getScreenWidth() const { return _screenWidth.get(); } 00043 inline int getScreenHeight() const { return _screenHeight.get(); } 00044 00045 private: 00046 EConfTranscodingClient( const EConfTranscodingClient& ); 00047 EConfTranscodingClient& operator=( const EConfTranscodingClient& ); 00048 }; 00049 00051 00052 #endif /* EXPAT_TRANSCODINGCLIENT_H */ 00053