#ifndef __SOLAR_CBF_STORE_PYLON // include GUARD #define __SOLAR_CBF_STORE_PYLON #include "esphome.h" #include #include "common.h" #include "cbf_store.h" #include "cbf_pylon.h" using namespace esphome; namespace solar { class cbf_store_pylon : public cbf_store, public cbf_pylon { public: cbf_store_pylon() = delete; // default constructor not allowed cbf_store_pylon(int msg_id, uint32_t can_id, const byte_vector& _frame, bool _rtr , time_t timestamp); virtual ~cbf_store_pylon() = default; // virtual destructor for base class std::shared_ptr clone() const; void clear(); void swap(cbf_store_pylon &s); virtual cbf_store::cbf_updateresult update(const cbf_store& newitem, const int *comparecolumns) override; virtual std::string to_string() const override; cbf_store_pylon(const cbf_store_pylon& b); cbf_store_pylon& operator=(const cbf_store_pylon& b); cbf_store_pylon(cbf_store_pylon&& src); cbf_store_pylon& operator=(cbf_store_pylon&& src); private: virtual std::shared_ptr clone_impl() const override; }; } // namespace solar #endif // __SOLAR_CBF_STORE_PYLON