Skip to content

Commit 8ee6e65

Browse files
committed
Allow to receive GPIO number
1 parent e4448e7 commit 8ee6e65

File tree

5 files changed

+15
-0
lines changed

5 files changed

+15
-0
lines changed

components/ocs_io/gpio/igpio.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ class IGpio {
1919
//! Destroy.
2020
virtual ~IGpio() = default;
2121

22+
//! Return GPIO number.
23+
virtual GpioNum get_num() const = 0;
24+
2225
//! Get the GPIO level.
2326
virtual status::StatusCode get_level(Level& level) = 0;
2427

components/ocs_io/gpio/target_esp32/gpio.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ Gpio::Gpio(gpio_num_t gpio_num, Level enable_level)
2323
, enable_level_(enable_level) {
2424
}
2525

26+
GpioNum Gpio::get_num() const {
27+
return gpio_num_;
28+
}
29+
2630
status::StatusCode Gpio::get_level(Level& level) {
2731
const int value = gpio_get_level(gpio_num_);
2832
if (value < 0) {

components/ocs_io/gpio/target_esp32/gpio.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@ class Gpio : public IGpio, public core::NonCopyable<Gpio> {
2626
//! Destroy.
2727
virtual ~Gpio() = default;
2828

29+
//! Return GPIO number.
30+
GpioNum get_num() const override;
31+
2932
//! Get the GPIO level.
3033
status::StatusCode get_level(Level& level) override;
3134

components/ocs_test/test_gpio.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ TestGpio::TestGpio(status::StatusCode flip_code,
1616
, turn_off_code_(turn_off_code) {
1717
}
1818

19+
io::gpio::GpioNum TestGpio::get_num() const {
20+
return static_cast<io::gpio::GpioNum>(-1);
21+
}
22+
1923
status::StatusCode TestGpio::get_level(io::gpio::Level& level) {
2024
level = level_;
2125

components/ocs_test/test_gpio.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ class TestGpio : public io::gpio::IGpio, private core::NonCopyable<> {
1919
status::StatusCode turn_on_code,
2020
status::StatusCode turn_off_code);
2121

22+
io::gpio::GpioNum get_num() const override;
2223
status::StatusCode get_level(io::gpio::Level& level) override;
2324
status::StatusCode flip() override;
2425
status::StatusCode turn_on() override;

0 commit comments

Comments
 (0)