{{~
devsim_config = [
	{"Name":"initial_state", "CiiType":"boolean", "PyType":"bool", "Required":true},
	{"Name":"warm_up",       "CiiType":"double",  "PyType":"float", "Required":true}, 
	{"Name":"cool_down",     "CiiType":"double",  "PyType":"float", "Required":true},
	{"Name": "max_on",       "CiiType":"int",  "PyType":"int", "Required":true},
]


enum_texts['E_LAMP_ERROR'] = {
   	OK: 'OK',
	HW_NOT_OP: 'TwinCAT not in OP state or CouplerState not mapped.',
	INIT_FAILURE: 'INIT command aborted due to STOP or RESET.',
	UNEXPECTED_OFF: 'Lamp unexpectedly switched OFF.',
	UNEXPECTED_ON: 'Lamp unexpectedly switched ON.',
	FAULT_SIG: 'Fault signal active.',
	MAXON: 'Lamp maximum ON time exceeded.',
	STILL_COOLING: 'ON command not allowed while cooling.',
	TIMEOUT_DISABLE: 'Disable timed out.',
	TIMEOUT_INIT: 'Init timed out.',
	TIMEOUT_OFF: 'Switching OFF timed out.',
	TIMEOUT_ON: 'Switching ON timed out.',
	SIM_NOT_INITIALISED: 'Lamp simulator not initialised.',
	SIM_NULL_POINTER: 'NULL pointer to Lamp.',
}

enum_texts['E_LAMP_RPC_ERROR'] = {
	OK: 'OK',
	NOT_OP: 'Cannot control lamp. Not in OP state.',
	NOT_NOTOP_READY: 'Call failed. Not in NOTOP_READY.',
	NOT_NOTOP_NOTREADY: 'Call failed. Not in NOTOP_NOTREADY/ERROR.',
	SWITCHING_ON: 'Lamp OFF failed. Still switching ON.',
	SWITCHING_OFF: 'Lamp ON failed. Still switching OFF.',
	COOLING: 'Lamp ON failed. Still cooling down.',
	LOCAL: 'RPC calls not allowed in Local mode.',
}
Events = ['DisableOn', 'Stop', 'On', 'DisableOff', 'IsOn', 'Error', 'ErrMaxOn',
'CooledDown', 'Off', 'IsOff', 'InitOn', 'ErrHw', 'Reset', 'HwOk', 'LimitOn', 
'InitOff', 'Init', 'ErrInit', 'ErrFault', 'Enable', 'Disable',
'WarmedUp', 'ErrTimeout']

~}}