cec: persist the configuration after switching sources
[deb_libcec.git] / src / lib / devices / CECRecordingDevice.h
index 45c0407cd8341b6d9dc878ae3973cd13bf4a2d50..f64b95b357a88683691fc6a9dcaf8004effa4a5d 100644 (file)
@@ -2,7 +2,7 @@
 /*
  * This file is part of the libCEC(R) library.
  *
- * libCEC(R) is Copyright (C) 2011 Pulse-Eight Limited.  All rights reserved.
+ * libCEC(R) is Copyright (C) 2011-2012 Pulse-Eight Limited.  All rights reserved.
  * libCEC(R) is an original work, containing original code.
  *
  * libCEC(R) is a trademark of Pulse-Eight Limited.
  */
 
 #include "CECBusDevice.h"
+#include "CECPlaybackDevice.h"
+#include "CECTuner.h"
 
 namespace CEC
 {
   class CCECRecordingDevice : public CCECBusDevice
   {
   public:
-    CCECRecordingDevice(CCECProcessor *processor, cec_logical_address address, uint16_t iPhysicalAddress = 0);
+    CCECRecordingDevice(CCECProcessor *processor, cec_logical_address address, uint16_t iPhysicalAddress = CEC_INVALID_PHYSICAL_ADDRESS);
     virtual ~CCECRecordingDevice(void) {};
+
+    /* playback device methods */
+    cec_deck_info GetDeckStatus(void);
+    cec_deck_control_mode GetDeckControlMode(void);
+
+    void SetDeckStatus(cec_deck_info deckStatus);
+    void SetDeckControlMode(cec_deck_control_mode mode);
+
+    bool TransmitDeckStatus(cec_logical_address dest);
+
+    /* tuner methods */
+    //TODO
+
+  protected:
+    CCECPlaybackDevice m_playbackDevice;
+    CCECTuner          m_tuner;
   };
 }