http://mbed.org/users/shintamainjp/notebook/starboard_expbrd-one_ex1_en/

Dependencies:   mbed RemoteIR SuperTweet ConfigFile EthernetNetIf

Revision:
0:db299c5a18ba
Child:
1:c4cfd136f9c7
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mylib/MyHomeLight/MyHomeLight.h	Fri Oct 29 23:17:01 2010 +0000
@@ -0,0 +1,48 @@
+#include "mbed.h"
+#include "TransmitterIR.h"
+
+class MyHomeLight {
+public:
+
+    /**
+     * Create.
+     *
+     * @param tx_pin Pin of IR transmitter.
+     */
+    explicit MyHomeLight(PinName tx_pin);
+
+    /**
+     * Dispose.
+     */
+    ~MyHomeLight();
+
+    /**
+     * Toggle state.
+     *
+     * @param channel Target channel number.
+     * @return true if it succeed.
+     */
+    bool toggle(const int channel);
+
+private:
+    TransmitterIR tx;
+
+    typedef struct {
+        int channel;    /**< Channel number. */
+        char *signal;   /**< Signal data. */
+    } light_signal_t;
+
+    /**
+     * Signal for a light.
+     */
+    static const light_signal_t lights[8];
+
+    /**
+     * Get a signal for a light.
+     *
+     * @param channel Channel of a light.
+     *
+     * @return A pointer to a signal.
+     */
+    uint8_t *getLightSignal(int channel);
+};