public void sendCommand(ECOMMAND_TYPE type) { switch (type) { case ECOMMAND_TYPE.EA: writeCommand("<EA_>"); break; case ECOMMAND_TYPE.CS: if (!is_running || tm_state != ETM_STATE.CONNECTED) { break; } writeCommand(String.Format("<CS_{0:D3}>", (int)(speed_target * 10))); break; case ECOMMAND_TYPE.CR: if (!is_running || tm_state != ETM_STATE.CONNECTED) { break; } writeCommand(String.Format("<CR_{0:D3},{1:D3}>", incline_target * 10, Constants.SPEEDRATIO)); break; case ECOMMAND_TYPE.CC: if (tm_state != ETM_STATE.CONNECTED) { break; } writeCommand("<CC_>"); break; case ECOMMAND_TYPE.CU: if (!is_running || tm_state != ETM_STATE.CONNECTED) { break; } writeCommand(String.Format("<CU_{0:D2},{1:D3},{2:D1}>", user.age, user.weight, user.isMale ? 1 : 0)); break; case ECOMMAND_TYPE.CT: if (!is_running || tm_state != ETM_STATE.CONNECTED) { break; } writeCommand(String.Format("<CT_{0:D3},{1:D3}>", heartbeat_limit, watt_target)); break; case ECOMMAND_TYPE.CP: if (tm_state != ETM_STATE.CONNECTED) { break; } float tmp = 0; if (is_running) { tmp = Constants.stop_tm_in_x_sec; } is_running = !is_running; writeCommand(String.Format("<CP_{0:N0}>", 10 * tmp)); break; case ECOMMAND_TYPE.WT: if (tm_state != ETM_STATE.CONNECTED) { break; } writeCommand("<WT_7>"); break; case ECOMMAND_TYPE.CF: if (tm_state != ETM_STATE.CONNECTED) { break; } writeCommand(String.Format("<CF_{0:D3},{1:D3}>", fan_target, Constants.SPEEDRATIO)); break; case ECOMMAND_TYPE.CG: if (tm_state != ETM_STATE.CONNECTED) { break; } writeCommand(String.Format("<CG_{0:D1}>", is_reversion ? 1 : 0)); break; case ECOMMAND_TYPE.CM: if (tm_state != ETM_STATE.CONNECTED) { break; } writeCommand(String.Format("<CM_{0:D3}>", pressure_target)); break; case ECOMMAND_TYPE.FF: if (tm_state != ETM_STATE.CONNECTED) { break; } writeCommand(String.Format("<FF_{0:D2}>", inline_mode)); break; case ECOMMAND_TYPE.AT: if (tm_state != ETM_STATE.CONNECTED) { break; } writeCommand("<AT_>"); break; case ECOMMAND_TYPE.SLEEP: if (tm_state != ETM_STATE.CONNECTED) { break; } writeCommand("<SLEEP_>"); break; case ECOMMAND_TYPE.DLOAD: if (tm_state != ETM_STATE.CONNECTED) { break; } writeCommand("<DLOAD_>"); break; default: WriteLineToConsole("cmd " + type + " not implemented"); break; } }
void sendCommand(ECOMMAND_TYPE type) { switch (type) { case ECOMMAND_TYPE.EP: writeCommand(String.Format("<EP_{0}>", machine_producer)); break; case ECOMMAND_TYPE.ET: writeCommand("<ET_" + machine_type + ">"); break; case ECOMMAND_TYPE.EM: writeCommand("<EM_" + model_name + ">"); break; case ECOMMAND_TYPE.ER: writeCommand(String.Format("<ER_{0:D2},{1:D2}>", min_incline, max_incline)); break; case ECOMMAND_TYPE.ES: writeCommand(String.Format("<ES_{0:D3},{1:D3}>", 10 * min_speed, 10 * max_speed)); break; case ECOMMAND_TYPE.EV: writeCommand("<EV_" + sw_name + "," + sw_version + "," + comsw_version + ">"); break; case ECOMMAND_TYPE.ED: writeCommand(String.Format("<ED_{0:D4}>", (int)(100 * wheel_dim))); break; case ECOMMAND_TYPE.EU: writeCommand("<EU_" + unit_type + ">"); break; case ECOMMAND_TYPE.EI: writeCommand("<EI_" + reserved_param_1 + "," + reserved_param_2 + "," + reserved_param_3 + ">"); break; case ECOMMAND_TYPE.EZ: writeCommand("<EZ_Q>"); break; case ECOMMAND_TYPE.CP: writeCommand("<CP_OK>"); break; case ECOMMAND_TYPE.WT: writeCommand("<WT_>"); break; case ECOMMAND_TYPE.WS: writeCommand(wS.ToCmdString()); break; case ECOMMAND_TYPE.W7: writeCommand(w7.ToCmdString()); break; default: WriteLineToConsole("SENDING INVALID COMMAND: " + type); break; } }