~aleteoryx/muditaos

ref: 2f74db29a6442a9f1b6e78334ea9da72cd0dff2d muditaos/module-bsp/bsp/headset/headset.hpp -rw-r--r-- 1.3 KiB
2f74db29 — Lefucjusz [MOS-608] Fix crash on phone turn off 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
// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md

#pragma once

#include "FreeRTOS.h"
#include "queue.h"
#include "headset_key_codes.hpp"

namespace bsp
{
    namespace headset
    {
        /**
         * @brief This method is responsible for initializing the headset controller.
         * @param qHandle key code
         */
        int32_t Init(xQueueHandle qHandle);

        /**
         * @brief This method is responsible for reading state of headset and its keys.
         * @param headsetState headset event (1 - connected, 0 - removed)
         * @param microphoneState headset event (1 - present, 0 - absent)
         * @param keyEvent key event (1 - pressed, 0 - released)
         * @param keyCode key code
         * @note Method returns `HeadsetState::Changed` if state of headset changed (connected -> removed)
         */
        HeadsetState headset_get_data(bool &headsetState, bool &microphoneState, uint8_t &keyEvent, uint8_t &keyCode);

        bool IsInserted();

        /**
         * @brief This method is responsible for deinitializing the headset controller.
         * @param qHandle key code
         */
        int32_t Deinit();

        BaseType_t headset_IRQHandler();
    }
}