CMS 3D CMS Logo

PixelFECConfigInterface.h
Go to the documentation of this file.
1 #ifndef PIXELFECCONFIGINTERFACE_H
2 #define PIXELFECCONFIGINTERFACE_H
3 
12 #include <vector>
13 #include <string>
15 
16 namespace pos {
24  public:
26 
28 
29  //Generate the commands needed to set the trim and mask bits that
30  //are specified by the vector allPixels.
31 
32  virtual void setMaskAndTrimAll(const PixelHdwAddress& theROC,
33  const std::vector<unsigned char>& allPixels,
34  const bool buffermode = false) = 0;
35 
36  virtual void setDcolEnableAll(const PixelHdwAddress& theROC,
37  unsigned char maskAndTrim,
38  const bool buffermode = false) = 0;
39 
40  //Generate the commands needed to set the trim and mask bits for all
41  //pixels to the common value specified by maskAndTrim.
42  // DO WE REALY NEED THIS?? Danek 15/4/08
43  //virtual void setMaskAndTrimCommon(const PixelHdwAddress& theROC,
44  // unsigned char maskAndTrim,)=0;
45 
46  //Generate the commands needed to set the DAC values for a ROC.
47  virtual void setAllDAC(const PixelHdwAddress& theROC,
48  const std::vector<unsigned int>& dacs,
49  const bool buffermode = false) = 0;
50 
51  virtual int roctrimload(int mfec,
52  int fecchannel,
53  int hubaddress,
54  int portaddress,
55  int rocid,
56  const std::vector<unsigned char>& allPixels) = 0;
57 
58  virtual int rocinit(int mfec, int fecchannel, int hubaddress, int portaddress, int rocid, int mask, int trim) = 0;
59 
60  virtual int injectrstroc(const int mfec, const int bitstate) = 0;
61  virtual int injecttrigger(const int mfec, const int bitstate) = 0;
62  virtual int injectrsttbm(const int mfec, const int bitstate) = 0;
63  virtual int injectrstcsr(const int mfec, const int bitstate) = 0;
64  virtual int enablecallatency(const int mfec, const int bitstate) = 0;
65  virtual int disableexttrigger(const int mfec, const int bitstate) = 0;
66  virtual int loopnormtrigger(const int mfec, const int bitstate) = 0;
67  virtual int loopcaltrigger(const int mfec, const int bitstate) = 0;
68  virtual int callatencycount(const int mfec, const int latency) = 0;
69  virtual int getversion(const int mfec, unsigned long* data) = 0;
70  virtual int getversion(unsigned long* data) = 0;
71 
72  virtual int progdac(int mfec,
73  int fecchannel,
74  int hubaddress,
75  int portaddress,
76  int rocid,
77  int dacaddress,
78  int dacvalue,
79  bool buffermode = false) = 0;
80 
81  virtual int clrcal(
82  int mfec, int fecchannel, int hubaddress, int portaddress, int rocid, bool buffermode = false) = 0;
83 
84  virtual int calpix(int mfec,
85  int mfecchannel,
86  int hubaddress,
87  int portaddress,
88  int rocid,
89  int coladdr,
90  int rowaddress,
91  int caldata,
92  bool buffermode = false) = 0;
93 
94  virtual int tbmcmd(int mfec,
95  int fecchannel,
96  int tbmchannel,
97  int hubaddress,
98  int portaddress,
99  int offset,
100  int databyte,
101  int direction) = 0;
102 
103  virtual int dcolenable(int mfec,
104  int mfecchannel,
105  int hubaddress,
106  int portaddress,
107  int rocid,
108  int dcol,
109  int dcolstate,
110  bool buffermode = false) = 0;
111 
112  //Need to give this a different name as otherwise ambiguous
113  virtual int progpix1(int mfec,
114  int mfecchannel,
115  int hubaddress,
116  int portaddress,
117  int rocid,
118  int coladdr,
119  int rowaddress,
120  int mask,
121  int trim,
122  bool buffermode = false) = 0;
123 
124  virtual int progpix(int mfec,
125  int mfecchannel,
126  int hubaddress,
127  int portaddress,
128  int rocid,
129  int coladdr,
130  int rowaddress,
131  unsigned char databyte,
132  bool buffermode = false) = 0;
133 
134  virtual int qbufsend(void) = 0;
135 
136  virtual void fecDebug(int newstate) = 0;
137 
138  virtual int delay25Test(int mymfec,
139  int myfecchannel,
140  int myhubaddress,
141  int mytbmchannel,
142  int myportaddress,
143  int myrocid,
144  int mymask,
145  int mytrim,
146  int nTry,
147  int commands,
148  int& success0,
149  int& success1,
150  int& success2,
151  int& success3,
152  int& success4) = 0;
153 
154  virtual int rocreset(int mfec, int fecchannel, int tbmchannel, int hubaddress) = 0;
155 
156  //virtual void setVCalDAC(std::string ROC, unsigned char dac)=0;
157 
158  //... maybe some more
159  };
160 } // namespace pos
161 #endif
virtual int tbmcmd(int mfec, int fecchannel, int tbmchannel, int hubaddress, int portaddress, int offset, int databyte, int direction)=0
virtual int loopcaltrigger(const int mfec, const int bitstate)=0
virtual int clrcal(int mfec, int fecchannel, int hubaddress, int portaddress, int rocid, bool buffermode=false)=0
virtual void setMaskAndTrimAll(const PixelHdwAddress &theROC, const std::vector< unsigned char > &allPixels, const bool buffermode=false)=0
virtual int delay25Test(int mymfec, int myfecchannel, int myhubaddress, int mytbmchannel, int myportaddress, int myrocid, int mymask, int mytrim, int nTry, int commands, int &success0, int &success1, int &success2, int &success3, int &success4)=0
virtual int progdac(int mfec, int fecchannel, int hubaddress, int portaddress, int rocid, int dacaddress, int dacvalue, bool buffermode=false)=0
virtual int enablecallatency(const int mfec, const int bitstate)=0
virtual int injectrstcsr(const int mfec, const int bitstate)=0
virtual int calpix(int mfec, int mfecchannel, int hubaddress, int portaddress, int rocid, int coladdr, int rowaddress, int caldata, bool buffermode=false)=0
static void trim(std::string &s)
Store mfec, mfecchannel etc.
virtual int dcolenable(int mfec, int mfecchannel, int hubaddress, int portaddress, int rocid, int dcol, int dcolstate, bool buffermode=false)=0
virtual int rocreset(int mfec, int fecchannel, int tbmchannel, int hubaddress)=0
virtual int injecttrigger(const int mfec, const int bitstate)=0
virtual int roctrimload(int mfec, int fecchannel, int hubaddress, int portaddress, int rocid, const std::vector< unsigned char > &allPixels)=0
virtual int disableexttrigger(const int mfec, const int bitstate)=0
Store mfec, mfecchannel etc.
virtual int injectrstroc(const int mfec, const int bitstate)=0
virtual void fecDebug(int newstate)=0
virtual int qbufsend(void)=0
virtual int progpix(int mfec, int mfecchannel, int hubaddress, int portaddress, int rocid, int coladdr, int rowaddress, unsigned char databyte, bool buffermode=false)=0
virtual int progpix1(int mfec, int mfecchannel, int hubaddress, int portaddress, int rocid, int coladdr, int rowaddress, int mask, int trim, bool buffermode=false)=0
virtual int getversion(const int mfec, unsigned long *data)=0
virtual int rocinit(int mfec, int fecchannel, int hubaddress, int portaddress, int rocid, int mask, int trim)=0
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80
virtual void setDcolEnableAll(const PixelHdwAddress &theROC, unsigned char maskAndTrim, const bool buffermode=false)=0
virtual int callatencycount(const int mfec, const int latency)=0
virtual void setAllDAC(const PixelHdwAddress &theROC, const std::vector< unsigned int > &dacs, const bool buffermode=false)=0
virtual int injectrsttbm(const int mfec, const int bitstate)=0
virtual int loopnormtrigger(const int mfec, const int bitstate)=0