Adding Macros!
[pierogi] / pirkeysetmanager.cpp
index 817594c..5730ce2 100644 (file)
 #include "keysets/canon.h"
 #include "keysets/cisco.h"
 #include "keysets/compro.h"
+#include "keysets/creative.h"
+#include "keysets/crown.h"
 #include "keysets/daewoo.h"
 #include "keysets/dell.h"
 #include "keysets/denon.h"
+#include "keysets/deutschetelekom.h"
 #include "keysets/digitalstream.h"
 #include "keysets/directv.h"
 #include "keysets/dish.h"
 #include "keysets/ei.h"
 #include "keysets/elgato.h"
 #include "keysets/emerson.h"
+#include "keysets/emtec.h"
 #include "keysets/epson.h"
 #include "keysets/fortec.h"
 #include "keysets/foxtel.h"
 #include "keysets/gadmei.h"
 #include "keysets/genius.h"
 #include "keysets/goldstar.h"
+#include "keysets/goodmans.h"
 #include "keysets/grundig.h"
 #include "keysets/haier.h"
 #include "keysets/harmankardon.h"
 #include "keysets/mitsubishi.h"
 #include "keysets/motorola.h"
 #include "keysets/nad.h"
+#include "keysets/nikon.h"
 #include "keysets/nokia.h"
 #include "keysets/octagon.h"
+#include "keysets/olympus.h"
 #include "keysets/onida.h"
 #include "keysets/onkyo.h"
 #include "keysets/orion.h"
 #include "keysets/panasonic.h"
+#include "keysets/pentax.h"
 #include "keysets/philco.h"
 #include "keysets/philips.h"
 #include "keysets/pinnacle.h"
 
 #include "pirexception.h"
 
-// I'll be handling the threading of the keyset commands in this object:
+// Need mutex for thread support:
 #include <QMutex>
 
 // Debugging includes:
-//#include <iostream>
+#include <iostream>
 
 // Global communications mechanism:
 extern bool stopRepeatingFlag;
@@ -205,6 +213,14 @@ PIRKeysetManager::PIRKeysetManager()
 
   setupKeyset(new ComproTVCard1(++counter));
 
+  setupKeyset(new CreativeAudio1(++counter));
+  setupKeyset(new CreativeAudio2(++counter));
+  setupKeyset(new CreativeAudio3(++counter));
+  setupKeyset(new CreativeAudio4(++counter));
+
+  setupKeyset(new CrownTV1(++counter));
+  setupKeyset(new CrownAudio1(++counter));
+
   setupKeyset(new DaewooTV1(++counter));
   setupKeyset(new DaewooTV2(++counter));
   setupKeyset(new DaewooTV3(++counter));
@@ -238,6 +254,8 @@ PIRKeysetManager::PIRKeysetManager()
 
   setupKeyset(new DellRemote1(++counter));
 
+//  setupKeyset(new DeutscheTelekomSTB1(++counter));
+
   setupKeyset(new DigitalStreamReceiver(++counter));
 
   setupKeyset(new DirectvReceiver1(++counter));
@@ -285,6 +303,9 @@ PIRKeysetManager::PIRKeysetManager()
   setupKeyset(new EmersonTV1(++counter));
   setupKeyset(new EmersonDVD1(++counter));
 
+  setupKeyset(new EmtecSTB1(++counter));
+  setupKeyset(new EmtecSTB2(++counter));
+
   setupKeyset(new EpsonProjector1(++counter));
   setupKeyset(new EpsonProjector2(++counter));
 
@@ -306,6 +327,11 @@ PIRKeysetManager::PIRKeysetManager()
   setupKeyset(new GoldStarVCR1c(++counter));
   setupKeyset(new GoldStarCD1(++counter));
 
+  setupKeyset(new GoodmansSTB1(++counter));
+  setupKeyset(new GoodmansVCR1(++counter));
+  setupKeyset(new GoodmansDVD1(++counter));
+  setupKeyset(new GoodmansAudio1(++counter));
+
   setupKeyset(new GrundigSat1(++counter));
   setupKeyset(new GrundigSat2(++counter));
   setupKeyset(new GrundigSat3(++counter));
@@ -317,6 +343,7 @@ PIRKeysetManager::PIRKeysetManager()
   setupKeyset(new GrundigTV1(++counter));
   setupKeyset(new GrundigTV2(++counter));
   setupKeyset(new GrundigTV3(++counter));
+  setupKeyset(new GrundigTV4(++counter));
   setupKeyset(new GrundigDVD1(++counter));
 
   setupKeyset(new HaierTV1(++counter));
@@ -466,12 +493,16 @@ PIRKeysetManager::PIRKeysetManager()
   setupKeyset(new NADCD2(++counter));
   setupKeyset(new NADTape1(++counter));
 
+  setupKeyset(new NikonDSLR1(++counter));
+
   setupKeyset(new NokiaGenericVCR(++counter));
 
   setupKeyset(new OctagonSat1(++counter));
   setupKeyset(new OctagonSat1a(++counter));
   setupKeyset(new OctagonSat2(++counter));
 
+  setupKeyset(new OlympusCamera1(++counter));
+
   setupKeyset(new OnidaTV1(++counter));
   setupKeyset(new OnidaDVD1(++counter));
 
@@ -508,6 +539,8 @@ PIRKeysetManager::PIRKeysetManager()
   setupKeyset(new PanasonicAudio2a(++counter));
   setupKeyset(new PanasonicAC1(++counter));
 
+  setupKeyset(new PentaxCamera1(++counter));
+
   setupKeyset(new PhilcoTV(++counter));
 
   setupKeyset(new PhilipsTV1(++counter));
@@ -725,6 +758,7 @@ PIRKeysetManager::PIRKeysetManager()
   setupKeyset(new TriaxSTB1(++counter));
   setupKeyset(new TriaxSTB2(++counter));
   setupKeyset(new TriaxSTB2a(++counter));
+//  setupKeyset(new TriaxSTB2b(++counter));
 
   setupKeyset(new UnitedDVD1(++counter));
   setupKeyset(new UnitedDVBT1(++counter));
@@ -910,6 +944,20 @@ void PIRKeysetManager::populateKeyset(
 }
 
 
+void PIRKeysetManager::clearKeyset(
+  unsigned int keysetID)
+{
+  PIRKeysetCollection::iterator i = keysetsInfo.find(keysetID);
+
+  if (i == keysetsInfo.end())
+  {
+    return; // should throw error or something
+  }
+
+  i->second->clearProtocol();
+}
+
+
 void PIRKeysetManager::setupKeyset(
   PIRKeysetMetaData *keyset)
 {