diff --git a/site_ansto/instrument/config/environment/hiden_xcs.sct b/site_ansto/instrument/config/environment/hiden_xcs.sct index 6bdbb6d4..8ef56139 100644 --- a/site_ansto/instrument/config/environment/hiden_xcs.sct +++ b/site_ansto/instrument/config/environment/hiden_xcs.sct @@ -18,9 +18,28 @@ driver hiden_xcs = { # group_property douglas = clowes type = float priv = user - var temperature + group_property 'data' = 'true' + group_property 'nxsave' = 'true' + property 'type' = 'part' + property 'klass' = 'environment' + property 'sdsinfo' = '::nexus::scobj::sdsinfo' + var enabled = { + type = int; + priv = user; + readable = 10; + writeable = 1; + read_function = read_digital; + write_Function = write_digital; + read_command = '?DOUT,2'; + write_command = '!DOUT,2,'; + allowed = '0,1'; + readable = 10; + # property junk = junk; + } var flow = { driveable = flow + property 'type' = 'drivable' + mutable = true readable = 1 read_command = 'None' fetch_function = fetch_flow @@ -38,12 +57,10 @@ driver hiden_xcs = { property pid_dvalue = 0.0 property pid_imax = 30 } - var flow1 - var flow2 - var flow3 - var gas_factor = { value = 1.0; } var humidity = { driveable = humidity + property 'type' = 'drivable' + mutable = true readable = 1 read_command = '?ALL DATA' read_function = read_all_data @@ -62,6 +79,11 @@ driver hiden_xcs = { property pid_dvalue = 0.0 property pid_imax = 30 } + var temperature + var flow1 + var flow2 + var flow3 + var gas_factor = { value = 1.0; } } # # The named group is at the device level, variables below that @@ -70,8 +92,11 @@ driver hiden_xcs = { # group_property 'data' = true type = float; priv = user; - readable = 1; + readable = 5; read_function = read_sixteen; + control = false + data = false + nxsave = false property base = 0; # applies to all following vars var pv1 = { read_command = '?AIN,0'; property span = 500; }; # ain0 var pv2 = { read_command = '?AIN,1'; property span = 500; }; # ain1 @@ -86,21 +111,6 @@ driver hiden_xcs = { var sp2 = { read_command = '?AOUT,1'; write_command = '!AOUT,1,'; property span = 500; } # aout1 var sp3 = { read_command = '?AOUT,2'; write_command = '!AOUT,2,'; property span = 500; } # aout2 }; - group digital = { - type = int; - priv = user; - readable = 1; - writeable = 1; - read_function = read_digital; - write_Function = write_digital; - var enabled = { - read_command = '?DOUT,2'; - write_command = '!DOUT,2,'; - allowed = '0,1'; - readable = 5; - # property junk = junk; - } - } # # Code lines start with '@' which is stripped before being emitted into generated driver diff --git a/site_ansto/instrument/config/environment/sct_hiden_xcs.tcl b/site_ansto/instrument/config/environment/sct_hiden_xcs.tcl index f30301b4..78ad05f0 100644 --- a/site_ansto/instrument/config/environment/sct_hiden_xcs.tcl +++ b/site_ansto/instrument/config/environment/sct_hiden_xcs.tcl @@ -614,6 +614,22 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { set scobj_hpath /sics/${name} + hfactory ${scobj_hpath}/enabled plain user int + hsetprop ${scobj_hpath}/enabled read ${ns}::getValue ${scobj_hpath} read_digital {?DOUT,2} + hsetprop ${scobj_hpath}/enabled read_digital ${ns}::read_digital ${scobj_hpath} + hsetprop ${scobj_hpath}/enabled write ${ns}::write_digital ${scobj_hpath} noResponse {!DOUT,2,} + hsetprop ${scobj_hpath}/enabled noResponse ${ns}::noResponse ${scobj_hpath} + hsetprop ${scobj_hpath}/enabled check ${ns}::checkrange ${scobj_hpath} + hsetprop ${scobj_hpath}/enabled control true + hsetprop ${scobj_hpath}/enabled data true + hsetprop ${scobj_hpath}/enabled mutable false + hsetprop ${scobj_hpath}/enabled nxsave true + hsetprop ${scobj_hpath}/enabled values 0,1 + hsetprop ${scobj_hpath}/enabled oldval 0 + hsetprop ${scobj_hpath}/enabled klass "environment" + hsetprop ${scobj_hpath}/enabled sdsinfo "::nexus::scobj::sdsinfo" + hsetprop ${scobj_hpath}/enabled type "part" + hfactory ${scobj_hpath}/flow plain user float hsetprop ${scobj_hpath}/flow read ${ns}::fetch_flow ${scobj_hpath} read_flow {None} hsetprop ${scobj_hpath}/flow read_flow ${ns}::read_flow ${scobj_hpath} @@ -627,12 +643,13 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hsetprop ${scobj_hpath}/flow driveable flow hsetprop ${scobj_hpath}/flow control true hsetprop ${scobj_hpath}/flow data true - hsetprop ${scobj_hpath}/flow mutable false + hsetprop ${scobj_hpath}/flow mutable true hsetprop ${scobj_hpath}/flow nxsave true hsetprop ${scobj_hpath}/flow lowerlimit 0 hsetprop ${scobj_hpath}/flow upperlimit 500 hsetprop ${scobj_hpath}/flow tolerance 1 hsetprop ${scobj_hpath}/flow oldval 0.0 + hsetprop ${scobj_hpath}/flow klass "environment" hsetprop ${scobj_hpath}/flow pid_deriv "0" hsetprop ${scobj_hpath}/flow pid_dvalue "0.0" hsetprop ${scobj_hpath}/flow pid_error "0" @@ -640,6 +657,8 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hsetprop ${scobj_hpath}/flow pid_integ "0" hsetprop ${scobj_hpath}/flow pid_ivalue "0.1" hsetprop ${scobj_hpath}/flow pid_pvalue "0.2" + hsetprop ${scobj_hpath}/flow sdsinfo "::nexus::scobj::sdsinfo" + hsetprop ${scobj_hpath}/flow type "drivable" hfactory ${scobj_hpath}/flow1 plain user float hsetprop ${scobj_hpath}/flow1 control true @@ -647,6 +666,9 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hsetprop ${scobj_hpath}/flow1 mutable false hsetprop ${scobj_hpath}/flow1 nxsave true hsetprop ${scobj_hpath}/flow1 oldval 0.0 + hsetprop ${scobj_hpath}/flow1 klass "environment" + hsetprop ${scobj_hpath}/flow1 sdsinfo "::nexus::scobj::sdsinfo" + hsetprop ${scobj_hpath}/flow1 type "part" hfactory ${scobj_hpath}/flow2 plain user float hsetprop ${scobj_hpath}/flow2 control true @@ -654,6 +676,9 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hsetprop ${scobj_hpath}/flow2 mutable false hsetprop ${scobj_hpath}/flow2 nxsave true hsetprop ${scobj_hpath}/flow2 oldval 0.0 + hsetprop ${scobj_hpath}/flow2 klass "environment" + hsetprop ${scobj_hpath}/flow2 sdsinfo "::nexus::scobj::sdsinfo" + hsetprop ${scobj_hpath}/flow2 type "part" hfactory ${scobj_hpath}/flow3 plain user float hsetprop ${scobj_hpath}/flow3 control true @@ -661,6 +686,9 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hsetprop ${scobj_hpath}/flow3 mutable false hsetprop ${scobj_hpath}/flow3 nxsave true hsetprop ${scobj_hpath}/flow3 oldval 0.0 + hsetprop ${scobj_hpath}/flow3 klass "environment" + hsetprop ${scobj_hpath}/flow3 sdsinfo "::nexus::scobj::sdsinfo" + hsetprop ${scobj_hpath}/flow3 type "part" hfactory ${scobj_hpath}/gas_factor plain user float hsetprop ${scobj_hpath}/gas_factor control true @@ -669,6 +697,9 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hsetprop ${scobj_hpath}/gas_factor nxsave true hsetprop ${scobj_hpath}/gas_factor oldval 1.0 hset ${scobj_hpath}/gas_factor 1.0 + hsetprop ${scobj_hpath}/gas_factor klass "environment" + hsetprop ${scobj_hpath}/gas_factor sdsinfo "::nexus::scobj::sdsinfo" + hsetprop ${scobj_hpath}/gas_factor type "part" hfactory ${scobj_hpath}/humidity plain user float hsetprop ${scobj_hpath}/humidity read ${ns}::getValue ${scobj_hpath} read_all_data {?ALL DATA} @@ -683,13 +714,14 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hsetprop ${scobj_hpath}/humidity driveable humidity hsetprop ${scobj_hpath}/humidity control true hsetprop ${scobj_hpath}/humidity data true - hsetprop ${scobj_hpath}/humidity mutable false + hsetprop ${scobj_hpath}/humidity mutable true hsetprop ${scobj_hpath}/humidity nxsave true hsetprop ${scobj_hpath}/humidity lowerlimit 10 hsetprop ${scobj_hpath}/humidity upperlimit 90 hsetprop ${scobj_hpath}/humidity tolerance 1 hsetprop ${scobj_hpath}/humidity oldval 50 hset ${scobj_hpath}/humidity 50 + hsetprop ${scobj_hpath}/humidity klass "environment" hsetprop ${scobj_hpath}/humidity pid_deriv "0" hsetprop ${scobj_hpath}/humidity pid_dvalue "0.0" hsetprop ${scobj_hpath}/humidity pid_error "0" @@ -697,6 +729,8 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hsetprop ${scobj_hpath}/humidity pid_integ "0" hsetprop ${scobj_hpath}/humidity pid_ivalue "0.1" hsetprop ${scobj_hpath}/humidity pid_pvalue "0.2" + hsetprop ${scobj_hpath}/humidity sdsinfo "::nexus::scobj::sdsinfo" + hsetprop ${scobj_hpath}/humidity type "drivable" hfactory ${scobj_hpath}/temperature plain user float hsetprop ${scobj_hpath}/temperature control true @@ -704,10 +738,18 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hsetprop ${scobj_hpath}/temperature mutable false hsetprop ${scobj_hpath}/temperature nxsave true hsetprop ${scobj_hpath}/temperature oldval 0.0 + hsetprop ${scobj_hpath}/temperature klass "environment" + hsetprop ${scobj_hpath}/temperature sdsinfo "::nexus::scobj::sdsinfo" + hsetprop ${scobj_hpath}/temperature type "part" + + hsetprop ${scobj_hpath} data "true" + hsetprop ${scobj_hpath} nxsave "true" if {[SplitReply [environment_simulation]]=="false"} { + ${sct_controller} poll ${scobj_hpath}/enabled 10 ${sct_controller} poll ${scobj_hpath}/flow 1 ${sct_controller} poll ${scobj_hpath}/humidity 1 + ${sct_controller} write ${scobj_hpath}/enabled ${sct_controller} write ${scobj_hpath}/flow ansto_makesctdrive ${name}_flow ${scobj_hpath}/flow ${scobj_hpath}/flow ${sct_controller} ${sct_controller} write ${scobj_hpath}/humidity @@ -719,10 +761,10 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hfactory ${scobj_hpath}/analog/ansto_temp plain user float hsetprop ${scobj_hpath}/analog/ansto_temp read ${ns}::getValue ${scobj_hpath} read_sixteen {?AIN,12} hsetprop ${scobj_hpath}/analog/ansto_temp read_sixteen ${ns}::read_sixteen ${scobj_hpath} - hsetprop ${scobj_hpath}/analog/ansto_temp control true - hsetprop ${scobj_hpath}/analog/ansto_temp data true + hsetprop ${scobj_hpath}/analog/ansto_temp control false + hsetprop ${scobj_hpath}/analog/ansto_temp data false hsetprop ${scobj_hpath}/analog/ansto_temp mutable false - hsetprop ${scobj_hpath}/analog/ansto_temp nxsave true + hsetprop ${scobj_hpath}/analog/ansto_temp nxsave false hsetprop ${scobj_hpath}/analog/ansto_temp oldval 0.0 hsetprop ${scobj_hpath}/analog/ansto_temp base "0" hsetprop ${scobj_hpath}/analog/ansto_temp span "100" @@ -730,10 +772,10 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hfactory ${scobj_hpath}/analog/pv1 plain user float hsetprop ${scobj_hpath}/analog/pv1 read ${ns}::getValue ${scobj_hpath} read_sixteen {?AIN,0} hsetprop ${scobj_hpath}/analog/pv1 read_sixteen ${ns}::read_sixteen ${scobj_hpath} - hsetprop ${scobj_hpath}/analog/pv1 control true - hsetprop ${scobj_hpath}/analog/pv1 data true + hsetprop ${scobj_hpath}/analog/pv1 control false + hsetprop ${scobj_hpath}/analog/pv1 data false hsetprop ${scobj_hpath}/analog/pv1 mutable false - hsetprop ${scobj_hpath}/analog/pv1 nxsave true + hsetprop ${scobj_hpath}/analog/pv1 nxsave false hsetprop ${scobj_hpath}/analog/pv1 oldval 0.0 hsetprop ${scobj_hpath}/analog/pv1 base "0" hsetprop ${scobj_hpath}/analog/pv1 span "500" @@ -741,10 +783,10 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hfactory ${scobj_hpath}/analog/pv2 plain user float hsetprop ${scobj_hpath}/analog/pv2 read ${ns}::getValue ${scobj_hpath} read_sixteen {?AIN,1} hsetprop ${scobj_hpath}/analog/pv2 read_sixteen ${ns}::read_sixteen ${scobj_hpath} - hsetprop ${scobj_hpath}/analog/pv2 control true - hsetprop ${scobj_hpath}/analog/pv2 data true + hsetprop ${scobj_hpath}/analog/pv2 control false + hsetprop ${scobj_hpath}/analog/pv2 data false hsetprop ${scobj_hpath}/analog/pv2 mutable false - hsetprop ${scobj_hpath}/analog/pv2 nxsave true + hsetprop ${scobj_hpath}/analog/pv2 nxsave false hsetprop ${scobj_hpath}/analog/pv2 oldval 0.0 hsetprop ${scobj_hpath}/analog/pv2 base "0" hsetprop ${scobj_hpath}/analog/pv2 span "500" @@ -752,10 +794,10 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hfactory ${scobj_hpath}/analog/pv3 plain user float hsetprop ${scobj_hpath}/analog/pv3 read ${ns}::getValue ${scobj_hpath} read_sixteen {?AIN,2} hsetprop ${scobj_hpath}/analog/pv3 read_sixteen ${ns}::read_sixteen ${scobj_hpath} - hsetprop ${scobj_hpath}/analog/pv3 control true - hsetprop ${scobj_hpath}/analog/pv3 data true + hsetprop ${scobj_hpath}/analog/pv3 control false + hsetprop ${scobj_hpath}/analog/pv3 data false hsetprop ${scobj_hpath}/analog/pv3 mutable false - hsetprop ${scobj_hpath}/analog/pv3 nxsave true + hsetprop ${scobj_hpath}/analog/pv3 nxsave false hsetprop ${scobj_hpath}/analog/pv3 oldval 0.0 hsetprop ${scobj_hpath}/analog/pv3 base "0" hsetprop ${scobj_hpath}/analog/pv3 span "500" @@ -763,10 +805,10 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hfactory ${scobj_hpath}/analog/rhsense plain user float hsetprop ${scobj_hpath}/analog/rhsense read ${ns}::getValue ${scobj_hpath} read_sixteen {?AIN,9} hsetprop ${scobj_hpath}/analog/rhsense read_sixteen ${ns}::read_sixteen ${scobj_hpath} - hsetprop ${scobj_hpath}/analog/rhsense control true - hsetprop ${scobj_hpath}/analog/rhsense data true + hsetprop ${scobj_hpath}/analog/rhsense control false + hsetprop ${scobj_hpath}/analog/rhsense data false hsetprop ${scobj_hpath}/analog/rhsense mutable false - hsetprop ${scobj_hpath}/analog/rhsense nxsave true + hsetprop ${scobj_hpath}/analog/rhsense nxsave false hsetprop ${scobj_hpath}/analog/rhsense oldval 0.0 hsetprop ${scobj_hpath}/analog/rhsense base "0" hsetprop ${scobj_hpath}/analog/rhsense span "100" @@ -774,10 +816,10 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hfactory ${scobj_hpath}/analog/rhtemp plain user float hsetprop ${scobj_hpath}/analog/rhtemp read ${ns}::getValue ${scobj_hpath} read_sixteen {?AIN,8} hsetprop ${scobj_hpath}/analog/rhtemp read_sixteen ${ns}::read_sixteen ${scobj_hpath} - hsetprop ${scobj_hpath}/analog/rhtemp control true - hsetprop ${scobj_hpath}/analog/rhtemp data true + hsetprop ${scobj_hpath}/analog/rhtemp control false + hsetprop ${scobj_hpath}/analog/rhtemp data false hsetprop ${scobj_hpath}/analog/rhtemp mutable false - hsetprop ${scobj_hpath}/analog/rhtemp nxsave true + hsetprop ${scobj_hpath}/analog/rhtemp nxsave false hsetprop ${scobj_hpath}/analog/rhtemp oldval 0.0 hsetprop ${scobj_hpath}/analog/rhtemp base "0" hsetprop ${scobj_hpath}/analog/rhtemp span "100" @@ -788,10 +830,10 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hsetprop ${scobj_hpath}/analog/sp1 write ${ns}::write_twelve ${scobj_hpath} noResponse {!AOUT,0,} hsetprop ${scobj_hpath}/analog/sp1 noResponse ${ns}::noResponse ${scobj_hpath} hsetprop ${scobj_hpath}/analog/sp1 check ${ns}::checkrange ${scobj_hpath} - hsetprop ${scobj_hpath}/analog/sp1 control true - hsetprop ${scobj_hpath}/analog/sp1 data true + hsetprop ${scobj_hpath}/analog/sp1 control false + hsetprop ${scobj_hpath}/analog/sp1 data false hsetprop ${scobj_hpath}/analog/sp1 mutable false - hsetprop ${scobj_hpath}/analog/sp1 nxsave true + hsetprop ${scobj_hpath}/analog/sp1 nxsave false hsetprop ${scobj_hpath}/analog/sp1 oldval 0.0 hsetprop ${scobj_hpath}/analog/sp1 base "0" hsetprop ${scobj_hpath}/analog/sp1 span "500" @@ -802,10 +844,10 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hsetprop ${scobj_hpath}/analog/sp2 write ${ns}::write_twelve ${scobj_hpath} noResponse {!AOUT,1,} hsetprop ${scobj_hpath}/analog/sp2 noResponse ${ns}::noResponse ${scobj_hpath} hsetprop ${scobj_hpath}/analog/sp2 check ${ns}::checkrange ${scobj_hpath} - hsetprop ${scobj_hpath}/analog/sp2 control true - hsetprop ${scobj_hpath}/analog/sp2 data true + hsetprop ${scobj_hpath}/analog/sp2 control false + hsetprop ${scobj_hpath}/analog/sp2 data false hsetprop ${scobj_hpath}/analog/sp2 mutable false - hsetprop ${scobj_hpath}/analog/sp2 nxsave true + hsetprop ${scobj_hpath}/analog/sp2 nxsave false hsetprop ${scobj_hpath}/analog/sp2 oldval 0.0 hsetprop ${scobj_hpath}/analog/sp2 base "0" hsetprop ${scobj_hpath}/analog/sp2 span "500" @@ -816,48 +858,28 @@ proc ::scobj::hiden_xcs::mk_sct_hiden_xcs { sct_controller name tol } { hsetprop ${scobj_hpath}/analog/sp3 write ${ns}::write_twelve ${scobj_hpath} noResponse {!AOUT,2,} hsetprop ${scobj_hpath}/analog/sp3 noResponse ${ns}::noResponse ${scobj_hpath} hsetprop ${scobj_hpath}/analog/sp3 check ${ns}::checkrange ${scobj_hpath} - hsetprop ${scobj_hpath}/analog/sp3 control true - hsetprop ${scobj_hpath}/analog/sp3 data true + hsetprop ${scobj_hpath}/analog/sp3 control false + hsetprop ${scobj_hpath}/analog/sp3 data false hsetprop ${scobj_hpath}/analog/sp3 mutable false - hsetprop ${scobj_hpath}/analog/sp3 nxsave true + hsetprop ${scobj_hpath}/analog/sp3 nxsave false hsetprop ${scobj_hpath}/analog/sp3 oldval 0.0 hsetprop ${scobj_hpath}/analog/sp3 base "0" hsetprop ${scobj_hpath}/analog/sp3 span "500" if {[SplitReply [environment_simulation]]=="false"} { - ${sct_controller} poll ${scobj_hpath}/analog/ansto_temp 1 - ${sct_controller} poll ${scobj_hpath}/analog/pv1 1 - ${sct_controller} poll ${scobj_hpath}/analog/pv2 1 - ${sct_controller} poll ${scobj_hpath}/analog/pv3 1 - ${sct_controller} poll ${scobj_hpath}/analog/rhsense 1 - ${sct_controller} poll ${scobj_hpath}/analog/rhtemp 1 - ${sct_controller} poll ${scobj_hpath}/analog/sp1 1 - ${sct_controller} poll ${scobj_hpath}/analog/sp2 1 - ${sct_controller} poll ${scobj_hpath}/analog/sp3 1 + ${sct_controller} poll ${scobj_hpath}/analog/ansto_temp 5 + ${sct_controller} poll ${scobj_hpath}/analog/pv1 5 + ${sct_controller} poll ${scobj_hpath}/analog/pv2 5 + ${sct_controller} poll ${scobj_hpath}/analog/pv3 5 + ${sct_controller} poll ${scobj_hpath}/analog/rhsense 5 + ${sct_controller} poll ${scobj_hpath}/analog/rhtemp 5 + ${sct_controller} poll ${scobj_hpath}/analog/sp1 5 + ${sct_controller} poll ${scobj_hpath}/analog/sp2 5 + ${sct_controller} poll ${scobj_hpath}/analog/sp3 5 ${sct_controller} write ${scobj_hpath}/analog/sp1 ${sct_controller} write ${scobj_hpath}/analog/sp2 ${sct_controller} write ${scobj_hpath}/analog/sp3 } - - hfactory ${scobj_hpath}/digital plain spy none - - hfactory ${scobj_hpath}/digital/enabled plain user int - hsetprop ${scobj_hpath}/digital/enabled read ${ns}::getValue ${scobj_hpath} read_digital {?DOUT,2} - hsetprop ${scobj_hpath}/digital/enabled read_digital ${ns}::read_digital ${scobj_hpath} - hsetprop ${scobj_hpath}/digital/enabled write ${ns}::write_digital ${scobj_hpath} noResponse {!DOUT,2,} - hsetprop ${scobj_hpath}/digital/enabled noResponse ${ns}::noResponse ${scobj_hpath} - hsetprop ${scobj_hpath}/digital/enabled check ${ns}::checkrange ${scobj_hpath} - hsetprop ${scobj_hpath}/digital/enabled control true - hsetprop ${scobj_hpath}/digital/enabled data true - hsetprop ${scobj_hpath}/digital/enabled mutable false - hsetprop ${scobj_hpath}/digital/enabled nxsave true - hsetprop ${scobj_hpath}/digital/enabled values 0,1 - hsetprop ${scobj_hpath}/digital/enabled oldval 0 - - if {[SplitReply [environment_simulation]]=="false"} { - ${sct_controller} poll ${scobj_hpath}/digital/enabled 5 - ${sct_controller} write ${scobj_hpath}/digital/enabled - } hsetprop ${scobj_hpath} klass environment # hook code starts # hook code ends