00001 00002 #ifndef OpieToothServices_H 00003 #define OpieToothServices_H 00004 00005 #include <qmap.h> 00006 #include <qvaluelist.h> 00007 00008 namespace OpieTooth { 00013 class Services { 00014 public: 00018 class ProfileDescriptor{ 00019 public: 00021 typedef QValueList<ProfileDescriptor> ValueList; 00023 ProfileDescriptor(); 00030 ProfileDescriptor(const QString &id, int idInt, int version ); 00034 ProfileDescriptor(const ProfileDescriptor& ); 00038 QString id()const; 00042 void setId(const QString& id); 00043 00047 void setId(int ); 00051 int idInt()const; 00055 int version()const; 00059 void setVersion(int version ); 00063 ProfileDescriptor &operator=( const ProfileDescriptor& ); 00067 // friend bool operator==(const ProfileDescriptor&, const ProfileDescriptor& ); 00068 private: 00069 QString m_id; 00070 int m_idInt; 00071 int m_version; 00072 }; 00073 public: 00077 class ProtocolDescriptor { 00078 public: 00079 typedef QValueList<ProtocolDescriptor> ValueList; 00083 ProtocolDescriptor(); 00089 ProtocolDescriptor(const QString&, int, int port = -1 ); // Q_UINT8 ? 00090 ProtocolDescriptor(const ProtocolDescriptor& ); 00091 ~ProtocolDescriptor(); 00092 QString name()const; 00093 void setName(const QString& ); 00094 int id()const; 00095 void setId(int ); 00096 int port()const; 00097 void setPort(int ); 00098 ProtocolDescriptor &operator=( const ProtocolDescriptor& ); 00099 //friend bool operator==( const ProtocolDescriptor&, 00100 // const ProtocolDescriptor& ); 00101 private: 00102 QString m_name; 00103 int m_number; 00104 int m_channel; 00105 }; 00106 00107 public: 00108 typedef QValueList<Services> ValueList; 00109 Services(); 00110 Services(const Services& service ); 00111 ~Services(); 00112 00113 Services &operator=( const Services& ); 00114 friend bool operator==(const Services&, const Services& ); 00115 QString serviceName()const; 00116 void setServiceName( const QString& service ); 00117 00118 int recHandle()const; 00119 void setRecHandle( int ); 00120 00121 00122 QMap<int, QString> classIdList()const; 00123 void insertClassId( int id, const QString& className ); 00124 void removeClassId( int id ); 00125 void clearClassId(); 00126 00127 void insertProtocolDescriptor(const ProtocolDescriptor& ); 00128 void clearProtocolDescriptorList(); 00129 void removeProtocolDescriptor( const ProtocolDescriptor& ); 00130 ProtocolDescriptor::ValueList protocolDescriptorList()const; 00131 00132 void insertProfileDescriptor( const ProfileDescriptor& ); 00133 void clearProfileDescriptorList(); 00134 void removeProfileDescriptor(const ProfileDescriptor& ); 00135 ProfileDescriptor::ValueList profileDescriptor()const; 00136 00137 private: 00138 QMap<int, QString> m_classIds; 00139 QString m_name; 00140 int m_recHandle; 00141 QValueList<ProfileDescriptor> m_profiles; 00142 QValueList<ProtocolDescriptor> m_protocols; 00143 }; 00144 }; 00145 #endif
1.4.2