Meditech control panel software  1.0beta
application C++ firmware for control panel ChipKit PI board
 All Classes Files Functions Variables Typedefs Macros Pages
LCDTemplates Class Reference

#include "LCDTemplates.h"

Public Member Functions

 LCDTemplates (AlphaLCD myLCD)
 Class constructor. More...
 
int createDisplay ()
 Create the full display view parameters. More...
 
void updateDisplay (String val, int fieldID)
 Update the variable content field(s) only. More...
 
void cleanDisplay ()
 Clean che LCD display area. More...
 

Public Attributes

int id
 
LCDTemplateField fields
 

Private Attributes

AlphaLCD mLcd
 

Detailed Description

Definition at line 144 of file LCDTemplates.h.

Constructor & Destructor Documentation

LCDTemplates::LCDTemplates ( AlphaLCD  myLCD)

Class constructor.

Definition at line 14 of file LCDTemplates.cpp.

References mLcd.

14  {
15  mLcd = myLCD;
16 }
AlphaLCD mLcd
Definition: LCDTemplates.h:153

Member Function Documentation

void LCDTemplates::cleanDisplay ( )

Clean che LCD display area.

Definition at line 144 of file LCDTemplates.cpp.

References mLcd.

Referenced by parser().

144  {
145  mLcd.clear();
146 }
AlphaLCD mLcd
Definition: LCDTemplates.h:153
int LCDTemplates::createDisplay ( )

Create the full display view parameters.

This method should be called only when the template ID has already been set.

Returns
The number of fields of the selected template

Definition at line 26 of file LCDTemplates.cpp.

References BLOOD_MAX, BLOOD_MAXVAL, BLOOD_MIN, BLOOD_MINVAL, BLOOD_TITLE, BLOOD_WAIT, BLOODPRESS_FIELDS, LCDTemplateField::col, DEFAULT_FIELDS, DEFAULT_STATUS, DEFAULT_TITLE, DEFAULT_VERSION, ECG_FIELDS, ECG_STATUS, ECG_STATUSFLAG, ECG_TITLE, fields, HEARTBEAT_AVERAGE, HEARTBEAT_AVERAGEVAL, HEARTBEAT_FIELDS, HEARTBEAT_SPOT, HEARTBEAT_SPOTVAL, HEARTBEAT_TITLE, INFO_DATE, INFO_FIELDS, INFO_GPS, INFO_RPM, INFO_TIME, INFO_TITLE, LCDTemplateField::row, STET_GAIN, STET_GAINVAL, STET_TITLE, STETHOSCOPE_FIELDS, TEMPERATURE_AVERAGE, TEMPERATURE_AVERAGEVAL, TEMPERATURE_FIELDS, TEMPERATURE_SPOT, TEMPERATURE_SPOTVAL, TEMPERATURE_TITLE, TEST_FIELDS, TEST_STATUS, TEST_TITLE, TID_BLOODPRESS, TID_DEFAULT, TID_ECG, TID_HEARTBEAT, TID_INFO, TID_STETHOSCOPE, TID_TEMPERATURE, and TID_TEST.

Referenced by parser().

