// Gate.h #ifndef Gate_h #define Gate_h #include #include class Gate { private: bool state; int16_t cycle; uint32_t dur; uint32_t len; uint8_t width; uint8_t divideMode; uint16_t div; uint16_t modifier; std::string divString; uint8_t p; public: Gate(uint8_t pin); uint8_t pin; void turnOn(); void turnOff(); void setLen(uint32_t currentPeriod); void setDiv(uint16_t newDiv, uint8_t divide = 1); void setWidth(uint16_t newWidth); void setP(uint16_t prob); bool getState(); }; #endif