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
mmode=/$(entryName),NXentry/monitor,NXmonitor/SDS mode -type NX_CHAR
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}
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

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}
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)} \
-attr {signal,1}
hmcounts=/$(entryName),NXentry/$(inst),NXinstrument/$(detector),NXdetector/SDS \
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)}

View File

@@ -2,7 +2,7 @@
# with filename
set tmpstr [string map {"$" ""} {$Name: not supported by cvs2svn $}]
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]]
MakeNXScript
@@ -80,7 +80,7 @@ proc hmm_save {nxobj entryname point} {
set dim1 [SplitReply [hmm configure dim1]];
putcommon $nxobj $entryname $point;
putcrystal $nxobj;
putmonitor $nxobj;
putmonitor $nxobj $point;
putsample $nxobj;
$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 putfloat dradius [SplitReply [detector_radius_mm]]
$nxobj puttext dlayout area
$nxobj puthm dcounts hmm [SplitReply [hmm_start]] [SplitReply [hmm_length]] [SplitReply [hmm_bank]]
$nxobj makelink scandata dcounts
# $nxobj puthm dcounts hmm [SplitReply [hmm_start]] [SplitReply [hmm_length]] [SplitReply [hmm_bank]]
#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
}
@@ -121,7 +127,7 @@ proc bm_save {nxobj entryname point} {
putmonitor $nxobj $point
putsample $nxobj
$nxobj puttext dlayout point
$nxobj makelink scandata dcounts
$nxobj makelink scandata bmcounts
}
#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]]
nxscript_data clear
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]]
}