26  {
27  int numFields;
28 
29  switch(id) {
30  case TID_STETHOSCOPE:
31  fields.row[STET_TITLE] = 0;
32  fields.col[STET_TITLE] = 0;
33  fields.row[STET_GAIN] = 1;
34  fields.col[STET_GAIN] = 0;
35  fields.row[STET_GAINVAL] = 1;
36  fields.col[STET_GAINVAL] = 12;
37  numFields = STETHOSCOPE_FIELDS;
38  break;
39  case TID_BLOODPRESS:
40  fields.row[BLOOD_TITLE] = 0;
41  fields.col[BLOOD_TITLE] = 0;
42  fields.row[BLOOD_WAIT] = 1;
43  fields.col[BLOOD_WAIT] = 16;
44  fields.row[BLOOD_MIN] = 1;
45  fields.col[BLOOD_MIN] = 0;
46  fields.row[BLOOD_MINVAL] = 1;
47  fields.col[BLOOD_MINVAL] = 3;
48  fields.row[BLOOD_MAX] = 1;
49  fields.col[BLOOD_MAX] = 7;
50  fields.row[BLOOD_MAXVAL] = 1;
51  fields.col[BLOOD_MAXVAL] = 9;
52  numFields = BLOODPRESS_FIELDS;
53  break;
54  case TID_HEARTBEAT:
65  numFields = HEARTBEAT_FIELDS;
66  break;
67  case TID_TEMPERATURE:
78  numFields = TEMPERATURE_FIELDS;
79  break;
80  case TID_ECG:
81  fields.row[ECG_TITLE] = 0;
82  fields.col[ECG_TITLE] = 0;
83  fields.row[ECG_STATUS] = 1;
84  fields.col[ECG_STATUS] = 0;
87  numFields = ECG_FIELDS;
88  break;
89  case TID_TEST:
90  fields.row[TEST_TITLE] = 0;
91  fields.col[TEST_TITLE] = 0;
92  fields.row[TEST_STATUS] = 1;
93  fields.col[TEST_STATUS] = 0;
94  numFields = TEST_FIELDS;
95  break;
96  case TID_INFO:
97  fields.row[INFO_TITLE] = 0;
98  fields.col[INFO_TITLE] = 0;
99  fields.row[INFO_RPM] = 1;
100  fields.col[INFO_RPM] = 16;
101  fields.row[INFO_DATE] = 0;
102  fields.col[INFO_DATE] = 4;
103  fields.row[INFO_TIME] = 0;
104  fields.col[INFO_TIME] = 9;
105  fields.row[INFO_GPS] = 1;
106  fields.col[INFO_GPS] = 0;
107  numFields = INFO_FIELDS;
108  break;
109  case TID_DEFAULT:
110  fields.row[DEFAULT_TITLE] = 0;
111  fields.col[DEFAULT_TITLE] = 0;
115  fields.col[DEFAULT_STATUS] = 10;
116  numFields = DEFAULT_FIELDS;
117  break;
118  }
119 
120  return numFields;
121 }
#define BLOOD_TITLE
Definition: LCDTemplates.h:90
#define BLOOD_WAIT
Definition: LCDTemplates.h:91
#define TEST_FIELDS
Definition: LCDTemplates.h:124
#define BLOOD_MAX
Definition: LCDTemplates.h:94
#define BLOOD_MAXVAL
Definition: LCDTemplates.h:95
#define INFO_GPS
Definition: LCDTemplates.h:135
#define BLOODPRESS_FIELDS
Definition: LCDTemplates.h:89
#define ECG_STATUS
ECG enabled PIN.
Definition: Globals.h:17
#define ECG_FIELDS
Definition: LCDTemplates.h:117
#define HEARTBEAT_AVERAGEVAL
Definition: LCDTemplates.h:104
#define TEMPERATURE_AVERAGEVAL
Definition: LCDTemplates.h:113
#define TID_DEFAULT
Control panel default template.
Definition: LCDTemplates.h:138
#define STET_GAINVAL
Definition: LCDTemplates.h:85
#define HEARTBEAT_AVERAGE
Definition: LCDTemplates.h:103
#define INFO_FIELDS
Definition: LCDTemplates.h:130
#define ECG_STATUSFLAG
Definition: LCDTemplates.h:120
#define HEARTBEAT_FIELDS
Definition: LCDTemplates.h:99
#define TEMPERATURE_SPOT
Definition: LCDTemplates.h:110
#define TID_TEST
Control panel test cycle template.
Definition: LCDTemplates.h:123
#define STET_GAIN
Definition: LCDTemplates.h:84
#define HEARTBEAT_SPOT
Definition: LCDTemplates.h:101
#define ECG_TITLE
Definition: LCDTemplates.h:118
#define TEMPERATURE_FIELDS
Definition: LCDTemplates.h:108
#define BLOOD_MIN
Definition: LCDTemplates.h:92
#define INFO_TITLE
Definition: LCDTemplates.h:131
#define TEMPERATURE_TITLE
Definition: LCDTemplates.h:109
#define TEMPERATURE_AVERAGE
Definition: LCDTemplates.h:112
int row[6]
Field row.
Definition: LCDTemplates.h:76
#define TID_ECG
Control panel E.C.G. template.
Definition: LCDTemplates.h:116
LCDTemplateField fields
Definition: LCDTemplates.h:151
#define HEARTBEAT_TITLE
Definition: LCDTemplates.h:100
#define TEST_TITLE
Definition: LCDTemplates.h:125
#define STETHOSCOPE_FIELDS
Definition: LCDTemplates.h:82
int col[6]
Field column.
Definition: LCDTemplates.h:77
#define TID_TEMPERATURE
Temperature frequency template.
Definition: LCDTemplates.h:107
#define TID_INFO
Control panel info template.
Definition: LCDTemplates.h:129
#define INFO_TIME
Definition: LCDTemplates.h:134
#define INFO_DATE
Definition: LCDTemplates.h:133
#define TEST_STATUS
Definition: LCDTemplates.h:126
#define DEFAULT_STATUS
Definition: LCDTemplates.h:142
#define TID_BLOODPRESS
Blood pressure template parameters.
Definition: LCDTemplates.h:88
#define HEARTBEAT_SPOTVAL
Definition: LCDTemplates.h:102
#define INFO_RPM
Definition: LCDTemplates.h:132
#define TEMPERATURE_SPOTVAL
Definition: LCDTemplates.h:111
#define DEFAULT_TITLE
Definition: LCDTemplates.h:140
#define TID_HEARTBEAT
Heartbeat frequency template.
Definition: LCDTemplates.h:98
#define TID_STETHOSCOPE
Microphonic stethoscope template.
Definition: LCDTemplates.h:81
#define BLOOD_MINVAL
Definition: LCDTemplates.h:93
#define DEFAULT_FIELDS
Definition: LCDTemplates.h:139
#define DEFAULT_VERSION
Definition: LCDTemplates.h:141
#define STET_TITLE
Definition: LCDTemplates.h:83
void LCDTemplates::updateDisplay ( String  val,
int  fieldID 
)

Update the variable content field(s) only.

This method should be called every time the field content of a variable is updated. It affects only the data content fields. To recreate the entire display the createDisplay() method should be called. When the method is called, the class field value is updated after the value conversion.

Parameters
valThe string to update
fieldThe field ID

Definition at line 136 of file LCDTemplates.cpp.

References LCDTemplateField::col, fields, mLcd, and LCDTemplateField::row.

Referenced by parser().

136  {
137  mLcd.setCursor(fields.col[fieldID], fields.row[fieldID]);
138  mLcd << val;
139 }
int row[6]
Field row.
Definition: LCDTemplates.h:76
LCDTemplateField fields
Definition: LCDTemplates.h:151
int col[6]
Field column.
Definition: LCDTemplates.h:77
AlphaLCD mLcd
Definition: LCDTemplates.h:153

Member Data Documentation

LCDTemplateField LCDTemplates::fields

Definition at line 151 of file LCDTemplates.h.

Referenced by createDisplay(), and updateDisplay().

int LCDTemplates::id

Definition at line 150 of file LCDTemplates.h.

Referenced by parser().

AlphaLCD LCDTemplates::mLcd
private

Definition at line 153 of file LCDTemplates.h.

Referenced by cleanDisplay(), LCDTemplates(), and updateDisplay().


The documentation for this class was generated from the following files: