Initial support for growing multidimensional histogram memory datasets.

r1744 | ffr | 2007-03-30 17:21:49 +1000 (Fri, 30 Mar 2007) | 2 lines
This commit is contained in:
Ferdi Franceschini
2007-03-30 17:21:49 +10:00
committed by Douglas Clowes
parent 83a528ad10
commit e0e6bed82e
3 changed files with 16 additions and 10 deletions

View File

@@ -1,7 +1,7 @@
#----------------- NXmonitor #----------------- NXmonitor
mmode=/$(entryName),NXentry/monitor,NXmonitor/SDS mode -type NX_CHAR mmode=/$(entryName),NXentry/monitor,NXmonitor/SDS mode -type NX_CHAR
mpreset=/$(entryName),NXentry/monitor,NXmonitor/SDS preset -type NX_FLOAT32 mpreset=/$(entryName),NXentry/monitor,NXmonitor/SDS preset -type NX_FLOAT32
dcounts=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetector/SDS \ bmcounts=/$(entryName),NXentry/monitor,NXmonitor/SDS \
data -type NX_FLOAT32 -LZW -rank 1 -dim {-1} -attr {signal,1} data -type NX_FLOAT32 -LZW -rank 1 -dim {-1} -attr {signal,1}
mdistance=/$(entryName),NXentry/monitor,NXmonitor/SDS distance -type NX_FLOAT32 -attr {units,metre} mdistance=/$(entryName),NXentry/monitor,NXmonitor/SDS distance -type NX_FLOAT32 -attr {units,metre}
dlayout=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetector/SDS layout -type NX_CHAR dlayout=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetector/SDS layout -type NX_CHAR

View File

@@ -9,9 +9,9 @@ detangle_degrees=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetect
dtheta=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetector/SDS polar_angle -type NX_FLOAT32 -LZW -rank 2 -dim {$(padim0),$(padim1)} -attr {units,radians} dtheta=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetector/SDS polar_angle -type NX_FLOAT32 -LZW -rank 2 -dim {$(padim0),$(padim1)} -attr {units,radians}
dvaxis=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetector/SDS vertical_axis -type NX_FLOAT32 -LZW -rank 1 -dim {$(padim0)} -attr {units,mm} dvaxis=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetector/SDS vertical_axis -type NX_FLOAT32 -LZW -rank 1 -dim {$(padim0)} -attr {units,mm}
dcounts=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetector/SDS \
data -type NX_INT32 -LZW -rank 2 -dim {$(dim0),$(dim1)} \ hmcounts=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetector/SDS \
-attr {signal,1} data -type NX_INT32 -LZW -rank 3 -dim {-1,$(padim0),$(padim1)} -attr {signal,1}
deff=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetector/calibration,NXdata/SDS efficiency -type NX_INT32 -LZW -rank 2 -dim {$(dim0),$(dim1)} deff=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetector/calibration,NXdata/SDS efficiency -type NX_INT32 -LZW -rank 2 -dim {$(dim0),$(dim1)}

View File

@@ -2,7 +2,7 @@
# with filename # with filename
set tmpstr [string map {"$" ""} {$Name: not supported by cvs2svn $}] set tmpstr [string map {"$" ""} {$Name: not supported by cvs2svn $}]
set nx_content_release_tag [lindex $tmpstr [expr [llength $tmpstr] - 1]] set nx_content_release_tag [lindex $tmpstr [expr [llength $tmpstr] - 1]]
set tmpstr [string map {"$" ""} {$Revision: 1.10 $}] set tmpstr [string map {"$" ""} {$Revision: 1.11 $}]
set nx_content_revision_num [lindex $tmpstr [expr [llength $tmpstr] - 1]] set nx_content_revision_num [lindex $tmpstr [expr [llength $tmpstr] - 1]]
MakeNXScript MakeNXScript
@@ -80,7 +80,7 @@ proc hmm_save {nxobj entryname point} {
set dim1 [SplitReply [hmm configure dim1]]; set dim1 [SplitReply [hmm configure dim1]];
putcommon $nxobj $entryname $point; putcommon $nxobj $entryname $point;
putcrystal $nxobj; putcrystal $nxobj;
putmonitor $nxobj; putmonitor $nxobj $point;
putsample $nxobj; putsample $nxobj;
$nxobj putfloat detangle_degrees [SplitReply [detector_angle_deg]] $nxobj putfloat detangle_degrees [SplitReply [detector_angle_deg]]
@@ -90,8 +90,14 @@ proc hmm_save {nxobj entryname point} {
$nxobj puttext ddesc [SplitReply [detector_description]] $nxobj puttext ddesc [SplitReply [detector_description]]
$nxobj putfloat dradius [SplitReply [detector_radius_mm]] $nxobj putfloat dradius [SplitReply [detector_radius_mm]]
$nxobj puttext dlayout area $nxobj puttext dlayout area
$nxobj puthm dcounts hmm [SplitReply [hmm_start]] [SplitReply [hmm_length]] [SplitReply [hmm_bank]] # $nxobj puthm dcounts hmm [SplitReply [hmm_start]] [SplitReply [hmm_length]] [SplitReply [hmm_bank]]
$nxobj makelink scandata dcounts #XXX set histo_length [SplitReply [hmm_length]]
$nxobj updatedictvar padim0 $dim0
$nxobj updatedictvar padim1 $dim1
$nxobj putslab hmcounts [list $point 0 0] [list 1 $dim0 $dim1 ] hmm
#XXX $nxobj putslab hmcounts [list $point 0 0] [list 1 $dim0 $dim1 ] hmm [SplitReply [hmm_start]] $histo_length [SplitReply [hmm_bank]]
# $nxobj putslab dcounts [list $point] [list 1] nxscript_data
$nxobj makelink scandata hmcounts
$nxobj makelink scanvertaxis dvaxis $nxobj makelink scanvertaxis dvaxis
} }
@@ -121,7 +127,7 @@ proc bm_save {nxobj entryname point} {
putmonitor $nxobj $point putmonitor $nxobj $point
putsample $nxobj putsample $nxobj
$nxobj puttext dlayout point $nxobj puttext dlayout point
$nxobj makelink scandata dcounts $nxobj makelink scandata bmcounts
} }
#TODO Refactor: Add bm_save command and use it here. #TODO Refactor: Add bm_save command and use it here.
@@ -152,7 +158,7 @@ proc putmonitor {nxobj point} {
# $nxobj putint mdata [string trim [lindex [split [bm getcounts] =] 1]] # $nxobj putint mdata [string trim [lindex [split [bm getcounts] =] 1]]
nxscript_data clear nxscript_data clear
nxscript_data putfloat 0 [SplitReply [bm getcounts]] nxscript_data putfloat 0 [SplitReply [bm getcounts]]
$nxobj putslab dcounts [list $point] [list 1] nxscript_data $nxobj putslab bmcounts [list $point] [list 1] nxscript_data
$nxobj putfloat mdistance [SplitReply [bmon_distance]] $nxobj putfloat mdistance [SplitReply [bmon_distance]]
} }