arduino-emulator
Loading...
Searching...
No Matches
Sources.h
1/*
2 Sources.h
3 Copyright (c) 2025 Phil Schatzmann. All right reserved.
4
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with this library; if not, write to the Free Software
17 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18*/
19#pragma once
20#include "api/HardwareI2C.h"
21#include "api/HardwareSPI.h"
22#include "HardwareGPIO.h"
23
24namespace arduino {
25
36class I2CSource {
37 public:
38 virtual HardwareI2C* getI2C() = 0;
39};
40
51class SPISource {
52 public:
53 virtual HardwareSPI* getSPI() = 0;
54};
55
67 public:
68 virtual HardwareGPIO* getGPIO() = 0;
69};
70
71
72} // namespace arduino
Abstract interface for providing GPIO hardware implementations.
Definition Sources.h:66
Abstract base class for GPIO (General Purpose Input/Output) functions.
Definition HardwareGPIO.h:51
Definition HardwareI2C.h:28
Definition HardwareSPI.h:120
Abstract interface for providing I2C hardware implementations.
Definition Sources.h:36
Abstract interface for providing SPI hardware implementations.
Definition Sources.h:51
We provide the WiFi class to simulate the Arduino WIFI. In in Linux we can expect that networking is ...
Definition CanMsg.cpp:31