Use new dir structure.

r1515 | ffr | 2007-02-20 08:03:21 +1100 (Tue, 20 Feb 2007) | 2 lines
This commit is contained in:
Ferdi Franceschini
2007-02-20 08:03:21 +11:00
committed by Douglas Clowes
parent a24d966eea
commit 14a244d014
16 changed files with 512 additions and 108 deletions

View File

@@ -0,0 +1,63 @@
# Defines hashes which map SICS device object names to hipadaba paths
InstallHdb
hmake /graphics spy none
hsetprop /graphics type graphset
hmake /commands spy none
hsetprop /commands type commandset
#TODO change this to hparts.tcl
source $cfPath(hipadaba)/hpaths.tcl
set instrument [string tolower [SplitReply [Instrument]] ]
hmake /$instrument spy none
hsetprop /$instrument type instrument
# Generate hipadaba nodes for the paths in the hpaths file
foreach hp $hpaths {
hmake /$instrument/$hp spy none;
hsetprop /$instrument/$hp type part;
}
#--- admin
hattach /$instrument title title
hattach /$instrument/experiment sample description
hmake /$instrument/user spy none
hsetprop /$instrument/user type part
hattach /$instrument/user user name
hattach /$instrument/user email email
hattach /$instrument/user phone phone
#--- Motors
foreach {obj name part} $motor_hpath {
hattach /$instrument/$part $obj $name
#TODO Only ignore node deletion errors for simulated motors
if [ catch {hdel /$instrument/$part/$name/axis} ] {}
if [ catch {hdel /$instrument/$part/$name/units} ] {}
}
#--- Configurable Virtual Motors
foreach {obj name part master_obj} $cvirtmotor_hpath {
set path /$instrument/$part
# hattach /$instrument/$part $obj $name
hattach $path $obj $name
hchain $path/$name $path/$master_obj
}
#------------- scan command
hsetprop /commands type part
hcommand /commands/scan hdb_hmscan
hsetprop /commands/scan type command
hsetprop /commands/scan priv user
hmake /commands/scan/scan_variable user text
hsetprop /commands/scan/scan_variable argtype drivable
hmake /commands/scan/scan_start user float
hsetprop /commands/scan/scan_start argtype float
hmake /commands/scan/scan_increment user float
hsetprop /commands/scan/scan_increment argtype float
hmake /commands/scan/NP user int
hsetprop /commands/scan/NP argtype int
hmake /commands/scan/mode user text
hsetprop /commands/scan/mode argtype text
hsetprop /commands/scan/mode values monitor,timer
hmake /commands/scan/preset user float
hsetprop /commands/scan/preset argtype float

View File

@@ -0,0 +1 @@
source $cfPath(hipadaba)/common_hipadaba_configuration.tcl

View File

@@ -0,0 +1,44 @@
set hpaths [list \
experiment sample monochromator slits \
slits/1 slits/1/horizontal slits/1/vertical slits/2 slits/2/horizontal slits/2/vertical detector detector/monitor detector/histmem ]
# Maps devices (eg motors) to hipadaba paths.
# obj name path
set motor_hpath [list \
ss1u top slits/1/vertical\
ss1d bottom slits/1/vertical\
ss1l left slits/1/horizontal\
ss1r right slits/1/horizontal\
ss2u top slits/2/vertical\
ss2d bottom slits/2/vertical\
ss2l left slits/2/horizontal\
ss2r right slits/2/horizontal\
som rotate sample \
schi chi sample \
sphi phi sample \
sx translate_x sample \
sy translate_y sample \
stth detector_rotate sample \
mchi chi monochromator \
mom rotate monochromator \
mphi phi monochromator \
mtth takeoff_angle monochromator \
mx translate_x monochromator \
my translate_y monochromator ]
# Configurable virtual motors
# obj name path master_obj
set cvirtmotor_hpath [list \
ss1hg gap slits/1/horizontal left\
ss1ho offset slits/1/horizontal left\
ss1vg gap slits/1/vertical top\
ss1vo offset slits/1/vertical top\
ss2hg gap slits/2/horizontal left\
ss2ho offset slits/2/horizontal left\
ss2vg gap slits/2/vertical top\
ss2vo offset slits/2/vertical top]
array set counter_hpath [ list \
hm /detector/histmem \
counter /detector/monitor ]