################################################################ # # Copyright (c) 2021 Diality Inc. - All Rights Reserved. # # THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN # WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. # # @file dg_defs.py # # @author (last) Peter Lucia # @date (last) 22-Jun-2021 # @author (original) Peter Lucia # @date (original) 22-Jun-2021 # ############################################################################ from enum import unique from ..utils.base import DialinEnum @unique class DGOpModes(DialinEnum): DG_MODE_FAUL = 0 # Fault mode DG_MODE_SERV = 1 # Service mode DG_MODE_INIT = 2 # Initialization & POST mode DG_MODE_STAN = 3 # Standby mode - connected to HD DG_MODE_SOLO = 4 # Standby Solo mode - no HD connected DG_MODE_CIRC = 5 # Re-circulate mode DG_MODE_FILL = 6 # Fill mode DG_MODE_DRAI = 7 # Drain mode DG_MODE_FLUS = 8 # Flush mode DG_MODE_HEAT = 9 # Heat Disinfect mode DG_MODE_CHEM = 10 # Chemical Disinfect mode DG_MODE_NLEG = 11 # Not legal - an illegal mode transition occurred NUM_OF_DG_MODES = 12 # Number of DG operation modes @unique class DGStandByModeStates(DialinEnum): DG_STANDBY_MODE_STATE_START = 0 # Start standby mode state DG_STANDBY_MODE_STATE_IDLE = 1 # Idle standby mode state DG_STANDBY_MODE_STATE_FLUSH_FILTER = 2 # Sample water flush filter state DG_STANDBY_MODE_STATE_FLUSH_FILTER_IDLE = 3 # Sample water flush filter idle state DG_STANDBY_MODE_STATE_SAMPLE_WATER = 4 # Sample water state NUM_OF_DG_STANDBY_MODE_STATES = 5 # Number of standby mode states @unique class DGRecircModeStates(DialinEnum): DG_RECIRCULATE_MODE_STATE_START = 0 # Start re-circulation mode state DG_RECIRCULATE_MODE_STATE_FLUSH_LINES = 1 # Flush lines state DG_RECIRCULATE_MODE_STATE_RECIRC_WATER = 2 # Re-circulate water state DG_RECIRCULATE_MODE_STATE_PAUSE = 3 # Pause state (pumps = heaters = lamps off) NUM_OF_DG_RECIRCULATE_MODE_STATES = 4 # Number of fill mode states @unique class DGFillModeStates(DialinEnum): DG_FILL_MODE_STATE_START = 0 # Start fill mode state DG_FILL_MODE_STATE_CHECK_INLET_WATER = 1 # Check inlet water quality state DG_FILL_MODE_STATE_BICARB_PUMP_CHECK = 2 # Run bicarb concentrate pump and check conductivity range DG_FILL_MODE_STATE_ACID_PUMP_CHECK = 3 # Run acid concentrate pump and check conductivity range DG_FILL_MODE_STATE_DIALYSATE_PRODUCTION = 4 # Dialysate production state DG_FILL_MODE_STATE_DELIVER_DIALYSATE = 5 # Deliver dialysate state DG_FILL_MODE_STATE_PAUSED = 6 # Dialysate generation pause state NUM_OF_DG_FILL_MODE_STATES = 7 # Number of fill mode states @unique class DGDrainModeStates(DialinEnum): DG_DRAIN_STATE_START = 0 # Start drain mode state DG_DRAIN_STATE_DRAIN = 1 # Drain drain mode state DG_DRAIN_STATE_TARE = 2 # Tare drain mode state NUM_OF_DG_DRAIN_STATES = 3 # Number of drain mode states @unique class HeatStates(DialinEnum): DG_HEAT_DISINFECT_STATE_START = 0 # Heat disinfect, start mode state DG_HEAT_DISINFECT_STATE_DRAIN_R1 = 1 # Heat disinfect, drain R1 state DG_HEAT_DISINFECT_STATE_DRAIN_R2 = 2 # Heat disinfect, drain R2 state DG_HEAT_DISINFECT_STATE_FLUSH_DRAIN = 3 # Heat disinfect, flush drain state DG_HEAT_DISINFECT_STATE_FLUSH_CIRCULATION = 4 # Heat disinfect, flush circulation state DG_HEAT_DISINFECT_STATE_FLUSH_R1_AND_R2 = 5 # Heat disinfect, flush R1 and R2 state DG_HEAT_DISINFECT_STATE_FLUSH_R2_AND_DRAIN_R1 = 6 # Heat disinfect, flush R2 and drain R1 state DG_HEAT_DISINFECT_STATE_FLUSH_DRAIN_R2 = 7 # Heat disinfect, flush drain R2 state DG_HEAT_DISINFECT_STATE_FLUSH_DRAIN_R1 = 8 # Heat disinfect, flush drain R1 state DG_HEAT_DISINFECT_STATE_FILL_WITH_WATER = 9 # Heat disinfect, fill with water state DG_HEAT_DISINFECT_STATE_DISINFECT_R1_TO_R2 = 10 # Heat disinfect, disinfect R1 to R2 state DG_HEAT_DISINFECT_STATE_FILL_R2_WITH_HOT_WATER = 11 # Heat disinfect, fill R2 with hot water state DG_HEAT_DISINFECT_STATE_DISINFECT_R2_TO_R1 = 12 # Heat disinfect, disinfect R2 to R1 state DG_HEAT_DISINFECT_STATE_COOL_DOWN_HEATERS = 13 # Heat disinfect, cool down heaters state DG_HEAT_DISINFECT_STATE_COOL_DOWN_RO_FILTER = 14 # Heat disinfect, cool down RO filter state DG_HEAT_DISINFECT_STATE_MIX_DRAIN_R1 = 15 # Heat disinfect, mix drain R1 state DG_HEAT_DISINFECT_STATE_MIX_DRAIN_R2 = 16 # Heat disinfect, mix drain R2 state DG_HEAT_DISINFECT_STATE_RINSE_R1_TO_R2 = 17 # Heat disinfect, rinse R1 to R2 state DG_HEAT_DISINFECT_STATE_RINSE_R2_TO_R1_AND_DRAIN_R1 = 18 # Heat disinfect, rinse R2 to R1 and drain R1 state DG_HEAT_DISINFECT_STATE_RINSE_CIRCULATION = 19 # Heat disinfect, rinse circulation state DG_HEAT_DISINFECT_STATE_CANCEL_BASIC_PATH = 20 # Heat disinfect, cancel mode basic path state DG_HEAT_DISINFECT_STATE_CANCEL_WATER_PATH = 21 # Heat disinfect, cancel mode water path state DG_HEAT_DISINFECT_STATE_COMPLETE = 22 # Heat disinfect, complete state NUM_OF_DG_HEAT_DISINFECT_STATES = 23 # Number of heat disinfect mode states @unique class HeatDisinfectUIStates(DialinEnum): HEAT_DISINFECT_UI_STATE_NOT_RUNNING = 0 HEAT_DISINFECT_UI_STATE_FLUSH_BEFORE_DISINFECT = 1 HEAT_DISINFECT_UI_STATE_HEAT_UP_WATER = 2 HEAT_DISINFECT_UI_STATE_DISINFECT_RESERVOIR_1 = 3 HEAT_DISINFECT_UI_STATE_TRANSITION_HOT_WATER = 4 HEAT_DISINFECT_UI_STATE_DISINFECT_RESERVOIR_2 = 5 HEAT_DISINFECT_UI_STATE_COOL_DOWN_DEVICE = 6 HEAT_DISINFECT_UI_STATE_FLUSH_AFTER_DISINFECT = 7 HEAT_DISINFECT_UI_STATE_CANCEL_DISINFECT = 8 HEAT_DISINFECT_UI_STATE_COMPLETE = 9 @unique class ChemicalDisinfectStates(DialinEnum): DG_CHEM_DISINFECT_STATE_START = 0 DG_CHEM_DISINFECT_STATE_DRAIN_R1 = 1 DG_CHEM_DISINFECT_STATE_DRAIN_R2 = 2 DG_CHEM_DISINFECT_STATE_FLUSH_DRAIN = 3 DG_CHEM_DISINFECT_STATE_FLUSH_CIRCULATION = 4 DG_CHEM_DISINFECT_STATE_FLUSH_R1_AND_R2 = 5 DG_CHEM_DISINFECT_STATE_FLUSH_R2_AND_DRAIN_R1 = 6 DG_CHEM_DISINFECT_STATE_FLUSH_DRAIN_R2 = 7 DG_CHEM_DISINFECT_STATE_FLUSH_DRAIN_R1 = 8 DG_CHEM_DISINFECT_STATE_PRIME_ACID_LINE = 9 DG_CHEM_DISINFECT_STATE_FILL_WITH_WATER_AND_DISINFECTANT = 10 DG_CHEM_DISINFECT_STATE_REMOVE_ACID_BOTTLE_FROM_UI = 11 DG_CHEM_DISINFECT_STATE_DISINFECT_R1_TO_R2 = 12 DG_CHEM_DISINFECT_STATE_FILL_R2_WITH_DISINFECTANT = 13 DG_CHEM_DISINFECT_STATE_DISINFECT_R2_TO_R1 = 14 DG_CHEM_DISINFECT_STATE_COOL_DOWN_HEATERS = 15 DG_CHEM_DISINFECT_STATE_DISINFECTANT_DRAIN_R1 = 16 DG_CHEM_DISINFECT_STATE_DISINFECTANT_DRAIN_R2 = 17 DG_CHEM_DISINFECT_STATE_RINSE_R1_TO_R2 = 18 DG_CHEM_DISINFECT_STATE_RINSE_R2_TO_R1_AND_DRAIN_R1 = 19 DG_CHEM_DISINFECT_STATE_RINSE_R1_TO_R2_AND_DRAIN_R2 = 20 DG_CHEM_DISINFECT_STATE_RINSE_CIRCULATION = 21 DG_CHEM_DISINFECT_STATE_CANCEL_BASIC_PATH = 22 DG_CHEM_DISINFECT_STATE_CANCEL_WATER_PATH = 23 DG_CHEM_DISINFECT_STATE_COMPLETE = 24 @unique class ChemDisinfectUIStates(DialinEnum): CHEM_DISINFECT_UI_STATE_NOT_RUNNING = 0 CHEM_DISINFECT_UI_STATE_FLUSH_BEFORE_DISINFECT = 1 CHEM_DISINFECT_UI_STATE_MIX_WATER_AND_ACID = 2 CHEM_DISINFECT_UI_STATE_REMOVE_ACID = 3 CHEM_DISINFECT_UI_STATE_DISINFECT_DEVICE = 4 CHEM_DISINFECT_UI_STATE_FLUSH_AFTER_DISINFECT = 5 CHEM_DISINFECT_UI_STATE_CANCEL_DISINFECT = 6 CHEM_DISINFECT_UI_STATE_COMPLETE = 7