~aleteoryx/muditaos

ref: 22819c5f6749fcce7d0df95bc63172a13a0e8f61 muditaos/module-bsp/bsp/torch/torch.hpp -rw-r--r-- 681 bytes
22819c5f — Mateusz Piesta [BH-1558] Temperature layouts conf 3 years ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#pragma once

#include <stdint.h>

extern "C"
{
#include "FreeRTOS.h"
#include "task.h"
#include "queue.h"
}

#include "bsp/common.hpp"
#include <utility>

namespace bsp::torch
{
    enum class State
    {
        on,
        off,
    };

    enum class ColourTemperature // Kelvin
    {
        noChange = 0,
        warmest = 1800,
        coldest = 6500,
    };

    int32_t init(xQueueHandle qHandle);
    void deinit();

    bool isPresent(void);

    bool turn(State state, ColourTemperature = ColourTemperature::noChange);
    State getState();
    ColourTemperature getColorTemp();
    bool toggle();
    bool setCurrent(const unsigned short mA);
} // namespace bsp::torch