StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
qt32b_fms_2015_a.cc
1 #include <algorithm>
2 using namespace std;
3 
4 #include "bits.hh"
5 #include "qt32b_fms_2015_a.hh"
6 #include <stdio.h>
7 
8 #include "registerHack.hh"
9 
10 void qt32b_fms_2015_a(Board& qt, int t){
11  qt.output[t] = 0;
12  int sum[2]={0, 0};
13  for (int i=0; i<2; i++) { //AB sum and CD sum
14  for (int j = 0; j<16; j++) {
15  int id = i*16 + j;
16  int adc = qt.channels[t][id];
17 
18  //adc = 4095; //fake data
19 
20  sum[i] += adc;
21  }
22  if(sum[i] > 0xfff) sum[i] = 0xfff;
23  }
24 
25  qt.output[t] |= sum[0];
26  qt.output[t] |= sum[1]<<16;
27 
28  if(PRINT)
29  if(sum[0]>0 || sum[1]>0)
30  printf("%s=%08x sum=%4d %4d\n",
31  qt.name,qt.output[t],getQT01Sum(qt.output[t]),getQT23Sum(qt.output[t]));
32 }
33 
34 int getQT01Sum(int qtout){return getbits(qtout, 0,12);}
35 int getQT23Sum(int qtout){return getbits(qtout,16,12);}
Definition: Board.hh:14