36 #ifndef __INCLUDE_CCALIBRATION_HXX 37 #define __INCLUDE_CCALIBRATION_HXX 43 #include <nuttx/nx/nxglib.h> 46 #include <fixedmath.h> 65 #define CALIB_UPPER_LEFT_INDEX 0 66 #define CALIB_UPPER_RIGHT_INDEX 1 67 #define CALIB_LOWER_RIGHT_INDEX 2 68 #define CALIB_LOWER_LEFT_INDEX 3 70 #define CALIB_DATA_POINTS 4 88 #ifdef CONFIG_NXWM_CALIBRATION_ANISOTROPIC 132 CALTHREAD_NOTRUNNING = 0,
147 CALPHASE_NOT_STARTED = 0,
161 struct nxgl_point_s pos;
173 #ifdef CONFIG_NXWM_CALIBRATION_MESSAGES 179 struct nxgl_point_s m_touchPos;
185 #ifdef CONFIG_NXWM_CALIBRATION_AVERAGE 187 struct nxgl_point_s m_sampleData[CONFIG_NXWM_CALIBRATION_NSAMPLES];
189 struct nxgl_point_s m_calibData[CALIB_DATA_POINTS];
197 void touchscreenInput(
struct touch_sample_s &sample);
199 #ifdef CONFIG_NXWM_CALIBRATION_MESSAGES 206 bool createWidgets(
void);
212 void destroyWidgets(
void);
241 return (m_calthread == CALTHREAD_RUNNING ||
242 m_calthread == CALTHREAD_HIDE ||
243 m_calthread == CALTHREAD_SHOW);
258 return (m_calthread == CALTHREAD_STARTED ||
259 m_calthread == CALTHREAD_RUNNING ||
260 m_calthread == CALTHREAD_HIDE ||
261 m_calthread == CALTHREAD_SHOW);
272 static FAR
void *calibration(FAR
void *arg);
281 #ifdef CONFIG_NXWM_CALIBRATION_AVERAGE 282 bool averageSamples(
struct nxgl_point_s &average);
290 void stateMachine(
void);
296 void showCalibration(
void);
303 void finishCalibration(
void);
408 bool isFullScreen(
void)
const;
452 #endif // __INCLUDE_CCALIBRATION_HXX
CTouchscreen * m_touchscreen
CTouchscreen * m_touchscreen
bool isRunning(void) const
CFullScreenWindow * m_window
NXWidgets::CLabel * m_text
nxgl_mxpixel_t circleFillColor
bool isStarted(void) const
NXWidgets::CNxFont * m_font
~CCalibrationFactory(void)
volatile uint8_t m_calthread