Repository for import to local machine

Dependencies:   DMBasicGUI DMSupport

Committer:
jmitc91516
Date:
Wed Jan 13 13:17:05 2016 +0000
Revision:
0:47c880c1463d
Child:
1:a5258871b33d
First revision of 5 inch display version of GC500_2. Dated 13 Jan 2016

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jmitc91516 0:47c880c1463d 1 #ifndef GETGCSTATUSLOOP_H
jmitc91516 0:47c880c1463d 2 #define GETGCSTATUSLOOP_H
jmitc91516 0:47c880c1463d 3
jmitc91516 0:47c880c1463d 4 #include "USBHostGC.h"
jmitc91516 0:47c880c1463d 5 #include "GuiLib.h"
jmitc91516 0:47c880c1463d 6
jmitc91516 0:47c880c1463d 7 #include "GCComponentStatusEnums.h"
jmitc91516 0:47c880c1463d 8 #include "GCComponentStatusColorArea.h"
jmitc91516 0:47c880c1463d 9
jmitc91516 0:47c880c1463d 10
jmitc91516 0:47c880c1463d 11 // Note that GetGCStatusLoop is a singleton - we do not need or want there to be more than one instance of it
jmitc91516 0:47c880c1463d 12 // (there is only one GC, and only one LPC4088)
jmitc91516 0:47c880c1463d 13 class GetGCStatusLoop {
jmitc91516 0:47c880c1463d 14 public:
jmitc91516 0:47c880c1463d 15 /**
jmitc91516 0:47c880c1463d 16 * Static method to create (if necessary) and retrieve the single GetGCStatusLoop instance
jmitc91516 0:47c880c1463d 17 */
jmitc91516 0:47c880c1463d 18 static GetGCStatusLoop * GetInstance(USBDeviceConnected* newUsbDevice, USBHostGC* newUsbHostGC);
jmitc91516 0:47c880c1463d 19
jmitc91516 0:47c880c1463d 20 GuiConst_INT16U GetCurrentPage(void);
jmitc91516 0:47c880c1463d 21 void SetCurrentPage(GuiConst_INT16U newCurrentPage);
jmitc91516 0:47c880c1463d 22
jmitc91516 0:47c880c1463d 23 void SetHomePageGCComponentStatusColorAreas(HomePageGCComponentStatusColorAreas* newColorAreas);
jmitc91516 0:47c880c1463d 24
jmitc91516 0:47c880c1463d 25 void SetSingleGCComponentPageStatusColorAreas(SingleGCComponentPageStatusColorAreas* newColorAreas);
jmitc91516 0:47c880c1463d 26
jmitc91516 0:47c880c1463d 27 void SetupAllEasyGUIVariables(void);
jmitc91516 0:47c880c1463d 28
jmitc91516 0:47c880c1463d 29 void ExitedGCStandbyMode(void);
jmitc91516 0:47c880c1463d 30
jmitc91516 0:47c880c1463d 31 /* ** These never return ** */
jmitc91516 0:47c880c1463d 32 void MainLoop(void);
jmitc91516 0:47c880c1463d 33 void MainLoopWithEthernet(void);
jmitc91516 0:47c880c1463d 34
jmitc91516 0:47c880c1463d 35 private:
jmitc91516 0:47c880c1463d 36 static GetGCStatusLoop * theGetGCStatusLoop;
jmitc91516 0:47c880c1463d 37
jmitc91516 0:47c880c1463d 38 // singleton class -> constructor is private
jmitc91516 0:47c880c1463d 39 GetGCStatusLoop(USBDeviceConnected* newUsbDevice, USBHostGC* newUsbHostGC);
jmitc91516 0:47c880c1463d 40 ~GetGCStatusLoop();
jmitc91516 0:47c880c1463d 41
jmitc91516 0:47c880c1463d 42 USBDeviceConnected* usbDevice;
jmitc91516 0:47c880c1463d 43 USBHostGC* usbHostGC;
jmitc91516 0:47c880c1463d 44
jmitc91516 0:47c880c1463d 45 GuiConst_INT16U currentPage; // This is the easyGUI 'Structure' value (see GuiStruct.h)
jmitc91516 0:47c880c1463d 46
jmitc91516 0:47c880c1463d 47 void DisplayHomePageData(bool mustUpdateDisplay);
jmitc91516 0:47c880c1463d 48 void DisplayColumnPageData(bool mustUpdateDisplay);
jmitc91516 0:47c880c1463d 49 void DisplayInjectorPageData(bool mustUpdateDisplay);
jmitc91516 0:47c880c1463d 50 void DisplayDetectorPageData(bool mustUpdateDisplay);
jmitc91516 0:47c880c1463d 51 void DisplayGasPageData(bool mustUpdateDisplay);
jmitc91516 0:47c880c1463d 52 void DisplayRunningPageData(bool mustUpdateDisplay);
jmitc91516 0:47c880c1463d 53 void DisplayRunningSettingsPageData(bool mustUpdateDisplay);
jmitc91516 0:47c880c1463d 54 void DisplaySettingsPageData(bool mustUpdateDisplay);
jmitc91516 0:47c880c1463d 55
jmitc91516 0:47c880c1463d 56 void DisplayCurrentPageData(bool mustUpdateDisplay);
jmitc91516 0:47c880c1463d 57
jmitc91516 0:47c880c1463d 58 void GetComponentTemperature(char *cmd, char *temp);
jmitc91516 0:47c880c1463d 59 void GetComponentTemperature(char *cmd, float *temp);
jmitc91516 0:47c880c1463d 60 void GetColumnTemperature(char *temp);
jmitc91516 0:47c880c1463d 61 void GetColumnTemperature(float *temp);
jmitc91516 0:47c880c1463d 62 void GetDetectorTemperature(char *temp);
jmitc91516 0:47c880c1463d 63 void GetDetectorTemperature(float *temp);
jmitc91516 0:47c880c1463d 64 void GetInjectorTemperature(char *temp);
jmitc91516 0:47c880c1463d 65 void GetInjectorTemperature(float *temp);
jmitc91516 0:47c880c1463d 66 void GetGasPressure(char *press);
jmitc91516 0:47c880c1463d 67 void GetGasPressure(float *press);
jmitc91516 0:47c880c1463d 68 bool GetGasControlMode(char *mode, bool wantFullPrefix);
jmitc91516 0:47c880c1463d 69 void GetColumnMaxTemperature(char *maxTemp, bool wantFullPrefix);
jmitc91516 0:47c880c1463d 70 void GetColumnMaxTemperature(float *temp);
jmitc91516 0:47c880c1463d 71 void GetInjectionMode(char *mode, bool wantFullPrefix);
jmitc91516 0:47c880c1463d 72 void GetDetectorType(char *type, bool wantFullPrefix);
jmitc91516 0:47c880c1463d 73 void GetSoftwareVersion(char *version);
jmitc91516 0:47c880c1463d 74 void GetRunTime(char *time);
jmitc91516 0:47c880c1463d 75
jmitc91516 0:47c880c1463d 76 bool pageJustChanged;
jmitc91516 0:47c880c1463d 77 bool displayingData;
jmitc91516 0:47c880c1463d 78
jmitc91516 0:47c880c1463d 79 bool gcInStandbyMode;
jmitc91516 0:47c880c1463d 80
jmitc91516 0:47c880c1463d 81 bool GCIsInStandbyMode(void);
jmitc91516 0:47c880c1463d 82 void DisplayStandbyModePage(void);
jmitc91516 0:47c880c1463d 83
jmitc91516 0:47c880c1463d 84 HomePageGCComponentStatusColorAreas* homePageGCComponentStatusColorAreas;
jmitc91516 0:47c880c1463d 85 SingleGCComponentPageStatusColorAreas* singleGCComponentPageStatusColorAreas;
jmitc91516 0:47c880c1463d 86
jmitc91516 0:47c880c1463d 87 void DisplayText(char *text, short X, short Y);
jmitc91516 0:47c880c1463d 88
jmitc91516 0:47c880c1463d 89 void SetGCDeviceReport(char *cmd, char *response);
jmitc91516 0:47c880c1463d 90
jmitc91516 0:47c880c1463d 91 int GetGCStatusOrFaultCode(char *cmd);
jmitc91516 0:47c880c1463d 92 int GetGCStatus(void);
jmitc91516 0:47c880c1463d 93 int GetGCFaultCode(void);
jmitc91516 0:47c880c1463d 94 void GetGCStateAsInfoString(int gcStateCode, int gcFaultCode, char *statusString);
jmitc91516 0:47c880c1463d 95 bool GCHasFaulted(char* statusString);
jmitc91516 0:47c880c1463d 96 void DisplayGCInFaultStatePage(void);
jmitc91516 0:47c880c1463d 97
jmitc91516 0:47c880c1463d 98 bool IsHeatOn(void);
jmitc91516 0:47c880c1463d 99
jmitc91516 0:47c880c1463d 100 int GetInstrumentStatus(void);
jmitc91516 0:47c880c1463d 101
jmitc91516 0:47c880c1463d 102 GCComponentStatus GetComponentStatus(GCComponent component);
jmitc91516 0:47c880c1463d 103
jmitc91516 0:47c880c1463d 104 void UpdateHomePageGCComponentStatusColorAreas(void);
jmitc91516 0:47c880c1463d 105
jmitc91516 0:47c880c1463d 106 void UpdateSingleGCComponentPageStatusColorArea(GCComponent component);
jmitc91516 0:47c880c1463d 107
jmitc91516 0:47c880c1463d 108 static const int waitTimeMs;
jmitc91516 0:47c880c1463d 109
jmitc91516 0:47c880c1463d 110 static const int ethernetPort;
jmitc91516 0:47c880c1463d 111 static const char* ethernetIP;
jmitc91516 0:47c880c1463d 112 static const char* ethernetMask;
jmitc91516 0:47c880c1463d 113 static const char* ethernetGateway;
jmitc91516 0:47c880c1463d 114 };
jmitc91516 0:47c880c1463d 115
jmitc91516 0:47c880c1463d 116 #endif // GETGCSTATUSLOOP_H