1 #ifndef PIRKEYSETMETADATA_H
2 #define PIRKEYSETMETADATA_H
4 #include "pirkeynames.h"
5 #include "pirmakenames.h"
6 #include "pirdevicetypenames.h"
14 class PIRKeysetWidgetItem;
17 typedef std::map<PIRKeyName, const char *> KeyCollection;
33 PIRDeviceTypeName type;
36 typedef std::list<DeviceInfo> DeviceCollection;
38 class PIRKeysetMetaData
42 const char *keysetName,
47 PIRKeyName name) const;
49 unsigned int getID() const;
51 PIRMakeName getMake() const;
53 const char *getKeysetName() const;
55 virtual void populateProtocol(
56 QObject *guiObject) = 0;
61 void populateDeviceTypes(
62 PIRKeysetWidgetItem *kwi) const;
65 void addControlledDevice(
68 PIRDeviceTypeName type);
79 // Special helper methods for SIRC keys:
83 unsigned int addressData,
84 unsigned int commandData);
89 unsigned int addressData,
90 unsigned int commandData);
95 unsigned int secondaryAddressData,
96 unsigned int primaryAddressData,
97 unsigned int commandData);
99 // Helper method for Sharp keys:
103 unsigned int addressData,
104 unsigned int commandData);
109 unsigned int addressData,
110 unsigned int commandData);
115 unsigned int addressOne,
116 unsigned int commandOne,
117 unsigned int addressTwo,
118 unsigned int commandTwo);
124 unsigned int addressData,
125 unsigned int commandData);
131 unsigned int addressData,
132 unsigned int commandData);
137 unsigned int firstCommand,
138 unsigned int secondCommand);
153 DeviceCollection controlledDevices;
155 PIRProtocol *threadableProtocol;
159 const char *keysetName;
161 PIRDeviceTypeCollection deviceTypes;
165 #endif // PIRKEYSETMETADATA_H