summaryrefslogtreecommitdiff
path: root/configs/sim/axis/gladevcp/set-param-from-ini.tcl
blob: e9479ba102ad15b23da769369c82d4e1890a3d59 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/usr/bin/tclsh


# pass 1: set environmental variable as flag
#         then restart this script in background
#         exit
# pass 2: delay then start sim_pin

set delay_ms 3000
set pins [list \
          meter_scale.hal_table1 \
          meter_scale.max-value \
          meter_scale.meter \
         ]

if ![info exists ::env(set-param-from-ini)] {
  set ::env(set-param-from-ini) $::argv
  set ::env(EXAMPLE_CFG) "set-param-from-ini.cfg"
  exec ./set-param-from-ini.tcl & ;# restart this script with env(ini_hal_pins) set
  exit 0
} else {
  after $delay_ms
  if [catch {
    eval exec gladevcp -u ./meter_scale.py ./meter_scale.ui &
  } msg] {
    puts "$::argv0: gladevcp failed:"
    puts "  $msg"
  }
  
  after $delay_ms
  if [catch {
    eval exec sim_pin $pins &
  } msg ] {
    puts "$::argv0: sim_pin failed:"
    puts "  $msg"
  }
  exit 0
}