15 fPixTestParameters = tp;
16 fConfigParameters = cp;
18 fDoAnalysisOnly =
false;
19 fDoUpdateRootFile =
false;
26 fPixTestParameters = tp;
27 fConfigParameters = cp;
28 fDoAnalysisOnly =
false;
31 vector<vector<pair<string,uint8_t> > > rocDACs = fConfigParameters->getRocDacs();
32 vector<vector<pair<string,uint8_t> > > tbmDACs = fConfigParameters->getTbmDacs();
33 vector<vector<pixelConfig> > rocPixels = fConfigParameters->getRocPixelConfig();
34 vector<pair<string,uint8_t> > sig_delays = fConfigParameters->getTbSigDelays();
35 vector<pair<string, double> > power_settings = fConfigParameters->getTbPowerSettings();
36 vector<pair<std::string, uint8_t> > pg_setup = fConfigParameters->getTbPgSettings();
39 fApi->initTestboard(sig_delays, power_settings, pg_setup);
40 fApi->initDUT(fConfigParameters->getHubId(),
41 fConfigParameters->getTbmType(), tbmDACs,
42 fConfigParameters->getRocType(), rocDACs,
44 LOG(logINFO) <<
"DUT info: ";
53 PixSetup::PixSetup() {
55 fPixTestParameters = 0;
56 fConfigParameters = 0;
58 fDoAnalysisOnly =
false;
60 LOG(logDEBUG) <<
"PixSetup ctor()";
64 PixSetup::~PixSetup() {
65 LOG(logDEBUG) <<
"PixSetup free fPxarMemory";
71 void PixSetup::killApi() {
72 if (fApi)
delete fApi;
76 void PixSetup::init() {
78 LOG(logDEBUG) <<
"PixSetup init start; getCurrentRSS() = " << rss.
getCurrentRSS();
81 fPxarMemory = std::calloc(N,
sizeof(
shist256));
82 fPxarMemHi = ((
shist256*)fPxarMemory) + N;
84 LOG(logDEBUG) <<
"fPixTestParameters = " << fPixTestParameters;
85 LOG(logDEBUG) <<
" fConfigParameters = " << fConfigParameters;
86 LOG(logDEBUG) <<
" fPxarMemory = " << fPxarMemory;
87 LOG(logDEBUG) <<
" fPxarMemHi = " << fPxarMemHi;
89 if (0 == fPxarMemory) {
90 LOG(logERROR) <<
"not enough memory; go invest money into a larger computer";
103 LOG(logDEBUG) <<
"PixSetup init done; getCurrentRSS() = " << rss.
getCurrentRSS() <<
" fPxarMemory = " << fPxarMemory;
109 void PixSetup::writeDacParameterFiles() {
110 vector<uint8_t> rocs = fApi->_dut->getEnabledRocIDs();
111 for (
unsigned int iroc = 0; iroc < rocs.size(); ++iroc) {
112 fConfigParameters->writeDacParameterFile(rocs[iroc], fApi->_dut->getDACs(iroc));
117 void PixSetup::writeTrimFiles() {
118 vector<uint8_t> rocs = fApi->_dut->getEnabledRocIDs();
119 for (
unsigned int iroc = 0; iroc < rocs.size(); ++iroc) {
120 fConfigParameters->writeTrimFile(rocs[iroc], fApi->_dut->getEnabledPixels(rocs[iroc]));
125 void PixSetup::writeTbmParameterFiles() {
126 for (
unsigned int itbm = 0; itbm < fApi->_dut->getNTbms(); itbm += 2) {
127 fConfigParameters->writeTbmParameterFile(itbm, fApi->_dut->getTbmDACs(itbm), fApi->_dut->getTbmDACs(itbm+1));