SatNOGS-COMMS  4.1.0
A COMMS subsystem for CubeSats
Loading...
Searching...
No Matches
lna.hpp
Go to the documentation of this file.
1/*
2 * SatNOGS-COMMS control library
3 *
4 * Copyright (C) 2021-2022, Libre Space Foundation <http://libre.space>
5 *
6 * This program is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 *
19 * SPDX-License-Identifier: GNU General Public License v3.0 or later
20 */
21
22#pragma once
23
24#include <etl/string.h>
27
28namespace satnogs::comms::lib
29{
30
31class lna
32{
33public:
34 lna(const etl::istring &name, bsp::gpio &io);
35
36 const etl::istring &
37 name() const;
38
39 void
40 enable(bool set = true);
41
42 void
43 toggle();
44
45 bool
46 enabled() const;
47
48protected:
50
51private:
52 etl::string<32> m_name;
53};
54
55} // namespace satnogs::comms::lib
GPIO device abstraction.
Definition gpio.hpp:38
bsp::gpio & m_gpio
Definition lna.hpp:49
lna(const etl::istring &name, bsp::gpio &io)
Definition lna.cpp:33
bool enabled() const
Definition lna.cpp:68
void enable(bool set=true)
Definition lna.cpp:49
const etl::istring & name() const
Definition lna.cpp:39