mirror of
https://github.com/esphome/esphome.git
synced 2026-09-14 08:38:39 +00:00
35 lines
1013 B
C++
35 lines
1013 B
C++
#include "ethernet_component.h"
|
|
|
|
#ifdef USE_ETHERNET
|
|
|
|
#include "esphome/core/log.h"
|
|
|
|
namespace esphome::ethernet {
|
|
|
|
EthernetComponent *global_eth_component; // NOLINT(cppcoreguidelines-avoid-non-const-global-variables)
|
|
|
|
EthernetComponent::EthernetComponent() { global_eth_component = this; }
|
|
|
|
float EthernetComponent::get_setup_priority() const { return setup_priority::WIFI; }
|
|
|
|
void EthernetComponent::set_type(EthernetType type) { this->type_ = type; }
|
|
|
|
#ifdef USE_ETHERNET_MANUAL_IP
|
|
void EthernetComponent::set_manual_ip(const ManualIP &manual_ip) { this->manual_ip_ = manual_ip; }
|
|
#endif
|
|
|
|
#ifdef USE_ETHERNET_IP_STATE_LISTENERS
|
|
void EthernetComponent::notify_ip_state_listeners_() {
|
|
auto ips = this->get_ip_addresses();
|
|
auto dns1 = this->get_dns_address(0);
|
|
auto dns2 = this->get_dns_address(1);
|
|
for (auto *listener : this->ip_state_listeners_) {
|
|
listener->on_ip_state(ips, dns1, dns2);
|
|
}
|
|
}
|
|
#endif // USE_ETHERNET_IP_STATE_LISTENERS
|
|
|
|
} // namespace esphome::ethernet
|
|
|
|
#endif // USE_ETHERNET
|