StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
EEdsm0.h
1 #ifndef EEdsm0_h
2 #define EEdsm0_h
3 /**************************************************************
4  * $Id: EEdsm0.h,v 1.1 2009/10/12 18:04:25 pibero Exp $
5  **************************************************************/
6 #include <stdlib.h>
7 #include <stdio.h>
8 #include <string.h>
9 
10 class EEdsm0 {
11  enum {nw=16,nc=10,mxTh=3,mxOu=2};
12  unsigned char data[nw];
13  short value[nc]; // unpacked 12bit input values
14  int type;
15  int mYear;// HTTP algo added in 2006
16  int HTthr[mxTh], TPthr[mxTh];
17  int outHTTP2bit[mxOu];
18  int outHT2bit[mxOu];
19  int outTP2bit[mxOu];
20  int outTPsum[mxOu]; // 10 or 9 bits
21  int out16bit[mxOu];
22 
23  public:
24 
25  EEdsm0();
26  virtual ~EEdsm0();
27  void setYear(int y, int*HTth, int*TPth);
28  void setType(int t) {type=t;}
29  void print(int k=0) const;
30  void clear();
31  void compute(); // for 2006+
32  void unpack(); // 16 inputs --> 10 values
33 
34  //.... input
35  void setBite(int b, unsigned char val); // from trigger data block
36  void setInp12bit(int ch, short val); // HT+TPsum from one FEE TP
37  int getInp12bit(int ch) const; // HT+TPsum from one FEE TP
38  int getInpHT6bit(int ch) const { return getInp12bit(ch) & 0x3f;}
39  int getInpTP6bit(int ch) const { return getInp12bit(ch)>>6; }
40  int getNc() const {return nc;}
41 
42  //....... output
43  int getOutTPsum(int k=0) const { return outTPsum[k];} // default type 1
44  int getOutHT2bit(int k=0) const { return outHT2bit[k];} // default type 1
45  int getOutTP2bit(int k=0) const { return outTP2bit[k];} // default type 1
46  int getOutHTTP2bit(int k=0) const { return outHTTP2bit[k];} // default type 1
47  int getOut16bit(int k=0) const { return out16bit[k];} // default type 1
48 };
49 #endif
50 
51 /*
52  * $Log: EEdsm0.h,v $
53  * Revision 1.1 2009/10/12 18:04:25 pibero
54  * Moved StEEmcUtil/EEdsm to StTriggerUtilities/Eemc
55  *
56  * Revision 1.4 2009/02/24 03:56:18 ogrebeny
57  * Corrected const-ness
58  *
59  * Revision 1.3 2007/08/17 01:15:35 balewski
60  * full blown Endcap trigger simu, by Xin
61  *
62  * Revision 1.2 2005/02/01 22:13:37 perev
63  * Compatibility to redhat
64  *
65  * Revision 1.1 2004/11/29 20:12:59 balewski
66  * first
67  *
68  * Revision 1.1 2004/02/17 03:09:17 balewski
69  * *** empty log message ***
70  *
71  * Revision 1.1 2003/12/29 02:18:38 balewski
72  * star
73  *
74  * Revision 1.1 2003/05/22 19:39:00 balewski
75  * analysis of DSM data
76  *
77  *
78  * decode INPUT data for one board of EE-DSM Layer-0
79  *
80  **************************************************************/
81 
82 
Definition: EEdsm0.h:10