4 // Copyright(c) 2003, IceCube Experiment at the South Pole, All rights reserved.
5 // See cxx source for full Copyright notice.
9 /////////////////////////////////////////////////////////////////////////
10 // This header file originates from the file config.h
11 // of Wolfgang Wagner's TWR raw data reader.
12 // The types u_int32_t etc... have been replaced by the ROOT portable
13 // types UInt_t etc... to obtain identical performance on all ROOT
14 // supported platforms from within the Ralice/IcePack framework.
15 // In addition the low level C "read()" invokations have been replaced
16 // by the standard C/C++ "fread()" invokations to even more enhance
17 // portability. As a result several header files have become obsolete
18 // and as such are not included anymore.
20 // NvE 07-dec-2006 Utrecht University
21 /////////////////////////////////////////////////////////////////////////
23 #include "twr_globalconst.h"
25 #define LENGTH_OF_STRING 100
26 #define MAX_N_VLF_VETOS_PER_HOUR 16
29 Enhanced structures for Analysis
32 typedef struct /* of one module */
34 UInt_t base; /* Baseaddress in VME-BUS */
35 UInt_t id; /* identifier for TWR */
36 /* id = crate no * 0x10 (begining with 1) */
37 /* + TWR number in crate (beginnig with 0) */
39 UInt_t mod_id; /* Module ID from internal register 0x4 */
40 UInt_t ext_start; /* Extern Start Delay Register 0x14 */
41 UInt_t ext_stop; /* Extern Stop Delay Register 0x18 */
43 UInt_t om_no[CHANNELS_PER_TWR];
44 UInt_t om_is_optical[CHANNELS_PER_TWR];
45 UInt_t baseline[CHANNELS_PER_TWR];
46 UInt_t threshold[CHANNELS_PER_TWR];
52 UInt_t vme_base_bridge; /* physical base local bridge in master crate */
53 UInt_t vme_base_100MHz; /* physical base local 100MHz module */
55 char dsp_program_name[LENGTH_OF_STRING];
56 UInt_t base_gps; /* physical base of GPSAMD in remote crate */
58 twr_config_t *twr[MAX_N_TWR_PER_CRATE];
64 char pci_driver_name[LENGTH_OF_STRING];
65 char data_output_directory[LENGTH_OF_STRING];
66 UInt_t n_events_per_file;
70 UInt_t preceeding_values_optical;
71 UInt_t following_values_optical;
72 UInt_t preceeding_values_electrical;
73 UInt_t following_values_electrical;
76 UInt_t clockdiv; /* Clockpredivider for Time Stamp for TWRs */
77 UInt_t statreg; /* Status Register 0x0 */
78 UInt_t acq_ctrl; /* Acquisition Control Register 0x10 */
80 UInt_t triggerflagclearcounter;
82 /* GPS AMD / VLF stuff */
83 UInt_t b_vlf_trigger_veto_on; /* Enable VLF trigger veto */
84 UInt_t n_vlf_trigger_veto; /* no of trigger times per hour */
85 UInt_t start_vlf_trigger_veto[MAX_N_VLF_VETOS_PER_HOUR];
86 UInt_t duration_vlf_trigger_veto;
87 UInt_t overlap_vlf_trigger_veto;
92 crate_config_t *crate[MAX_N_CRATES+1];
94 twr_config_t *twr_field[MAX_N_CRATES * MAX_N_TWR_PER_CRATE];