예제 #1
0
 void Light::_blinkOff() {
   off(false); // don't stop everything
   _off_timer.restart();
   if(!_forever) {
     _times--;
     if(_times == 0) {_stopBlinking();}
   }
 }
예제 #2
0
파일: led.cpp 프로젝트: SamuelDeal/carpi
void Led::off() {
    const std::lock_guard<std::mutex> lock(_mut);
    if(_status == Led::OFF){
        return;
    }
    _stopBlinking();
    _status = Led::OFF;
    _light(false);
}
예제 #3
0
파일: led.cpp 프로젝트: SamuelDeal/carpi
void Led::on() {
    const std::lock_guard<std::mutex> lock(_mut);
    if(_status == Led::ON){
        return;
    }
    _stopBlinking();
    _status = Led::ON;
    _light(true);
}
예제 #4
0
파일: led.cpp 프로젝트: SamuelDeal/carpi
Led::~Led() {
    _stopBlinking();
    _light(false);
    _pin.write(Gpio::low);
}
예제 #5
0
 void Light::_stopEverything() {
   _stopBlinking();
   _stopFading();
 }