#pragma once #include "esphome.h" #include "esphome/components/sensor/sensor.h" #include "esphome/core/component.h" #include "esphome/core/gpio.h" namespace esphome { namespace analog_orp { class ChlorineSensor: public PollingComponent, public sensor::Sensor { public: void set_pin(InternalGPIOPin *pin); void set_zero_point(int zero_point); void set_print_raw(bool print_raw); void set_inverted(bool inverted); void setup() override; void update() override; float sample(); void dump_config() override; float get_setup_priority() const; protected: InternalGPIOPin *pin; bool inverted; bool print_raw; float zero_point; int zero_point_int; }; } }