source $cfPath(hmm)/hmm_configuration_common_1.tcl set sim_mode [SplitReply [hmm_simulation]] proc ::histogram_memory::init_OAT_TABLE {} { # We don't need a MAX_CHAN parameter for time because the time channel # is scaled by calling the ::histogram_memory::clock_scale function OAT_TABLE X -setdata MAX_CHAN 421 OAT_TABLE Y -setdata MAX_CHAN 421 OAT_TABLE X -setdata BMIN -210.5 OAT_TABLE X -setdata BMAX 210.5 OAT_TABLE Y -setdata BMIN -210.5 OAT_TABLE Y -setdata BMAX 210.5 OAT_TABLE -set X { -210.5 -209.5 } NXC 421 Y { -210.5 -209.5 } NYC 421 T { 0 20000 } NTC 1 } proc ::histogram_memory::pre_count {} {} proc ::histogram_memory::post_count {} {} proc ::histogram_memory::isc_initialize {} { if [ catch { ::histogram_memory::init_hmm_objs if {$::sim_mode == "true"} { hmm configure oat_ntc_eff 1 hmm configure oat_nyc_eff 421 hmm configure oat_nxc_eff 421 } BAT_TABLE -init CAT_TABLE -init SAT_TABLE -init OAT_TABLE -init FAT_TABLE -init detector_active_height_mm 280 detector_active_width_mm 280 ::histogram_memory::ic_initialize # hmm configure FAT_SIMULATED_EVENT_Y0 $y_bb0 # hmm configure FAT_SIMULATED_EVENT_Y1 $ybbmax # hmm configure FAT_SIMULATED_EVENT_X0 $x_bb0 # hmm configure FAT_SIMULATED_EVENT_X1 $xbbmax ::histogram_memory::init_OAT_TABLE ::histogram_memory::upload_config Filler_defaults ::nexus::data alias ::histogram_memory::vertical_axis ::histogram_memory::y_pixel_offset ::nexus::data alias ::histogram_memory::horizontal_axis ::histogram_memory::x_pixel_offset } message ] { if {$::errorCode=="NONE"} {return $message} return -code error $message } } proc histmem {cmd args} { eval "_histmem $cmd $args" } publish histmem user