]> git.tdb.fi Git - r2c2.git/blobdiff - source/libr2c2/arducontrol.cpp
Keep track of the active accessory bit index
[r2c2.git] / source / libr2c2 / arducontrol.cpp
index 6d74f3719587e45a4a9ec2549cff1ab3b34e7a54..3d2d39b1a0b2aca8c13e8018a21f189ecbd975cd 100644 (file)
@@ -401,6 +401,7 @@ void ArduControl::tick()
                        unsigned lowest_bit = changes&~(changes-1);
                        unsigned i;
                        for(i=0; (lowest_bit>>i)>1; ++i) ;
+                       active_index = i;
                        acc.state.set(acc.state^lowest_bit);
                        PendingCommand cmd(acc, Accessory::ACTIVATE, i);
                        command_queue.push(cmd);
@@ -415,7 +416,7 @@ void ArduControl::tick()
                if(t>off_timeout)
                {
                        off_timeout = Time::TimeStamp();
-                       PendingCommand cmd(*active_accessory, Accessory::DEACTIVATE);
+                       PendingCommand cmd(*active_accessory, Accessory::DEACTIVATE, active_index);
                        command_queue.push(cmd);
                }
        }