blob: 7e8bae26f4665ea00514a89a8ca0279f4c752f26 [file] [log] [blame]
Tomáš Peckaddf04a32020-06-17 15:32:01 +02001/*
2 * Copyright (C) 2020 CESNET, https://photonics.cesnet.cz/
3 *
4 * Written by Tomáš Pecka <tomas.pecka@fit.cvut.cz>
5 *
6*/
7#pragma once
8
9#include <memory>
10#include "State.h"
11
12namespace velia {
13
14class LedSysfsDriver;
15
16class LedOutputCallback {
17public:
18 LedOutputCallback(std::shared_ptr<LedSysfsDriver> red, std::shared_ptr<LedSysfsDriver> green, std::shared_ptr<LedSysfsDriver> blue);
Tomáš Pecka7ff533b2020-07-17 15:01:16 +020019 ~LedOutputCallback();
20 void reset();
Tomáš Peckaddf04a32020-06-17 15:32:01 +020021 void operator()(State state);
22
23private:
24 std::shared_ptr<LedSysfsDriver> m_redLed, m_greenLed, m_blueLed;
25};
26
27}