00001 #ifndef _DAQ_FPD_H_
00002 #define _DAQ_FPD_H_
00003
00004 #include <stdio.h>
00005 #include <DAQ_READER/daq_det.h>
00006
00007
00008
00009 struct bbc_t {
00010 u_short pulse[32] ;
00011 u_short time[32] ;
00012 u_short proof[2] ;
00013 u_short spare[6] ;
00014 u_short ped[32] ;
00015 u_short rms[32] ;
00016 u_short peaks[64] ;
00017 u_int scl[32] ;
00018 } ;
00019
00020 struct fpd_t {
00021 int mode ;
00022 int channels ;
00023 int max_channels ;
00024
00025 u_short adc[256] ;
00026 u_short tdc[8] ;
00027 u_short reg[3] ;
00028 u_short ped[256] ;
00029 u_short rms[256] ;
00030
00031 struct bbc_t bbc ;
00032
00033 } ;
00034
00035
00036
00037
00038
00039 class daq_fpd : public daq_det {
00040 private:
00041 class daq_dta *handle_legacy() ;
00042
00043 class daq_dta *legacy ;
00044
00045 static const char *help_string ;
00046 protected:
00047
00048
00049 public:
00050 daq_fpd(daqReader *rts_caller=0) ;
00051 ~daq_fpd() ;
00052
00053
00054 daq_dta *get(const char *bank="*",int c1=-1, int c2=-1, int c3=-1, void *p1=0, void *p2=0) ;
00055
00056 void help() const {
00057 printf("%s\n%s\n",GetCVS(),help_string) ;
00058 }
00059
00060 const char *GetCVS() const {
00061 static const char cvs[]="Tag $Name: $Id: built "__DATE__" "__TIME__ ; return cvs;
00062 }
00063
00064 } ;
00065
00066
00067 #endif // _DAQ_FPD_H_