00001 #ifndef _DAQ_SSD_H_
00002 #define _DAQ_SSD_H_
00003
00004 #include <stdio.h>
00005 #include <DAQ_READER/daq_det.h>
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 struct ssd_t {
00022 int channels ;
00023 int mode ;
00024 int max_channels ;
00025
00026
00027 u_char counts[40][64] ;
00028
00029
00030
00031 u_char strip[40][64][192];
00032
00033
00034
00035 u_char adc[40][64][192];
00036
00037
00038
00039
00040
00041 u_char *raw[4][2] ;
00042
00043 } ;
00044
00045
00046
00047 extern int ssd_reader(char *mem, struct ssd_t *ssd, u_int driver) ;
00048
00049
00050 class daq_ssd : public daq_det {
00051 private:
00052 class daq_dta *handle_legacy() ;
00053
00054 class daq_dta *legacy ;
00055
00056 static const char *help_string ;
00057 protected:
00058
00059
00060 public:
00061 daq_ssd(daqReader *rts_caller=0) ;
00062 ~daq_ssd() ;
00063
00064
00065 daq_dta *get(const char *bank="*",int c1=-1, int c2=-1, int c3=-1, void *p1=0, void *p2=0) ;
00066
00067 void help() const {
00068 printf("%s\n%s\n",GetCVS(),help_string) ;
00069 }
00070
00071 const char *GetCVS() const {
00072 static const char cvs[]="Tag $Name: $Id: built "__DATE__" "__TIME__ ; return cvs;
00073 }
00074
00075 } ;
00076
00077
00078 #endif // _DAQ_SSD_H_