#pragma once
#include <cstdint>
class displayDial_t
{
public:
/// \param display the parent display
/// \param x x pos
/// \param y y pos
/// \param siz = size
displayDial_t(display_t & display,
uint8_t x,
uint8_t y,
uint8_t siz,
uint16_t angle = 90);
// put the dial needle on the display
void draw_needle (int16_t position);
// draw the scale
/// \param low low end of range
/// \param high high end of range
/// \param width length of long marker
/// \param num_step number of ticks
/// \param scale
void draw_scale (int16_t low, int16_t high, uint8_t width, uint8_t num_step,int16_t scale);
/// print min/max limits
void draw_limits();
private:
display_t & m_display;
uint8_t const m_xo ;
uint8_t const m_yo ;
uint8_t const m_siz;
uint16_t const m_a1;
int16_t m_low; ///< lower scale limit
int16_t m_high; ///< upper scale limit
};