This is the documentation about PixelFEDCard... More...
#include <PixelFEDCard.h>
Public Member Functions | |
unsigned long long | enabledChannels () |
PixelFEDCard () | |
PixelFEDCard (std::string filename) | |
PixelFEDCard (std::vector< std::vector< std::string > > &tab) | |
void | readDBROCLevels (std::vector< std::vector< std::string > > &tableMat, int first, int last) |
void | readDBTBMLevels (std::vector< std::vector< std::string > > &tableMat, int first, int last) |
void | restoreBaselinAndChannelMasks () |
void | restoreControlAndModeRegister () |
void | setChannel (unsigned int iChannel, bool mode) |
bool | useChannel (unsigned int iChannel) |
void | writeASCII (std::string dir="") const |
virtual void | writeXML (std::ofstream *fedstream, std::ofstream *rocstream, std::ofstream *tbmstream) const |
void | writeXML (pos::PixelConfigKey key, int version, std::string path) const |
virtual void | writeXML (std::ofstream *out) const |
virtual void | writeXMLHeader (pos::PixelConfigKey key, int version, std::string path, std::ofstream *out) const |
virtual void | writeXMLHeader (pos::PixelConfigKey key, int version, std::string path, std::ofstream *fedstream, std::ofstream *roclvlstream, std::ofstream *tbmlvlsteram) const |
virtual void | writeXMLTrailer (std::ofstream *out) const |
virtual void | writeXMLTrailer (std::ofstream *fedstream, std::ofstream *recostream, std::ofstream *tbmstream) const |
~PixelFEDCard () | |
Public Attributes | |
int | BlackHi [36] |
int | BlackLo [36] |
unsigned int | Ccntrl |
int | Ccntrl_original |
unsigned int | ClkDes2 |
unsigned int | clkphs10_18 |
unsigned int | clkphs19_27 |
unsigned int | clkphs1_9 |
unsigned int | clkphs28_36 |
int | CoarseDel |
int | DelayCh [36] |
int | Errlvl |
unsigned long | FEDBASE_0 |
unsigned long | fedNumber |
int | FedTTCDelay |
int | fifo3Wrnlvl |
int | FineDes1Del |
int | FineDes2Del |
int | modeRegister |
int | modeRegister_original |
int | N_hitlimit |
unsigned int | N_Pword |
unsigned int | N_TBMmask |
int | N_testreg |
unsigned int | Nadcg |
unsigned int | Nbaseln |
int | Nbaseln_original |
int | NC_hitlimit |
unsigned int | NC_Pword |
unsigned int | NC_TBMmask |
int | NC_testreg |
unsigned int | NCadcg |
unsigned int | NCbaseln |
int | NCbaseln_original |
unsigned int | NCcntrl |
unsigned int | NCcntrl_original |
int | NCfifo1Bzlvl |
unsigned int | Ncntrl |
unsigned int | Ncntrl_original |
int | Nfifo1Bzlvl |
int | NRocs [36] |
int | offs_dac [36] |
int | Ooslvl |
int | opt_cap [3] |
int | opt_inadj [3] |
int | opt_ouadj [3] |
int | ROC_L0 [36][26] |
int | ROC_L1 [36][26] |
int | ROC_L2 [36][26] |
int | ROC_L3 [36][26] |
int | ROC_L4 [36][26] |
int | S_hitlimit |
unsigned int | S_Pword |
unsigned int | S_TBMmask |
int | S_testreg |
unsigned int | Sadcg |
unsigned int | Sbaseln |
int | Sbaseln_original |
int | SC_hitlimit |
unsigned int | SC_Pword |
unsigned int | SC_TBMmask |
int | SC_testreg |
unsigned int | SCadcg |
unsigned int | SCbaseln |
int | SCbaseln_original |
unsigned int | SCcntrl |
unsigned int | SCcntrl_original |
int | SCfifo1Bzlvl |
unsigned int | Scntrl |
unsigned int | Scntrl_original |
int | Sfifo1Bzlvl |
unsigned int | SpecialDac |
int | TBM_L0 [36] |
int | TBM_L1 [36] |
int | TBM_L2 [36] |
int | TBM_L3 [36] |
int | TBM_L4 [36] |
int | TRL_L0 [36] |
int | TRL_L1 [36] |
int | TRL_L2 [36] |
int | TRL_L3 [36] |
int | TRL_L4 [36] |
int | Ublack [36] |
Private Member Functions | |
void | clear (void) |
This is the documentation about PixelFEDCard...
" "
The structure which holds all the informations needed to setup a pixel FED. Danek Kotlinski 18/4/06
Definition at line 26 of file PixelFEDCard.h.
PixelFEDCard::PixelFEDCard | ( | ) |
Definition at line 19 of file PixelFEDCard.cc.
References clear().
: PixelConfigBase(" "," "," ") { clear(); }
pos::PixelFEDCard::PixelFEDCard | ( | std::string | filename | ) |
pos::PixelFEDCard::PixelFEDCard | ( | std::vector< std::vector< std::string > > & | tab | ) |
pos::PixelFEDCard::~PixelFEDCard | ( | ) | [inline] |
Definition at line 46 of file PixelFEDCard.h.
{};
void PixelFEDCard::clear | ( | void | ) | [private] |
Definition at line 944 of file PixelFEDCard.cc.
References BlackHi, BlackLo, Ccntrl, ClkDes2, clkphs10_18, clkphs19_27, clkphs1_9, clkphs28_36, CoarseDel, DelayCh, Errlvl, FEDBASE_0, fedNumber, fifo3Wrnlvl, FineDes1Del, FineDes2Del, i, j, modeRegister, N_Pword, N_TBMmask, Nadcg, Nbaseln, NC_Pword, NC_TBMmask, NCadcg, NCbaseln, NCcntrl, NCfifo1Bzlvl, Ncntrl, Nfifo1Bzlvl, offs_dac, Ooslvl, opt_cap, opt_inadj, opt_ouadj, ROC_L0, ROC_L1, ROC_L2, ROC_L3, ROC_L4, S_Pword, S_TBMmask, Sadcg, Sbaseln, SC_Pword, SC_TBMmask, SCadcg, SCbaseln, SCcntrl, SCfifo1Bzlvl, Scntrl, Sfifo1Bzlvl, SpecialDac, TBM_L0, TBM_L1, TBM_L2, TBM_L3, TBM_L4, TRL_L0, TRL_L1, TRL_L2, TRL_L3, TRL_L4, and Ublack.
Referenced by PixelFEDCard().
{ FEDBASE_0 = 0 ; fedNumber = 999 ; for(int i=0;i<36;i++){ NRocs[i] = 0; offs_dac[i] = 0; BlackHi[i] = 0; BlackLo[i] = 0; Ublack[i] = 0; DelayCh[i] = 0; TBM_L0[i] = 0; TBM_L1[i] = 0; TBM_L2[i] = 0; TBM_L3[i] = 0; TBM_L4[i] = 0; TRL_L0[i] = 0; TRL_L1[i] = 0; TRL_L2[i] = 0; TRL_L3[i] = 0; TRL_L4[i] = 0; } for(int i=0;i<3;i++){ opt_cap[i] = 0; opt_inadj[i] = 0; opt_ouadj[i] = 0; } clkphs1_9 = 0; clkphs10_18 = 0; clkphs19_27 = 0; clkphs28_36 = 0; for(int i=0;i<36;i++) { for(int j=0;j<26;j++) { ROC_L0[i][j] = 0; ROC_L1[i][j] = 0; ROC_L2[i][j] = 0; ROC_L3[i][j] = 0; ROC_L4[i][j] = 0; } } Ncntrl = 0; NCcntrl = 0; SCcntrl = 0; Scntrl = 0; CoarseDel = 0; ClkDes2 = 0; FineDes2Del = 0; FineDes1Del = 0; Ccntrl = 0; modeRegister = 0; Nadcg = 0; NCadcg = 0; SCadcg = 0; Sadcg = 0; Nbaseln = 0; NCbaseln = 0; SCbaseln = 0; Sbaseln = 0; N_TBMmask = 0; NC_TBMmask = 0; SC_TBMmask = 0; S_TBMmask = 0; N_Pword = 0; NC_Pword = 0; SC_Pword = 0; S_Pword = 0; SpecialDac = 0; Ooslvl = 0; Errlvl = 0; Nfifo1Bzlvl = 0; NCfifo1Bzlvl = 0; SCfifo1Bzlvl = 0; Sfifo1Bzlvl = 0; fifo3Wrnlvl = 0; }
unsigned long long PixelFEDCard::enabledChannels | ( | ) |
Definition at line 1824 of file PixelFEDCard.cc.
References NCcntrl, Ncntrl, SCcntrl, and Scntrl.
Referenced by setChannel(), and useChannel().
{ unsigned long long channels=0; // return a 64-bit word with low 36 bits set if a channel is enabled // if bits are set in the control registers, transfer of data from // fifo1 to fifo 2 is not done, meaning the channel is disabled. channels = (Ncntrl & 0x1ffLL); // Add LL for SLC4, d.k. 12/07 channels += (NCcntrl & 0x1ffLL) << 9; channels += (SCcntrl & 0x1ffLL) << 18; channels += (Scntrl & 0x1ffLL) << 27; return ~channels; //bitwise complement to get enabled channels }
void PixelFEDCard::readDBROCLevels | ( | std::vector< std::vector< std::string > > & | tableMat, |
int | first, | ||
int | last | ||
) |
EXTERNAL_TABLE_NAME: ROC_ANALOG_LEVELS (VIEW: CONF_KEY_ROC_LEVELS_V)
CONFIG_KEY NOT NULL VARCHAR2(80) KEY_TYPE NOT NULL VARCHAR2(80) KEY_ALIAS NOT NULL VARCHAR2(80) VERSION VARCHAR2(40) KIND_OF_COND NOT NULL VARCHAR2(40) ROC_NAME VARCHAR2(200) FED_ROC_NUM NUMBER(38) PIXEL_FED NUMBER(38) FED_CHAN NUMBER(38) ROC_L0 NOT NULL NUMBER(38) ROC_L0[1-36][1-21/24/8/16] indexes taken from FED_CHAN and FED_ROC_NUM respec. ROC_L1 NOT NULL NUMBER(38) ROC_L1[1-36][1-21/24/8/16] indexes taken from FED_CHAN and FED_ROC_NUM respec. ROC_L2 NOT NULL NUMBER(38) ROC_L2[1-36][1-21/24/8/16] indexes taken from FED_CHAN and FED_ROC_NUM respec. ROC_L3 NOT NULL NUMBER(38) ROC_L3[1-36][1-21/24/8/16] indexes taken from FED_CHAN and FED_ROC_NUM respec. ROC_L4 NOT NULL NUMBER(38) ROC_L4[1-36][1-21/24/8/16] indexes taken from FED_CHAN and FED_ROC_NUM respec. ROC_B NUMBER(38) ROC_UB NUMBER(38)
Definition at line 466 of file PixelFEDCard.cc.
References trackerHits::c, benchmark_cfg::cerr, n, csvReporter::r, ROC_L0, ROC_L1, ROC_L2, ROC_L3, and ROC_L4.
{ string mthn = "[PixelFEDCard::readDBROCLevels()] "; map<string , int > colM; vector<string> colNames; colNames.push_back("CONFIG_KEY" ); colNames.push_back("KEY_TYPE" ); colNames.push_back("KEY_ALIAS" ); colNames.push_back("VERSION" ); colNames.push_back("KIND_OF_COND"); colNames.push_back("ROC_NAME" ); colNames.push_back("FED_ROC_NUM" ); colNames.push_back("PIXEL_FED" ); colNames.push_back("FED_CHAN" ); colNames.push_back("ROC_L0" ); colNames.push_back("ROC_L1" ); colNames.push_back("ROC_L2" ); colNames.push_back("ROC_L3" ); colNames.push_back("ROC_L4" ); colNames.push_back("ROC_B" ); colNames.push_back("ROC_UB" ); /* colNames.push_back("CONFIG_KEY_ID" ); colNames.push_back("CONFIG_KEY" ); colNames.push_back("VERSION" ); colNames.push_back("KIND_OF_COND" ); colNames.push_back("PXLFED_NAME" ); colNames.push_back("FED_CHAN" ); colNames.push_back("AOH_CHAN" ); colNames.push_back("ROC_NAME" ); colNames.push_back("HUB_ADDRS" ); colNames.push_back("PORT_NUMBER" ); colNames.push_back("ROC_I2C_ADDR" ); colNames.push_back("GEOM_ROC_NUM" ); colNames.push_back("FED_ROC_NUM" ); colNames.push_back("ROC_L0" ); colNames.push_back("ROC_L1" ); colNames.push_back("ROC_L2" ); colNames.push_back("ROC_L3" ); colNames.push_back("ROC_L4" ); */ // Retrieve header row and cross check that everyfield is there. for(unsigned int c = 0 ; c < tableMat[firstRow].size() ; c++) { for(unsigned int n=0; n<colNames.size(); n++) { if(tableMat[firstRow][c] == colNames[n]){ colM[colNames[n]] = c; break; } } }//end for for(unsigned int n=0; n<colNames.size(); n++) { if(colM.find(colNames[n]) == colM.end()) { std::cerr << mthn << "\tCouldn't find in the database the column with name " << colNames[n] << std::endl; assert(0); } } // Address levels 1 per channel (36) per roc(max=26) // int ROC_L0[36][26],ROC_L1[36][26],ROC_L2[36][26],ROC_L3[36][26],ROC_L4[36][26]; for(int r = firstRow + 1 ; r < lastRow ; r++) //Goes to every row of the Matrix (MUST BE 36, one for each FED channel) { ROC_L0[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1][atoi(tableMat[r][colM["FED_ROC_NUM"]].c_str())] = atoi(tableMat[r][colM["ROC_L0"]].c_str()) ; ROC_L1[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1][atoi(tableMat[r][colM["FED_ROC_NUM"]].c_str())] = atoi(tableMat[r][colM["ROC_L1"]].c_str()) ; ROC_L2[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1][atoi(tableMat[r][colM["FED_ROC_NUM"]].c_str())] = atoi(tableMat[r][colM["ROC_L2"]].c_str()) ; ROC_L3[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1][atoi(tableMat[r][colM["FED_ROC_NUM"]].c_str())] = atoi(tableMat[r][colM["ROC_L3"]].c_str()) ; ROC_L4[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1][atoi(tableMat[r][colM["FED_ROC_NUM"]].c_str())] = atoi(tableMat[r][colM["ROC_L4"]].c_str()) ; } }
void PixelFEDCard::readDBTBMLevels | ( | std::vector< std::vector< std::string > > & | tableMat, |
int | first, | ||
int | last | ||
) |
EXTERNAL_TABLE_NAME: TBM_ANALOG_LEVELS (VIEW: CONF_KEY_TBM_LEVELS_V)
CONFIG_KEY NOT NULL VARCHAR2(80) KEY_TYPE NOT NULL VARCHAR2(80) KEY_ALIAS NOT NULL VARCHAR2(80) VERSION VARCHAR2(40) KIND_OF_COND NOT NULL VARCHAR2(40) TBM_NAME VARCHAR2(200) PIXEL_FED NUMBER(38) FED_CHAN NUMBER(38) TBMA_HEAD_L0 NUMBER(38) TBM_L0[1-36] index taken from FED_CHAN TBMA_HEAD_L1 NUMBER(38) TBM_L1[1-36] index taken from FED_CHAN TBMA_HEAD_L2 NUMBER(38) TBM_L2[1-36] index taken from FED_CHAN TBMA_HEAD_L3 NUMBER(38) TBM_L3[1-36] index taken from FED_CHAN TBMA_HEAD_L4 NUMBER(38) TBM_L4[1-36] index taken from FED_CHAN TBMA_TRAIL_L0 NUMBER(38) TRL_L0[1-36] index taken from FED_CHAN TBMA_TRAIL_L1 NUMBER(38) TRL_L1[1-36] index taken from FED_CHAN TBMA_TRAIL_L2 NUMBER(38) TRL_L2[1-36] index taken from FED_CHAN TBMA_TRAIL_L3 NUMBER(38) TRL_L3[1-36] index taken from FED_CHAN TBMA_TRAIL_L4 NUMBER(38) TRL_L4[1-36] index taken from FED_CHAN TBMA_HEAD_B NUMBER(38) TBMA_HEAD_UB NUMBER(38) TBMA_TRAIL_B NUMBER(38) TBMA_TRAIL_UB NUMBER(38)
Definition at line 350 of file PixelFEDCard.cc.
References trackerHits::c, benchmark_cfg::cerr, n, csvReporter::r, TBM_L0, TBM_L1, TBM_L2, TBM_L3, TBM_L4, TRL_L0, TRL_L1, TRL_L2, TRL_L3, and TRL_L4.
{ string mthn = "[PixelFEDCard::readDBTBMLevels()] "; vector<string> ins = tableMat[firstRow]; map<string , int > colM; vector<string> colNames; colNames.push_back("CONFIG_KEY" ); colNames.push_back("KEY_TYPE" ); colNames.push_back("KEY_ALIAS" ); colNames.push_back("VERSION" ); colNames.push_back("KIND_OF_COND" ); colNames.push_back("TBM_NAME" ); colNames.push_back("PIXEL_FED" ); colNames.push_back("FED_CHAN" ); colNames.push_back("TBMA_HEAD_L0" ); colNames.push_back("TBMA_HEAD_L1" ); colNames.push_back("TBMA_HEAD_L2" ); colNames.push_back("TBMA_HEAD_L3" ); colNames.push_back("TBMA_HEAD_L4" ); colNames.push_back("TBMA_TRAIL_L0"); colNames.push_back("TBMA_TRAIL_L1"); colNames.push_back("TBMA_TRAIL_L2"); colNames.push_back("TBMA_TRAIL_L3"); colNames.push_back("TBMA_TRAIL_L4"); colNames.push_back("TBMA_HEAD_B" ); colNames.push_back("TBMA_HEAD_UB" ); colNames.push_back("TBMA_TRAIL_B" ); colNames.push_back("TBMA_TRAIL_UB"); /* colNames.push_back("CONFIG_KEY_ID" ); colNames.push_back("CONFIG_KEY" ); colNames.push_back("VERSION" ); colNames.push_back("CONDITION_DATA_SET_ID" ); colNames.push_back("KIND_OF_CONDITION_ID" ); colNames.push_back("KIND_OF_COND" ); colNames.push_back("PXLFED_NAME" ); colNames.push_back("FED_CHAN" ); colNames.push_back("TBM_PART_ID" ); colNames.push_back("TBM_SER_NUM" ); colNames.push_back("PANEL_NAME" ); colNames.push_back("HUB_ADDRS" ); colNames.push_back("TBMA_HEAD_L0" ); colNames.push_back("TBMA_HEAD_L1" ); colNames.push_back("TBMA_HEAD_L2" ); colNames.push_back("TBMA_HEAD_L3" ); colNames.push_back("TBMA_HEAD_L4" ); colNames.push_back("TBMA_TRAIL_L0" ); colNames.push_back("TBMA_TRAIL_L1" ); colNames.push_back("TBMA_TRAIL_L2" ); colNames.push_back("TBMA_TRAIL_L3" ); colNames.push_back("TBMA_TRAIL_L4" ); */ // Retrieve header row and cross check that everyfield is there. for(unsigned int c = 0 ; c < ins.size() ; c++) { for(unsigned int n=0; n<colNames.size(); n++) { if(tableMat[firstRow][c] == colNames[n]){ colM[colNames[n]] = c; break; } } }//end for for(unsigned int n=0; n<colNames.size(); n++) { if(colM.find(colNames[n]) == colM.end()) { std::cerr << mthn << "\tCouldn't find in the database the column with name " << colNames[n] << std::endl; assert(0); } } for(int r = firstRow + 1 ; r < lastRow ; r++) //Goes to every row of the Matrix (MUST BE 36, one for each FED channel) { //Signal levels for the TBM, one per channel TBM_L0[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1] = atoi(tableMat[r][colM["TBMA_HEAD_L0"]].c_str() ) ; TBM_L1[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1] = atoi(tableMat[r][colM["TBMA_HEAD_L1"]].c_str() ) ; TBM_L2[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1] = atoi(tableMat[r][colM["TBMA_HEAD_L2"]].c_str() ) ; TBM_L3[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1] = atoi(tableMat[r][colM["TBMA_HEAD_L3"]].c_str() ) ; TBM_L4[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1] = atoi(tableMat[r][colM["TBMA_HEAD_L4"]].c_str() ) ; TRL_L0[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1] = atoi(tableMat[r][colM["TBMA_TRAIL_L0"]].c_str() ) ; TRL_L1[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1] = atoi(tableMat[r][colM["TBMA_TRAIL_L1"]].c_str() ) ; TRL_L2[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1] = atoi(tableMat[r][colM["TBMA_TRAIL_L2"]].c_str() ) ; TRL_L3[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1] = atoi(tableMat[r][colM["TBMA_TRAIL_L3"]].c_str() ) ; TRL_L4[atoi(tableMat[r][colM["FED_CHAN"]].c_str())-1] = atoi(tableMat[r][colM["TBMA_TRAIL_L4"]].c_str() ) ; } }
void PixelFEDCard::restoreBaselinAndChannelMasks | ( | ) |
Definition at line 1863 of file PixelFEDCard.cc.
References Nbaseln, Nbaseln_original, NCbaseln, NCbaseln_original, NCcntrl, NCcntrl_original, Ncntrl, Ncntrl_original, Sbaseln, Sbaseln_original, SCbaseln, SCbaseln_original, SCcntrl, SCcntrl_original, Scntrl, and Scntrl_original.
void PixelFEDCard::restoreControlAndModeRegister | ( | ) |
Definition at line 1879 of file PixelFEDCard.cc.
References Ccntrl, Ccntrl_original, modeRegister, and modeRegister_original.
void PixelFEDCard::setChannel | ( | unsigned int | iChannel, |
bool | mode | ||
) |
Definition at line 1841 of file PixelFEDCard.cc.
References enabledChannels(), NCcntrl, Ncntrl, SCcntrl, and Scntrl.
Referenced by pos::PixelConfigurationVerifier::checkChannelEnable().
{ assert(iChannel>0&&iChannel<37); long long mask=enabledChannels(); long long bit=0x1LL<<(iChannel-1); if (mode) { mask=mask|bit; } else{ bit=~bit; mask=mask&bit; } mask=~mask; Ncntrl=mask & 0x1ffLL; mask=mask>>9; NCcntrl=mask & 0x1ffLL; mask=mask>>9; SCcntrl=mask & 0x1ffLL; mask=mask>>9; Scntrl=mask & 0x1ffLL; }
bool PixelFEDCard::useChannel | ( | unsigned int | iChannel | ) |
Definition at line 1836 of file PixelFEDCard.cc.
References enabledChannels().
Referenced by pos::PixelConfigurationVerifier::checkChannelEnable().
{ assert(iChannel>0&&iChannel<37); return (enabledChannels()>>(iChannel-1))&0x1LL; }
void PixelFEDCard::writeASCII | ( | std::string | dir = "" | ) | const [virtual] |
Implements pos::PixelConfigBase.
Definition at line 1022 of file PixelFEDCard.cc.
References BlackHi, BlackLo, Ccntrl, ClkDes2, clkphs10_18, clkphs19_27, clkphs1_9, clkphs28_36, CoarseDel, gather_cfg::cout, DelayCh, Errlvl, FEDBASE_0, fedNumber, FedTTCDelay, fifo3Wrnlvl, lut2db_cfg::filename, FineDes1Del, FineDes2Del, i, j, modeRegister, N_hitlimit, N_Pword, N_TBMmask, N_testreg, Nadcg, Nbaseln, NC_hitlimit, NC_Pword, NC_TBMmask, NC_testreg, NCadcg, NCbaseln, NCcntrl, NCfifo1Bzlvl, Ncntrl, Nfifo1Bzlvl, NULL, offs_dac, Ooslvl, opt_cap, opt_inadj, opt_ouadj, EdgesToViz::outfile, ROC_L0, ROC_L1, ROC_L2, ROC_L3, ROC_L4, S_hitlimit, S_Pword, S_TBMmask, S_testreg, Sadcg, Sbaseln, SC_hitlimit, SC_Pword, SC_TBMmask, SC_testreg, SCadcg, SCbaseln, SCcntrl, SCfifo1Bzlvl, Scntrl, Sfifo1Bzlvl, SpecialDac, TBM_L0, TBM_L1, TBM_L2, TBM_L3, TBM_L4, TRL_L0, TRL_L1, TRL_L2, TRL_L3, TRL_L4, and Ublack.
{ std::string mthn = "[PixelFEDCard::writeASCII()]\t\t\t\t " ; ostringstream s1; s1<<fedNumber; std::string fedNum=s1.str(); if (dir!="") dir+="/"; std::string filename=dir+"params_fed_"+fedNum+".dat"; FILE *outfile = fopen((filename.c_str()),"w"); if (outfile == NULL) { cout<< __LINE__ << "]\t" << mthn << "Could not open file: " << filename << " for writing" << endl; return; } //Fed Base Address fprintf(outfile,"FED Base address :0x%lx\n", FEDBASE_0); fprintf(outfile,"FEDID Number :0x%lx\n", fedNumber); // Number of ROCs int ijx=0; for(int i=0;i<36;i++){ ijx=i+1; fprintf(outfile,"Number of ROCs Chnl %d:%d\n",ijx,NRocs[i]); } //Settable optical input parameters fprintf(outfile,"Optical reciever 1 Capacitor Adjust(0-3):%d\n",opt_cap[0]); fprintf(outfile,"Optical reciever 2 Capacitor Adjust(0-3):%d\n",opt_cap[1]); fprintf(outfile,"Optical reciever 3 Capacitor Adjust(0-3):%d\n",opt_cap[2]); fprintf(outfile,"Optical reciever 1 Input Offset (0-15) :%d\n",opt_inadj[0]); fprintf(outfile,"Optical reciever 2 Input Offset (0-15) :%d\n",opt_inadj[1]); fprintf(outfile,"Optical reciever 3 Input Offset (0-15) :%d\n",opt_inadj[2]); fprintf(outfile,"Optical reciever 1 Output Offset (0-3) :%d\n",opt_ouadj[0]); fprintf(outfile,"Optical reciever 2 Output Offset (0-3) :%d\n",opt_ouadj[1]); fprintf(outfile,"Optical reciever 3 Output Offset (0-3) :%d\n",opt_ouadj[2]); //input offset dac for(int i=0;i<36;i++) { fprintf(outfile,"Offset DAC channel %d:%d\n",i+1,offs_dac[i]); } //clock phases fprintf(outfile,"Clock Phase Bits ch 1-9:0x%x\n",clkphs1_9 ); fprintf(outfile,"Clock Phase Bits ch 10-18:0x%x\n",clkphs10_18); fprintf(outfile,"Clock Phase Bits ch 19-27:0x%x\n",clkphs19_27); fprintf(outfile,"Clock Phase Bits ch 28-36:0x%x\n",clkphs28_36); //Blacks for(int i=0;i<36;i++){ fprintf(outfile,"Black HiThold ch %d:%d \n",i+1,BlackHi[i]); fprintf(outfile,"Black LoThold ch %d:%d \n",i+1,BlackLo[i]); fprintf(outfile,"ULblack Thold ch %d:%d \n",i+1,Ublack[i]); } //Channel delays for(int i=0;i<36;i++) { fprintf(outfile,"Delay channel %d(0-15):%d\n",i+1,DelayCh[i]); } //Signal levels for(int i=0;i<36;i++) { fprintf(outfile,"TBM level 0 Channel %d:%d\n",i+1,TBM_L0[i]); fprintf(outfile,"TBM level 1 Channel %d:%d\n",i+1,TBM_L1[i]); fprintf(outfile,"TBM level 2 Channel %d:%d\n",i+1,TBM_L2[i]); fprintf(outfile,"TBM level 3 Channel %d:%d\n",i+1,TBM_L3[i]); fprintf(outfile,"TBM level 4 Channel %d:%d\n",i+1,TBM_L4[i]); for(int j=0;j<NRocs[i];j++) { fprintf(outfile,"ROC%d level 0 Channel %d :%d\n", j,i+1,ROC_L0[i][j]); fprintf(outfile,"ROC%d level 1 Channel %d :%d\n", j,i+1,ROC_L1[i][j]); fprintf(outfile,"ROC%d level 2 Channel %d :%d\n", j,i+1,ROC_L2[i][j]); fprintf(outfile,"ROC%d level 3 Channel %d :%d\n", j,i+1,ROC_L3[i][j]); fprintf(outfile,"ROC%d level 4 Channel %d :%d\n", j,i+1,ROC_L4[i][j]); } fprintf(outfile,"TRLR level 0 Channel %d:%d\n",i+1,TRL_L0[i]); fprintf(outfile,"TRLR level 1 Channel %d:%d\n",i+1,TRL_L1[i]); fprintf(outfile,"TRLR level 2 Channel %d:%d\n",i+1,TRL_L2[i]); fprintf(outfile,"TRLR level 3 Channel %d:%d\n",i+1,TRL_L3[i]); fprintf(outfile,"TRLR level 4 Channel %d:%d\n",i+1,TRL_L4[i]); } //These bits turn off(1) and on(0) channels fprintf(outfile,"Channel Enbable bits chnls 1-9 (on = 0):0x%x\n", Ncntrl); fprintf(outfile,"Channel Enbable bits chnls 10-18(on = 0):0x%x\n", NCcntrl); fprintf(outfile,"Channel Enbable bits chnls 19-27(on = 0):0x%x\n", SCcntrl); fprintf(outfile,"Channel Enbable bits chnls 28-36(on = 0):0x%x\n", Scntrl); //These are delays to the TTCrx fprintf(outfile,"TTCrx Coarse Delay Register 2:%d\n",CoarseDel); fprintf(outfile,"TTCrc ClkDes2 Register 3:0x%x\n",ClkDes2); fprintf(outfile,"TTCrc Fine Dlay ClkDes2 Reg 1:%d\n",FineDes2Del); // Control register fprintf(outfile,"Center Chip Control Reg:0x%x\n",Ccntrl); fprintf(outfile,"Initial Slink DAQ mode:%d\n",modeRegister); //These bits set ADC Gain/Range 1Vpp(0) and 2Vpp(1) for channels fprintf(outfile,"Channel ADC Gain bits chnls 1-12(1Vpp = 0):0x%x\n", Nadcg); fprintf(outfile,"Channel ADC Gain bits chnls 13-20(1Vpp = 0):0x%x\n", NCadcg); fprintf(outfile,"Channel ADC Gain bits chnls 21-28(1Vpp = 0):0x%x\n", SCadcg); fprintf(outfile,"Channel ADC Gain bits chnls 29-36(1Vpp = 0):0x%x\n", Sadcg); //These bits set Baseline adjustment value (common by FPGA)//can turn on by channel fprintf(outfile,"Channel Baseline Enbable chnls 1-9 (on = (0x1ff<<16)+):0x%x\n", Nbaseln); fprintf(outfile,"Channel Baseline Enbable chnls 10-18(on = (0x1ff<<16)+):0x%x\n", NCbaseln); fprintf(outfile,"Channel Baseline Enbable chnls 19-27(on = (0x1ff<<16)+):0x%x\n", SCbaseln); fprintf(outfile,"Channel Baseline Enbable chnls 28-36(on = (0x1ff<<16)+):0x%x\n", Sbaseln); //These bits set TBM trailer mask (common by FPGA) fprintf(outfile,"TBM trailer mask chnls 1-9 (0xff = all masked):0x%x\n", N_TBMmask); fprintf(outfile,"TBM trailer mask chnls 10-18(0xff = all masked):0x%x\n", NC_TBMmask); fprintf(outfile,"TBM trailer mask chnls 19-27(0xff = all masked):0x%x\n", SC_TBMmask); fprintf(outfile,"TBM trailer mask chnls 28-36(0xff = all masked):0x%x\n", S_TBMmask); //These bits set the Private fill/gap word value (common by FPGA) fprintf(outfile,"Private 8 bit word chnls 1-9 :0x%x\n", N_Pword); fprintf(outfile,"Private 8 bit word chnls 10-18:0x%x\n", NC_Pword); fprintf(outfile,"Private 8 bit word chnls 19-27:0x%x\n", SC_Pword); fprintf(outfile,"Private 8 bit word chnls 28-36:0x%x\n", S_Pword); //These bit sets the special dac mode for random triggers fprintf(outfile,"Special Random testDAC mode (on = 0x1, off=0x0):0x%x\n", SpecialDac); //These bits set the number of Out of consecutive out of sync events until a TTs OOs fprintf(outfile,"Number of Consecutive (max 1023) Out of Syncs till TTs OOS set:%d\n", Ooslvl); //These bits set the number of Empty events until a TTs Error fprintf(outfile,"Number of Consecutive (max 1023) Empty events till TTs ERR set:%d\n", Errlvl); //These bits set the Almost Full level in fifo-1, Almost full = TTs BUSY in fifo-1 N fprintf(outfile,"N Fifo-1 almost full level,sets TTs BUSY (max 1023):%d\n", Nfifo1Bzlvl); //These bits set the Almost Full level in fifo-1, Almost full = TTs BUSY in fifo-1 NC fprintf(outfile,"NC Fifo-1 almost full level,sets TTs BUSY (max 1023):%d\n", NCfifo1Bzlvl); //These bits set the Almost Full level in fifo-1, Almost full = TTs BUSY in fifo-1 SC fprintf(outfile,"SC Fifo-1 almost full level,sets TTs BUSY (max 1023):%d\n", SCfifo1Bzlvl); //These bits set the Almost Full level in fifo-1, Almost full = TTs BUSY in fifo-1 S fprintf(outfile,"S Fifo-1 almost full level,sets TTs BUSY (max 1023):%d\n", Sfifo1Bzlvl); //These bits set the Almost Full level in fifo-3, Almost full = TTs WARN in fifo-3 fprintf(outfile,"Fifo-3 almost full level,sets TTs WARN (max 8191):%d\n", fifo3Wrnlvl); fprintf(outfile,"FED Master delay 0=0,1=32,2=48,3=64:%d\n", FedTTCDelay); fprintf(outfile,"TTCrx Register 0 fine delay ClkDes1:%d\n", FineDes1Del); int checkword=91509; fprintf(outfile,"Params FED file check word:%d\n", checkword); //These bits set the hit limit in fifo-1 for an event fprintf(outfile,"N fifo-1 hit limit (max 1023 (hard) 900 (soft):%d\n", N_hitlimit); //ch 1-9 fprintf(outfile,"NC fifo-1 hit limit (max 1023 (hard) 900 (soft):%d\n", NC_hitlimit); //ch 10-18 fprintf(outfile,"SC fifo-1 hit limit (max 1023 (hard) 900 (soft):%d\n", SC_hitlimit); //ch 19-27 fprintf(outfile,"S fifo-1 hit limit (max 1023 (hard) 900 (soft):%d\n", S_hitlimit); //ch 28-36 //These bits allow a ROC to be skipped (1/fpga) fprintf(outfile,"Skip a ROC in ch 1-9, bits 10-5 chnl, bits 0-4 ROC-1:%d\n", N_testreg); fprintf(outfile,"Skip a ROC in ch 10-18, bits 10-5 chnl, bits 0-4 ROC-1:%d\n", NC_testreg); fprintf(outfile,"Skip a ROC in ch 19-27, bits 10-5 chnl, bits 0-4 ROC-1:%d\n", SC_testreg); fprintf(outfile,"Skip a ROC in ch 28-36, bits 10-5 chnl, bits 0-4 ROC-1:%d\n", S_testreg); fclose(outfile); }
void PixelFEDCard::writeXML | ( | pos::PixelConfigKey | key, |
int | version, | ||
std::string | path | ||
) | const [virtual] |
Reimplemented from pos::PixelConfigBase.
Definition at line 1657 of file PixelFEDCard.cc.
References gather_cfg::cout, edm::service::getTime(), and dbtoconf::out.
{ std::string mthn = "[PixelFEDCard::writeXML()]\t\t\t " ; std::stringstream fullPath ; fullPath << path << "/fedcard.xml" ; std::cout << __LINE__ << "]\t" << mthn << "Writing to: |" << fullPath.str() << "|" << std::endl ; std::ofstream out(fullPath.str().c_str()) ; out << "<ROOT>" << std::endl ; out << "" << std::endl ; out << " <HEADER>" << std::endl ; out << " <TYPE>" << std::endl ; out << " <EXTENSION_TABLE_NAME>FED_CONFIGURATION</EXTENSION_TABLE_NAME>" << std::endl ; out << " <NAME>Pixel FED Configuration</NAME>" << std::endl ; out << " </TYPE>" << std::endl ; out << " <RUN>" << std::endl ; out << " <RUN_TYPE>Pixel FED Configuration</RUN_TYPE>" << std::endl ; out << " <RUN_NUMBER>1</RUN_NUMBER>" << std::endl ; out << " <RUN_BEGIN_TIMESTAMP>" << PixelTimeFormatter::getTime() << "</RUN_BEGIN_TIMESTAMP>" << std::endl ; out << " <COMMENT_DESCRIPTION>Pixel FED Configuration</COMMENT_DESCRIPTION>" << std::endl ; out << " <LOCATION>CERN TAC</LOCATION>" << std::endl ; out << " <CREATED_BY_USER>Dario Menasce</CREATED_BY_USER>" << std::endl ; out << " </RUN>" << std::endl ; out << " </HEADER>" << std::endl ; out << "" << std::endl ; out << " <DATA_SET>" << std::endl ; out << "" << std::endl ; out << " <VERSION>T_E_S_T</VERSION>" << std::endl ; out << " <COMMENT_DESCRIPTION>Pixel FED Configuration</COMMENT_DESCRIPTION>" << std::endl ; out << "" << std::endl ; out << " <PART>" << std::endl ; out << " <NAME_LABEL>CMS-PIXEL-ROOT</NAME_LABEL>" << std::endl ; out << " <KIND_OF_PART>Detector ROOT</KIND_OF_PART>" << std::endl ; out << " </PART>" << std::endl ; out << "" << std::endl ; out << " <DATA>" << std::endl ; out << " <PXLFED_NAME>PxlFED_32</PXLFED_NAME>" << std::endl ; out << " <CRATE_NUMBER>1</CRATE_NUMBER>" << std::endl ; out << " <SLOT_NUMBER>5</SLOT_NUMBER> " << std::endl ; out << " <VME_ADDRESS>268435456</VME_ADDRESS>" << std::endl ; out << " <CRATE_LABEL>S1G03e</CRATE_LABEL>" << std::endl ; out << "" << std::endl ; out << " <CHANNEL_ID>1</CHANNEL_ID>" << std::endl ; out << " <NUMBER_OF_ROCS>21</NUMBER_OF_ROCS>" << std::endl ; out << " <CHANNEL_OFFSET_DAC_SETTINGS>0</CHANNEL_OFFSET_DAC_SETTINGS>" << std::endl ; out << " <CHANNEL_DELAY_SETTINGS>3</CHANNEL_DELAY_SETTINGS>" << std::endl ; out << " <CHANNEL_BLACK_HIGH>400</CHANNEL_BLACK_HIGH>" << std::endl ; out << " <CHANNEL_BLACK_LOW>150</CHANNEL_BLACK_LOW>" << std::endl ; out << " <CHANNEL_ULTRA_BLACK>120</CHANNEL_ULTRA_BLACK>" << std::endl ; out << "" << std::endl ; out << " <OPT1_CAP>0</OPT1_CAP>" << std::endl ; out << " <OPT2_CAP>0</OPT2_CAP>" << std::endl ; out << " <OPT3_CAP>0</OPT3_CAP>" << std::endl ; out << " <OPT1_INP>0</OPT1_INP>" << std::endl ; out << " <OPT2_INP>0</OPT2_INP>" << std::endl ; out << " <OPT3_INP>0</OPT3_INP>" << std::endl ; out << " <OPT1_OUT>0</OPT1_OUT>" << std::endl ; out << " <OPT2_OUT>0</OPT2_OUT>" << std::endl ; out << " <OPT3_OUT>0</OPT3_OUT>" << std::endl ; out << " <NORTH_CLKPHB>511</NORTH_CLKPHB>" << std::endl ; out << " <NORTHCENTER_CLKPHB>511</NORTHCENTER_CLKPHB>" << std::endl ; out << " <SOUTHCENTER_CLKPHB>511</SOUTHCENTER_CLKPHB>" << std::endl ; out << " <SOUTH_CLKPHB>511</SOUTH_CLKPHB>" << std::endl ; out << " <NORTH_CTRL>0</NORTH_CTRL> " << std::endl ; out << " <NORTHCENTER_CTRL>0</NORTHCENTER_CTRL>" << std::endl ; out << " <SOUTHCENTER_CTRL>0</SOUTHCENTER_CTRL>" << std::endl ; out << " <SOUTH_CTRL>0</SOUTH_CTRL>" << std::endl ; out << " <REG1_TTCRX_FDLA>5</REG1_TTCRX_FDLA>" << std::endl ; out << " <REG2_TTCRX_CDLA>0</REG2_TTCRX_CDLA>" << std::endl ; out << " <REG3_TTCRX_CLKD2>155</REG3_TTCRX_CLKD2>" << std::endl ; out << " <CENTER_CTRL>0</CENTER_CTRL>" << std::endl ; out << " <CENTER_MODE>0</CENTER_MODE>" << std::endl ; out << " <B1_ADCGN>0</B1_ADCGN>" << std::endl ; out << " <B2_ADCGN>0</B2_ADCGN>" << std::endl ; out << " <B3_ADCGN>0</B3_ADCGN>" << std::endl ; out << " <B4_ADCGN>0</B4_ADCGN>" << std::endl ; out << " <NORTH_BADJ>330</NORTH_BADJ>" << std::endl ; out << " <NORTHCENTER_BADJ>330</NORTHCENTER_BADJ>" << std::endl ; out << " <SOUTHCENTER_BADJ>330</SOUTHCENTER_BADJ>" << std::endl ; out << " <SOUTH_BADJ>330</SOUTH_BADJ>" << std::endl ; out << " <NORTH_TBMMASK>2</NORTH_TBMMASK>" << std::endl ; out << " <NORTHCENTER_TBMMASK>2</NORTHCENTER_TBMMASK>" << std::endl ; out << " <SOUTHCENTER_TBMMASK>2</SOUTHCENTER_TBMMASK>" << std::endl ; out << " <SOUTH_TBMMASK>2</SOUTH_TBMMASK>" << std::endl ; out << " <NORTH_PWORD>177</NORTH_PWORD>" << std::endl ; out << " <NORTHCENTER_PWORD>178</NORTHCENTER_PWORD>" << std::endl ; out << " <SOUTHCENTER_PWORD>179</SOUTHCENTER_PWORD>" << std::endl ; out << " <SOUTH_PWORD>180</SOUTH_PWORD>" << std::endl ; out << " <SPECDAC>0</SPECDAC>" << std::endl ; out << " <OOS_LVL>0</OOS_LVL>" << std::endl ; out << " <ERR_LVL>0</ERR_LVL>" << std::endl ; out << " <NORTH_FIFO1_BZ_LVL>900</NORTH_FIFO1_BZ_LVL>" << std::endl ; out << " <NORTHCENTER_FIFO1_BZ_LVL>900</NORTHCENTER_FIFO1_BZ_LVL>" << std::endl ; out << " <SOUTHCENTER_FIFO1_BZ_LVL>900</SOUTHCENTER_FIFO1_BZ_LVL>" << std::endl ; out << " <SOUTH_FIFO1_BZ_LVL>900</SOUTH_FIFO1_BZ_LVL>" << std::endl ; out << " <FIFO3_WRN_LVL>7680</FIFO3_WRN_LVL> " << std::endl ; out << " <FED_MASTER_DELAY>0</FED_MASTER_DELAY>" << std::endl ; out << " <NO_HITLIMIT>0</NO_HITLIMIT>" << std::endl ; out << " <NC_HITLIMIT>0</NC_HITLIMIT>" << std::endl ; out << " <SC_HITLIMIT>0</SC_HITLIMIT>" << std::endl ; out << " <SO_HITLIMIT>0</SO_HITLIMIT>" << std::endl ; out << " <NO_TESTREG>0</NO_TESTREG>" << std::endl ; out << " <NC_TESTREG>0</NC_TESTREG>" << std::endl ; out << " <SC_TESTREG>0</SC_TESTREG>" << std::endl ; out << " <SO_TESTREG>0</SO_TESTREG>" << std::endl ; out << " </DATA>" << std::endl ; /* out<< " <DATA> <OPT1_CAP>0</OPT1_CAP> <OPT2_CAP>0</OPT2_CAP> <OPT3_CAP>0</OPT3_CAP> <OPT1_INP>0</OPT1_INP> <OPT2_INP>0</OPT2_INP> <OPT3_INP>0</OPT3_INP> <OPT1_OUT>0</OPT1_OUT> <OPT2_OUT>0</OPT2_OUT> <OPT3_OUT>0</OPT3_OUT> <NORTH_CLKPHB>511</NORTH_CLKPHB> <NORTHCENTER_CLKPHB>511</NORTHCENTER_CLKPHB> <SOUTHCENTER_CLKPHB>511</SOUTHCENTER_CLKPHB> <SOUTH_CLKPHB>511</SOUTH_CLKPHB> <NORTH_CTRL>0</NORTH_CTRL> <NORTHCENTER_CTRL>0</NORTHCENTER_CTRL> <SOUTHCENTER_CTRL>0</SOUTHCENTER_CTRL> <SOUTH_CTRL>0</SOUTH_CTRL> <REG1_TTCRX_FDLA>5</REG1_TTCRX_FDLA> <REG2_TTCRX_CDLA>0</REG2_TTCRX_CDLA> <REG3_TTCRX_CLKD2>155</REG3_TTCRX_CLKD2> <CENTER_CTRL>0</CENTER_CTRL> <CENTER_MODE>0</CENTER_MODE> <B1_ADCGN>0</B1_ADCGN> <B2_ADCGN>0</B2_ADCGN> <B3_ADCGN>0</B3_ADCGN> <B4_ADCGN>0</B4_ADCGN> <NORTH_BADJ>330</NORTH_BADJ> <NORTHCENTER_BADJ>330</NORTHCENTER_BADJ> <SOUTHCENTER_BADJ>330</SOUTHCENTER_BADJ> <SOUTH_BADJ>330</SOUTH_BADJ> <NORTH_TBMMASK>2</NORTH_TBMMASK> <NORTHCENTER_TBMMASK>2</NORTHCENTER_TBMMASK> <SOUTHCENTER_TBMMASK>2</SOUTHCENTER_TBMMASK> <SOUTH_TBMMASK>2</SOUTH_TBMMASK> <NORTH_PWORD>177</NORTH_PWORD> <NORTHCENTER_PWORD>178</NORTHCENTER_PWORD> <SOUTHCENTER_PWORD>179</SOUTHCENTER_PWORD> <SOUTH_PWORD>180</SOUTH_PWORD> <SPECDAC>0</SPECDAC> <OOS_LVL>0</OOS_LVL> <ERR_LVL>0</ERR_LVL> <NORTH_FIFO1_BZ_LVL>900</NORTH_FIFO1_BZ_LVL> <NORTHCENTER_FIFO1_BZ_LVL>900</NORTHCENTER_FIFO1_BZ_LVL> <SOUTHCENTER_FIFO1_BZ_LVL>900</SOUTHCENTER_FIFO1_BZ_LVL> <SOUTH_FIFO1_BZ_LVL>900</SOUTH_FIFO1_BZ_LVL> <FIFO3_WRN_LVL>7680</FIFO3_WRN_LVL> </DATA> </DATA_SET> out << " </DATA_SET>" << std::endl ; out << "</ROOT>" << std::endl ; out.close() ; */ std::cout << __LINE__ << "]\t" << mthn << "Data written" << std::endl ; }
void PixelFEDCard::writeXML | ( | std::ofstream * | out | ) | const [virtual] |
Reimplemented from pos::PixelConfigBase.
Definition at line 1412 of file PixelFEDCard.cc.
References fedNumber.
{ std::string mthn = "[PixelFEDCard::writeXML()]\t\t\t " ; *out << " <DATA>" << std::endl ; *out << " " << std::endl ; *out << " <PXLFED_NAME>PxlFED_" << fedNumber<< "</PXLFED_NAME>" << std::endl ; *out << " <VME_ADDRESS>268435456</VME_ADDRESS>" << std::endl ; // *out << " <CRATE_NUMBER>1</CRATE_NUMBER>" << std::endl ; // *out << " <SLOT_NUMBER>5</SLOT_NUMBER> " << std::endl ; // *out << " <VME_ADDRESS>268435456</VME_ADDRESS>" << std::endl ; // *out << " <CRATE_LABEL>S1G03e</CRATE_LABEL>" << std::endl ; *out << "" << std::endl ; *out << " <CHANNEL_ID>1</CHANNEL_ID>" << std::endl ; *out << " <NUMBER_OF_ROCS>21</NUMBER_OF_ROCS>" << std::endl ; *out << " <CHANNEL_OFFSET_DAC_SETTINGS>0</CHANNEL_OFFSET_DAC_SETTINGS>" << std::endl ; *out << " <CHANNEL_DELAY_SETTINGS>3</CHANNEL_DELAY_SETTINGS>" << std::endl ; *out << " <CHANNEL_BLACK_HIGH>400</CHANNEL_BLACK_HIGH>" << std::endl ; *out << " <CHANNEL_BLACK_LOW>150</CHANNEL_BLACK_LOW>" << std::endl ; *out << " <CHANNEL_ULTRA_BLACK>120</CHANNEL_ULTRA_BLACK>" << std::endl ; *out << "" << std::endl ; *out << " <OPT1_CAP>0</OPT1_CAP>" << std::endl ; *out << " <OPT2_CAP>0</OPT2_CAP>" << std::endl ; *out << " <OPT3_CAP>0</OPT3_CAP>" << std::endl ; *out << " <OPT1_INP>0</OPT1_INP>" << std::endl ; *out << " <OPT2_INP>0</OPT2_INP>" << std::endl ; *out << " <OPT3_INP>0</OPT3_INP>" << std::endl ; *out << " <OPT1_OUT>0</OPT1_OUT>" << std::endl ; *out << " <OPT2_OUT>0</OPT2_OUT>" << std::endl ; *out << " <OPT3_OUT>0</OPT3_OUT>" << std::endl ; *out << " <NORTH_CLKPHB>511</NORTH_CLKPHB>" << std::endl ; *out << " <NORTHCENTER_CLKPHB>511</NORTHCENTER_CLKPHB>" << std::endl ; *out << " <SOUTHCENTER_CLKPHB>511</SOUTHCENTER_CLKPHB>" << std::endl ; *out << " <SOUTH_CLKPHB>511</SOUTH_CLKPHB>" << std::endl ; *out << " <NORTH_CTRL>0</NORTH_CTRL> " << std::endl ; *out << " <NORTHCENTER_CTRL>0</NORTHCENTER_CTRL>" << std::endl ; *out << " <SOUTHCENTER_CTRL>0</SOUTHCENTER_CTRL>" << std::endl ; *out << " <SOUTH_CTRL>0</SOUTH_CTRL>" << std::endl ; *out << " <REG1_TTCRX_FDLA>5</REG1_TTCRX_FDLA>" << std::endl ; *out << " <REG2_TTCRX_CDLA>0</REG2_TTCRX_CDLA>" << std::endl ; *out << " <REG3_TTCRX_CLKD2>155</REG3_TTCRX_CLKD2>" << std::endl ; *out << " <CENTER_CTRL>0</CENTER_CTRL>" << std::endl ; *out << " <CENTER_MODE>0</CENTER_MODE>" << std::endl ; *out << " <B1_ADCGN>0</B1_ADCGN>" << std::endl ; *out << " <B2_ADCGN>0</B2_ADCGN>" << std::endl ; *out << " <B3_ADCGN>0</B3_ADCGN>" << std::endl ; *out << " <B4_ADCGN>0</B4_ADCGN>" << std::endl ; *out << " <NORTH_BADJ>330</NORTH_BADJ>" << std::endl ; *out << " <NORTHCENTER_BADJ>330</NORTHCENTER_BADJ>" << std::endl ; *out << " <SOUTHCENTER_BADJ>330</SOUTHCENTER_BADJ>" << std::endl ; *out << " <SOUTH_BADJ>330</SOUTH_BADJ>" << std::endl ; *out << " <NORTH_TBMMASK>2</NORTH_TBMMASK>" << std::endl ; *out << " <NORTHCENTER_TBMMASK>2</NORTHCENTER_TBMMASK>" << std::endl ; *out << " <SOUTHCENTER_TBMMASK>2</SOUTHCENTER_TBMMASK>" << std::endl ; *out << " <SOUTH_TBMMASK>2</SOUTH_TBMMASK>" << std::endl ; *out << " <NORTH_PWORD>177</NORTH_PWORD>" << std::endl ; *out << " <NORTHCENTER_PWORD>178</NORTHCENTER_PWORD>" << std::endl ; *out << " <SOUTHCENTER_PWORD>179</SOUTHCENTER_PWORD>" << std::endl ; *out << " <SOUTH_PWORD>180</SOUTH_PWORD>" << std::endl ; *out << " <SPECDAC>0</SPECDAC>" << std::endl ; *out << " <OOS_LVL>0</OOS_LVL>" << std::endl ; *out << " <ERR_LVL>0</ERR_LVL>" << std::endl ; *out << " <NORTH_FIFO1_BZ_LVL>900</NORTH_FIFO1_BZ_LVL>" << std::endl ; *out << " <NORTHCENTER_FIFO1_BZ_LVL>900</NORTHCENTER_FIFO1_BZ_LVL>" << std::endl ; *out << " <SOUTHCENTER_FIFO1_BZ_LVL>900</SOUTHCENTER_FIFO1_BZ_LVL>" << std::endl ; *out << " <SOUTH_FIFO1_BZ_LVL>900</SOUTH_FIFO1_BZ_LVL>" << std::endl ; *out << " <FIFO3_WRN_LVL>7680</FIFO3_WRN_LVL> " << std::endl ; *out << " <FED_MASTER_DELAY>0</FED_MASTER_DELAY>" << std::endl ; *out << " <NO_HITLIMIT>0</NO_HITLIMIT>" << std::endl ; *out << " <NC_HITLIMIT>0</NC_HITLIMIT>" << std::endl ; *out << " <SC_HITLIMIT>0</SC_HITLIMIT>" << std::endl ; *out << " <SO_HITLIMIT>0</SO_HITLIMIT>" << std::endl ; *out << " <NO_TESTREG>0</NO_TESTREG>" << std::endl ; *out << " <NC_TESTREG>0</NC_TESTREG>" << std::endl ; *out << " <SC_TESTREG>0</SC_TESTREG>" << std::endl ; *out << " <SO_TESTREG>0</SO_TESTREG>" << std::endl ; *out << " " << std::endl ; *out << " </DATA>" << std::endl ; *out << " " << std::endl ; }
void PixelFEDCard::writeXML | ( | std::ofstream * | fedstream, |
std::ofstream * | rocstream, | ||
std::ofstream * | tbmstream | ||
) | const [virtual] |
Reimplemented from pos::PixelConfigBase.
Definition at line 1493 of file PixelFEDCard.cc.
References BlackHi, BlackLo, Ccntrl, ClkDes2, clkphs10_18, clkphs19_27, clkphs1_9, clkphs28_36, CoarseDel, DelayCh, Errlvl, FEDBASE_0, fedNumber, FedTTCDelay, fifo3Wrnlvl, FineDes1Del, FineDes2Del, i, j, modeRegister, N_hitlimit, N_Pword, N_TBMmask, N_testreg, Nadcg, Nbaseln, NC_hitlimit, NC_Pword, NC_TBMmask, NC_testreg, NCadcg, NCbaseln, NCcntrl, NCfifo1Bzlvl, Ncntrl, Nfifo1Bzlvl, offs_dac, Ooslvl, opt_cap, opt_inadj, opt_ouadj, ROC_L0, ROC_L1, ROC_L2, ROC_L3, ROC_L4, S_hitlimit, S_Pword, S_TBMmask, S_testreg, Sadcg, Sbaseln, SC_hitlimit, SC_Pword, SC_TBMmask, SC_testreg, SCadcg, SCbaseln, SCcntrl, SCfifo1Bzlvl, Scntrl, Sfifo1Bzlvl, SpecialDac, TBM_L0, TBM_L1, TBM_L2, TBM_L3, TBM_L4, TRL_L0, TRL_L1, TRL_L2, TRL_L3, TRL_L4, and Ublack.
{ std::string mthn = "[PixelFEDCard::writeXML()]\t\t\t " ; for(int i=0;i<36;i++) { *fedstream << " <DATA>" << std::endl ; *fedstream << " " << std::endl ; *fedstream << " <PIXEL_FED>" << fedNumber << "</PIXEL_FED>" << std::endl ; *fedstream << " <VME_ADDRS_HEX>0x" << hex << FEDBASE_0 << dec << "</VME_ADDRS_HEX>" << std::endl ; *fedstream << "" << std::endl ; *fedstream << " <CHANNEL_ID>" << i+1 << "</CHANNEL_ID>" << std::endl ; *fedstream << " <NUM_ROCS>" << NRocs[i] << "</NUM_ROCS>" << std::endl ; *fedstream << " <CHAN_OFFST_DAC>" << offs_dac[i] << "</CHAN_OFFST_DAC>" << std::endl ; *fedstream << " <CHAN_DELAY>" << DelayCh[i] << "</CHAN_DELAY>" << std::endl ; *fedstream << " <CHAN_BHIGH>" << BlackHi[i] << "</CHAN_BHIGH>" << std::endl ; *fedstream << " <CHAN_BLOW>" << BlackLo[i] << "</CHAN_BLOW>" << std::endl ; *fedstream << " <CHAN_UB>" << Ublack[i] << "</CHAN_UB>" << std::endl ; *fedstream << "" << std::endl ; *fedstream << " <OPT1_CAP>" << opt_cap[0] << "</OPT1_CAP>" << std::endl ; *fedstream << " <OPT2_CAP>" << opt_cap[1] << "</OPT2_CAP>" << std::endl ; *fedstream << " <OPT3_CAP>" << opt_cap[2] << "</OPT3_CAP>" << std::endl ; *fedstream << " <OPT1_INP>" << opt_inadj[0] << "</OPT1_INP>" << std::endl ; *fedstream << " <OPT2_INP>" << opt_inadj[1] << "</OPT2_INP>" << std::endl ; *fedstream << " <OPT3_INP>" << opt_inadj[2] << "</OPT3_INP>" << std::endl ; *fedstream << " <OPT1_OUT>" << opt_ouadj[0] << "</OPT1_OUT>" << std::endl ; *fedstream << " <OPT2_OUT>" << opt_ouadj[1] << "</OPT2_OUT>" << std::endl ; *fedstream << " <OPT3_OUT>" << opt_ouadj[2] << "</OPT3_OUT>" << std::endl ; *fedstream << " <NORTH_CLKPHB>" << clkphs1_9 << "</NORTH_CLKPHB>" << std::endl ; *fedstream << " <NORTHCENTER_CLKPHB>" << clkphs10_18 << "</NORTHCENTER_CLKPHB>" << std::endl ; *fedstream << " <SOUTHCENTER_CLKPHB>" << clkphs19_27 << "</SOUTHCENTER_CLKPHB>" << std::endl ; *fedstream << " <SOUTH_CLKPHB>" << clkphs28_36 << "</SOUTH_CLKPHB>" << std::endl ; *fedstream << " <NORTH_CTRL>" << Ncntrl << "</NORTH_CTRL> " << std::endl ; *fedstream << " <NORTHCENTER_CTRL>" << NCcntrl << "</NORTHCENTER_CTRL>" << std::endl ; *fedstream << " <SOUTHCENTER_CTRL>" << SCcntrl << "</SOUTHCENTER_CTRL>" << std::endl ; *fedstream << " <SOUTH_CTRL>" << Scntrl << "</SOUTH_CTRL>" << std::endl ; *fedstream << " <REG0_TTCRX_FDLA>" << FineDes1Del << "</REG0_TTCRX_FDLA>" << std::endl ; *fedstream << " <REG1_TTCRX_FDLA>" << FineDes2Del << "</REG1_TTCRX_FDLA>" << std::endl ; *fedstream << " <REG2_TTCRX_CDLA>" << CoarseDel << "</REG2_TTCRX_CDLA>" << std::endl ; *fedstream << " <REG3_TTCRX_CLKD2>" << ClkDes2 << "</REG3_TTCRX_CLKD2>" << std::endl ; *fedstream << " <CENTER_CTRL>" << Ccntrl << "</CENTER_CTRL>" << std::endl ; *fedstream << " <CENTER_MODE>" << modeRegister << "</CENTER_MODE>" << std::endl ; *fedstream << " <B1_ADCGN>" << Nadcg << "</B1_ADCGN>" << std::endl ; *fedstream << " <B2_ADCGN>" << NCadcg << "</B2_ADCGN>" << std::endl ; *fedstream << " <B3_ADCGN>" << SCadcg << "</B3_ADCGN>" << std::endl ; *fedstream << " <B4_ADCGN>" << Sadcg << "</B4_ADCGN>" << std::endl ; // std::cout << "PixelFEDCard::WriteXML()\tNbaseln:" << Nbaseln << std::endl ; // std::cout << "PixelFEDCard::WriteXML()\tNbaseln:" << std::hex << Nbaseln << std::dec << std::endl ; *fedstream << " <NORTH_BADJ>" << Nbaseln << "</NORTH_BADJ>" << std::endl ; *fedstream << " <NORTHCENTER_BADJ>" << NCbaseln << "</NORTHCENTER_BADJ>" << std::endl ; *fedstream << " <SOUTHCENTER_BADJ>" << SCbaseln << "</SOUTHCENTER_BADJ>" << std::endl ; *fedstream << " <SOUTH_BADJ>" << Sbaseln << "</SOUTH_BADJ>" << std::endl ; *fedstream << " <NORTH_TBMMASK>" << N_TBMmask << "</NORTH_TBMMASK>" << std::endl ; *fedstream << " <NORTHCENTER_TBMMASK>" << NC_TBMmask << "</NORTHCENTER_TBMMASK>" << std::endl ; *fedstream << " <SOUTHCENTER_TBMMASK>" << SC_TBMmask << "</SOUTHCENTER_TBMMASK>" << std::endl ; *fedstream << " <SOUTH_TBMMASK>" << S_TBMmask << "</SOUTH_TBMMASK>" << std::endl ; *fedstream << " <NORTH_PWORD>" << N_Pword << "</NORTH_PWORD>" << std::endl ; *fedstream << " <NORTHCENTER_PWORD>" << NC_Pword << "</NORTHCENTER_PWORD>" << std::endl ; *fedstream << " <SOUTHCENTER_PWORD>" << SC_Pword << "</SOUTHCENTER_PWORD>" << std::endl ; *fedstream << " <SOUTH_PWORD>" << S_Pword << "</SOUTH_PWORD>" << std::endl ; *fedstream << " <SPECDAC>" << SpecialDac << "</SPECDAC>" << std::endl ; *fedstream << " <OOS_LVL>" << Ooslvl << "</OOS_LVL>" << std::endl ; *fedstream << " <ERR_LVL>" << Errlvl << "</ERR_LVL>" << std::endl ; *fedstream << " <NORTH_FIFO1_BZ_LVL>" << Nfifo1Bzlvl << "</NORTH_FIFO1_BZ_LVL>" << std::endl ; *fedstream << " <NORTHCENTER_FIFO1_BZ_LVL>" << NCfifo1Bzlvl << "</NORTHCENTER_FIFO1_BZ_LVL>" << std::endl ; *fedstream << " <SOUTHCENTER_FIFO1_BZ_LVL>" << SCfifo1Bzlvl << "</SOUTHCENTER_FIFO1_BZ_LVL>" << std::endl ; *fedstream << " <SOUTH_FIFO1_BZ_LVL>" << Sfifo1Bzlvl << "</SOUTH_FIFO1_BZ_LVL>" << std::endl ; *fedstream << " <FIFO3_WRN_LVL>" << fifo3Wrnlvl << "</FIFO3_WRN_LVL>" << std::endl ; *fedstream << " <FED_MASTER_DELAY>" << FedTTCDelay << "</FED_MASTER_DELAY>" << std::endl ; *fedstream << " <NO_HITLIMIT>" << N_hitlimit << "</NO_HITLIMIT>" << std::endl ; *fedstream << " <NC_HITLIMIT>" << NC_hitlimit << "</NC_HITLIMIT>" << std::endl ; *fedstream << " <SC_HITLIMIT>" << SC_hitlimit << "</SC_HITLIMIT>" << std::endl ; *fedstream << " <SO_HITLIMIT>" << S_hitlimit << "</SO_HITLIMIT>" << std::endl ; *fedstream << " <NO_TESTREG>" << N_testreg << "</NO_TESTREG>" << std::endl ; *fedstream << " <NC_TESTREG>" << NC_testreg << "</NC_TESTREG>" << std::endl ; *fedstream << " <SC_TESTREG>" << SC_testreg << "</SC_TESTREG>" << std::endl ; *fedstream << " <SO_TESTREG>" << S_testreg << "</SO_TESTREG>" << std::endl ; *fedstream << " " << std::endl ; *fedstream << " </DATA>" << std::endl ; *fedstream << " " << std::endl ; } //ROC & TBM LEVELS for(int i=0;i<36;i++) { for(int j=0;j<NRocs[i];j++) { *rocstream << "" << std::endl ; *rocstream << " <DATA>" << std::endl ; *rocstream << " <PIXEL_FED>" << fedNumber << "</PIXEL_FED>" << std::endl ; *rocstream << " <FED_CHAN>" << i+1 << "</FED_CHAN>" << std::endl ; *rocstream << " <FED_ROC_NUM>" << j << "</FED_ROC_NUM>" << std::endl ; *rocstream << " <ROC_L0>" << ROC_L0[i][j] << "</ROC_L0>" << std::endl ; *rocstream << " <ROC_L1>" << ROC_L1[i][j] << "</ROC_L1>" << std::endl ; *rocstream << " <ROC_L2>" << ROC_L2[i][j] << "</ROC_L2>" << std::endl ; *rocstream << " <ROC_L3>" << ROC_L3[i][j] << "</ROC_L3>" << std::endl ; *rocstream << " <ROC_L4>" << ROC_L4[i][j] << "</ROC_L4>" << std::endl ; *rocstream << " </DATA>" << std::endl << std::endl ; *rocstream << " " << std::endl ; } *tbmstream << "" << std::endl ; *tbmstream << " <DATA>" << std::endl ; *tbmstream << " <PIXEL_FED>" << fedNumber << "</PIXEL_FED>" << std::endl ; *tbmstream << " <FED_CHAN>" << i+1 << "</FED_CHAN>" << std::endl ; *tbmstream << " <TBMA_HEAD_L0>" << TBM_L0[i] << "</TBMA_HEAD_L0>" << std::endl ; *tbmstream << " <TBMA_HEAD_L1>" << TBM_L1[i] << "</TBMA_HEAD_L1>" << std::endl ; *tbmstream << " <TBMA_HEAD_L2>" << TBM_L2[i] << "</TBMA_HEAD_L2>" << std::endl ; *tbmstream << " <TBMA_HEAD_L3>" << TBM_L3[i] << "</TBMA_HEAD_L3>" << std::endl ; *tbmstream << " <TBMA_HEAD_L4>" << TBM_L4[i] << "</TBMA_HEAD_L4>" << std::endl ; *tbmstream << " <TBMA_TRAIL_L0>" << TRL_L0[i] << "</TBMA_TRAIL_L0>" << std::endl ; *tbmstream << " <TBMA_TRAIL_L1>" << TRL_L1[i] << "</TBMA_TRAIL_L1>" << std::endl ; *tbmstream << " <TBMA_TRAIL_L2>" << TRL_L2[i] << "</TBMA_TRAIL_L2>" << std::endl ; *tbmstream << " <TBMA_TRAIL_L3>" << TRL_L3[i] << "</TBMA_TRAIL_L3>" << std::endl ; *tbmstream << " <TBMA_TRAIL_L4>" << TRL_L4[i] << "</TBMA_TRAIL_L4>" << std::endl ; *tbmstream << " </DATA>" << std::endl << std::endl ; *tbmstream << "" << std::endl ; } }
void PixelFEDCard::writeXMLHeader | ( | pos::PixelConfigKey | key, |
int | version, | ||
std::string | path, | ||
std::ofstream * | fedstream, | ||
std::ofstream * | roclvlstream, | ||
std::ofstream * | tbmlvlsteram | ||
) | const [virtual] |
Reimplemented from pos::PixelConfigBase.
Definition at line 1255 of file PixelFEDCard.cc.
References gather_cfg::cout, pos::PixelConfigBase::getAuthor(), pos::PixelConfigBase::getComment(), pos::PixelTimeFormatter::getmSecTime(), and edm::service::getTime().
{ std::string mthn = "[PixelFEDCard::writeXMLHeader()]\t\t\t " ; std::stringstream fedfullPath ; std::stringstream rocfullPath ; std::stringstream tbmfullPath ; // modified by MR on 05-08-2008 16:50:28 // FED MAIN XML FILE fedfullPath << path << "/FedConfiguration_Template_" << PixelTimeFormatter::getmSecTime() << ".xml" ; std::cout << __LINE__ << "]\t" << mthn << "Writing to: " << fedfullPath.str() << "" << std::endl ; fedstream->open(fedfullPath.str().c_str()) ; *fedstream << "<?xml version='1.0' encoding='UTF-8' standalone='yes'?>" << std::endl ; *fedstream << "<ROOT xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>" << std::endl ; *fedstream << "" << std::endl ; *fedstream << " <HEADER>" << std::endl ; *fedstream << " <HINTS mode='load-as-group' /> " << std::endl ; *fedstream << " <TYPE>" << std::endl ; *fedstream << " <EXTENSION_TABLE_NAME>FED_CONFIGURATION</EXTENSION_TABLE_NAME>" << std::endl ; *fedstream << " <NAME>Pixel FED Configuration</NAME>" << std::endl ; *fedstream << " </TYPE>" << std::endl ; *fedstream << " <RUN>" << std::endl ; *fedstream << " <RUN_TYPE>Pixel FED Configuration</RUN_TYPE>" << std::endl ; *fedstream << " <RUN_NUMBER>1</RUN_NUMBER>" << std::endl ; *fedstream << " <RUN_BEGIN_TIMESTAMP>" << PixelTimeFormatter::getTime() << "</RUN_BEGIN_TIMESTAMP>" << std::endl ; *fedstream << " <LOCATION>CERN P5</LOCATION>" << std::endl ; *fedstream << " </RUN>" << std::endl ; *fedstream << " </HEADER>" << std::endl ; *fedstream << "" << std::endl ; *fedstream << " <DATA_SET>" << std::endl ; *fedstream << "" << std::endl ; *fedstream << " <VERSION>" << version << "</VERSION>" << std::endl ; *fedstream << " <COMMENT_DESCRIPTION>" << getComment() << "</COMMENT_DESCRIPTION>" << std::endl ; *fedstream << " <CREATED_BY_USER>" << getAuthor() << "</CREATED_BY_USER>" << std::endl ; *fedstream << "" << std::endl ; *fedstream << " <PART>" << std::endl ; *fedstream << " <NAME_LABEL>CMS-PIXEL-ROOT</NAME_LABEL>" << std::endl ; *fedstream << " <KIND_OF_PART>Detector ROOT</KIND_OF_PART>" << std::endl ; *fedstream << " </PART>" << std::endl ; // ROC LEVELS MAIN XML FILE rocfullPath << path << "/Pixel_RocAnalogLevels_" << PixelTimeFormatter::getmSecTime() << ".xml" ; std::cout << __LINE__ << "]\t" << mthn << "Writing to: " << rocfullPath.str() << "" << std::endl ; rocstream->open(rocfullPath.str().c_str()) ; *rocstream << "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>" << std::endl ; *rocstream << "<ROOT xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">" << std::endl ; *rocstream << "" << std::endl ; *rocstream << " <HEADER>" << std::endl ; *rocstream << " <HINTS mode='only-det-root,load-as-group'/>" << std::endl ; *rocstream << " <TYPE>" << std::endl ; *rocstream << " <EXTENSION_TABLE_NAME>ROC_ANALOG_LEVELS</EXTENSION_TABLE_NAME>" << std::endl ; *rocstream << " <NAME>ROC Analog Levels</NAME>" << std::endl ; *rocstream << " </TYPE>" << std::endl ; *rocstream << " <RUN>" << std::endl ; *rocstream << " <RUN_TYPE>ROC Analog Levels</RUN_TYPE>" << std::endl ; *rocstream << " <RUN_NUMBER>1</RUN_NUMBER> " << std::endl ; *rocstream << " <RUN_BEGIN_TIMESTAMP>" << PixelTimeFormatter::getTime() << "</RUN_BEGIN_TIMESTAMP>" << std::endl ; *rocstream << " <CREATED_BY_USER>Umesh Joshi</CREATED_BY_USER> " << std::endl ; *rocstream << " <LOCATION>CERN</LOCATION> " << std::endl ; *rocstream << " <COMMENT_DESCRIPTION>ROC Analog Levels Template</COMMENT_DESCRIPTION>" << std::endl ; *rocstream << " </RUN>" << std::endl ; *rocstream << " </HEADER>" << std::endl ; *rocstream << "" << std::endl ; *rocstream << " <DATA_SET>" << std::endl ; *rocstream << " <COMMENT_DESCRIPTION>ROC Analog Levels Template</COMMENT_DESCRIPTION>" << std::endl ; *rocstream << " <VERSION>" << version << "</VERSION>" << std::endl ; *rocstream << " " << std::endl ; *rocstream << " <PART>" << std::endl ; *rocstream << " <SERIAL_NUMBER>CMS-PIXEL-ROOT</SERIAL_NUMBER>" << std::endl ; *rocstream << " <KIND_OF_PART>Detector ROOT</KIND_OF_PART>" << std::endl ; *rocstream << " </PART>" << std::endl ; // TBM LEVELS MAIN XML FILE tbmfullPath << path << "/Pixel_TbmAnalogLevels_" << PixelTimeFormatter::getmSecTime() << ".xml" ; std::cout << __LINE__ << "]\t" << mthn << "Writing to: " << tbmfullPath.str() << "" << std::endl ; tbmstream->open(tbmfullPath.str().c_str()) ; *tbmstream << "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>" << std::endl ; *tbmstream << "<ROOT xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">" << std::endl ; *tbmstream << "" << std::endl ; *tbmstream << " <HEADER>" << std::endl ; *tbmstream << " <HINTS mode='only-det-root,load-as-group' />" << std::endl ; *tbmstream << " <TYPE>" << std::endl ; *tbmstream << " <EXTENSION_TABLE_NAME>TBM_ANALOG_LEVELS</EXTENSION_TABLE_NAME>" << std::endl ; *tbmstream << " <NAME>TBM Analog Levels</NAME>" << std::endl ; *tbmstream << " </TYPE>" << std::endl ; *tbmstream << " <RUN>" << std::endl ; *tbmstream << " <RUN_TYPE>TBM Analog Levels</RUN_TYPE>" << std::endl ; *tbmstream << " <RUN_NUMBER>1</RUN_NUMBER>" << std::endl ; *tbmstream << " <RUN_BEGIN_TIMESTAMP>" << PixelTimeFormatter::getTime() << "</RUN_BEGIN_TIMESTAMP>" << std::endl ; *tbmstream << " <CREATED_BY_USER>Umesh Joshi</CREATED_BY_USER> " << std::endl ; *tbmstream << " <LOCATION>CERN</LOCATION> " << std::endl ; *tbmstream << " <COMMENT_DESCRIPTION>TBM Analog Levels</COMMENT_DESCRIPTION>" << std::endl ; *tbmstream << " </RUN>" << std::endl ; *tbmstream << " </HEADER>" << std::endl ; *tbmstream << "" << std::endl ; *tbmstream << " <DATA_SET>" << std::endl ; *tbmstream << " <VERSION>" << version << "</VERSION>" << std::endl ; *tbmstream << " " << std::endl ; *tbmstream << " <PART>" << std::endl ; *tbmstream << " <SERIAL_NUMBER>CMS-PIXEL-ROOT</SERIAL_NUMBER>" << std::endl ; *tbmstream << " <KIND_OF_PART>Detector ROOT</KIND_OF_PART>" << std::endl ; *tbmstream << " </PART>" << std::endl ; }
void PixelFEDCard::writeXMLHeader | ( | pos::PixelConfigKey | key, |
int | version, | ||
std::string | path, | ||
std::ofstream * | out | ||
) | const [virtual] |
Reimplemented from pos::PixelConfigBase.
Definition at line 1374 of file PixelFEDCard.cc.
References gather_cfg::cout, pos::PixelTimeFormatter::getmSecTime(), and edm::service::getTime().
{ std::string mthn = "[PixelFEDCard::writeXMLHeader()]\t\t\t " ; std::stringstream fullPath ; fullPath << path << "/fedcard_" << PixelTimeFormatter::getmSecTime() << ".xml" ; std::cout << __LINE__ << "]\t" << mthn << "Writing to: " << fullPath.str() << "" << std::endl ; out->open(fullPath.str().c_str()) ; *out << "<?xml version='1.0' encoding='UTF-8' standalone='yes'?>" << std::endl ; *out << "<ROOT>" << std::endl ; *out << "" << std::endl ; *out << " <HEADER>" << std::endl ; *out << " <TYPE>" << std::endl ; *out << " <EXTENSION_TABLE_NAME>FED_CONFIGURATION</EXTENSION_TABLE_NAME>" << std::endl ; *out << " <NAME>Pixel FED Configuration</NAME>" << std::endl ; *out << " </TYPE>" << std::endl ; *out << " <RUN>" << std::endl ; *out << " <RUN_TYPE>Pixel FED Configuration</RUN_TYPE>" << std::endl ; *out << " <RUN_NUMBER>1</RUN_NUMBER>" << std::endl ; *out << " <RUN_BEGIN_TIMESTAMP>" << PixelTimeFormatter::getTime() << "</RUN_BEGIN_TIMESTAMP>" << std::endl ; *out << " <COMMENT_DESCRIPTION>Pixel FED Configuration</COMMENT_DESCRIPTION>" << std::endl ; *out << " <LOCATION>CERN TAC</LOCATION>" << std::endl ; *out << " <CREATED_BY_USER>Dario Menasce</CREATED_BY_USER>" << std::endl ; *out << " </RUN>" << std::endl ; *out << " </HEADER>" << std::endl ; *out << "" << std::endl ; *out << " <DATA_SET>" << std::endl ; *out << "" << std::endl ; *out << " <VERSION>" << version << "</VERSION>" << std::endl ; *out << " <COMMENT_DESCRIPTION>Pixel FED Configuration</COMMENT_DESCRIPTION>" << std::endl ; *out << "" << std::endl ; *out << " <PART>" << std::endl ; *out << " <NAME_LABEL>CMS-PIXEL-ROOT</NAME_LABEL>" << std::endl ; *out << " <KIND_OF_PART>Detector ROOT</KIND_OF_PART>" << std::endl ; *out << " </PART>" << std::endl ; }
void PixelFEDCard::writeXMLTrailer | ( | std::ofstream * | out | ) | const [virtual] |
Reimplemented from pos::PixelConfigBase.
Definition at line 1646 of file PixelFEDCard.cc.
References gather_cfg::cout.
void PixelFEDCard::writeXMLTrailer | ( | std::ofstream * | fedstream, |
std::ofstream * | recostream, | ||
std::ofstream * | tbmstream | ||
) | const [virtual] |
Reimplemented from pos::PixelConfigBase.
Definition at line 1617 of file PixelFEDCard.cc.
References gather_cfg::cout.
{ std::string mthn = "[PixelFEDCard::writeXMLTrailer()]\t\t\t " ; // Main FED *fedstream << " </DATA_SET>" << std::endl ; *fedstream << "</ROOT>" << std::endl ; fedstream->close() ; std::cout << __LINE__ << "]\t" << mthn << "Data written for main fed" << std::endl ; // ROC LVLS *rocstream << " </DATA_SET>" << std::endl ; *rocstream << "</ROOT>" << std::endl ; rocstream->close() ; std::cout << __LINE__ << "]\t" << mthn << "Data written for roc analog levels" << std::endl ; // TBM LVLS *tbmstream << " </DATA_SET>" << std::endl ; *tbmstream << "</ROOT>" << std::endl ; tbmstream->close() ; std::cout << __LINE__ << "]\t" << mthn << "Data written for tbm analog levels" << std::endl ; }
int pos::PixelFEDCard::BlackHi[36] |
Definition at line 85 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
int pos::PixelFEDCard::BlackLo[36] |
Definition at line 86 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::Ccntrl |
Definition at line 117 of file PixelFEDCard.h.
Referenced by clear(), restoreControlAndModeRegister(), writeASCII(), and writeXML().
Definition at line 151 of file PixelFEDCard.h.
Referenced by restoreControlAndModeRegister().
unsigned int pos::PixelFEDCard::ClkDes2 |
Definition at line 114 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::clkphs10_18 |
Definition at line 79 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::clkphs19_27 |
Definition at line 79 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::clkphs1_9 |
Definition at line 79 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::clkphs28_36 |
Definition at line 79 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
Definition at line 113 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
int pos::PixelFEDCard::DelayCh[36] |
Definition at line 82 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
Definition at line 132 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned long pos::PixelFEDCard::FEDBASE_0 |
Definition at line 155 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned long pos::PixelFEDCard::fedNumber |
Definition at line 155 of file PixelFEDCard.h.
Referenced by pos::PixelConfigurationVerifier::checkChannelEnable(), clear(), writeASCII(), and writeXML().
Definition at line 138 of file PixelFEDCard.h.
Referenced by writeASCII(), and writeXML().
Definition at line 135 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
Definition at line 113 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
Definition at line 113 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
Definition at line 120 of file PixelFEDCard.h.
Referenced by clear(), restoreControlAndModeRegister(), writeASCII(), and writeXML().
Definition at line 152 of file PixelFEDCard.h.
Referenced by restoreControlAndModeRegister().
Definition at line 141 of file PixelFEDCard.h.
Referenced by writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::N_Pword |
Definition at line 107 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::N_TBMmask |
Definition at line 104 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
Definition at line 144 of file PixelFEDCard.h.
Referenced by writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::Nadcg |
Definition at line 126 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::Nbaseln |
Definition at line 129 of file PixelFEDCard.h.
Referenced by clear(), restoreBaselinAndChannelMasks(), writeASCII(), and writeXML().
Definition at line 148 of file PixelFEDCard.h.
Referenced by restoreBaselinAndChannelMasks().
Definition at line 141 of file PixelFEDCard.h.
Referenced by writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::NC_Pword |
Definition at line 107 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::NC_TBMmask |
Definition at line 104 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
Definition at line 144 of file PixelFEDCard.h.
Referenced by writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::NCadcg |
Definition at line 126 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::NCbaseln |
Definition at line 129 of file PixelFEDCard.h.
Referenced by clear(), restoreBaselinAndChannelMasks(), writeASCII(), and writeXML().
Definition at line 148 of file PixelFEDCard.h.
Referenced by restoreBaselinAndChannelMasks().
unsigned int pos::PixelFEDCard::NCcntrl |
Definition at line 97 of file PixelFEDCard.h.
Referenced by clear(), enabledChannels(), restoreBaselinAndChannelMasks(), setChannel(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::NCcntrl_original |
Definition at line 101 of file PixelFEDCard.h.
Referenced by restoreBaselinAndChannelMasks().
Definition at line 135 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::Ncntrl |
Definition at line 97 of file PixelFEDCard.h.
Referenced by clear(), enabledChannels(), restoreBaselinAndChannelMasks(), setChannel(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::Ncntrl_original |
Definition at line 101 of file PixelFEDCard.h.
Referenced by restoreBaselinAndChannelMasks().
Definition at line 135 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
int pos::PixelFEDCard::NRocs[36] |
Definition at line 123 of file PixelFEDCard.h.
Referenced by pos::PixelConfigurationVerifier::checkChannelEnable().
int pos::PixelFEDCard::offs_dac[36] |
Definition at line 76 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
Definition at line 132 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
int pos::PixelFEDCard::opt_cap[3] |
Definition at line 71 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
int pos::PixelFEDCard::opt_inadj[3] |
Definition at line 72 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
int pos::PixelFEDCard::opt_ouadj[3] |
Definition at line 73 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
int pos::PixelFEDCard::ROC_L0[36][26] |
Definition at line 93 of file PixelFEDCard.h.
Referenced by clear(), readDBROCLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::ROC_L1[36][26] |
Definition at line 93 of file PixelFEDCard.h.
Referenced by clear(), readDBROCLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::ROC_L2[36][26] |
Definition at line 93 of file PixelFEDCard.h.
Referenced by clear(), readDBROCLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::ROC_L3[36][26] |
Definition at line 93 of file PixelFEDCard.h.
Referenced by clear(), readDBROCLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::ROC_L4[36][26] |
Definition at line 93 of file PixelFEDCard.h.
Referenced by clear(), readDBROCLevels(), writeASCII(), and writeXML().
Definition at line 141 of file PixelFEDCard.h.
Referenced by writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::S_Pword |
Definition at line 107 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::S_TBMmask |
Definition at line 104 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
Definition at line 144 of file PixelFEDCard.h.
Referenced by writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::Sadcg |
Definition at line 126 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::Sbaseln |
Definition at line 129 of file PixelFEDCard.h.
Referenced by clear(), restoreBaselinAndChannelMasks(), writeASCII(), and writeXML().
Definition at line 148 of file PixelFEDCard.h.
Referenced by restoreBaselinAndChannelMasks().
Definition at line 141 of file PixelFEDCard.h.
Referenced by writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::SC_Pword |
Definition at line 107 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::SC_TBMmask |
Definition at line 104 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
Definition at line 144 of file PixelFEDCard.h.
Referenced by writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::SCadcg |
Definition at line 126 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::SCbaseln |
Definition at line 129 of file PixelFEDCard.h.
Referenced by clear(), restoreBaselinAndChannelMasks(), writeASCII(), and writeXML().
Definition at line 148 of file PixelFEDCard.h.
Referenced by restoreBaselinAndChannelMasks().
unsigned int pos::PixelFEDCard::SCcntrl |
Definition at line 97 of file PixelFEDCard.h.
Referenced by clear(), enabledChannels(), restoreBaselinAndChannelMasks(), setChannel(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::SCcntrl_original |
Definition at line 101 of file PixelFEDCard.h.
Referenced by restoreBaselinAndChannelMasks().
Definition at line 135 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::Scntrl |
Definition at line 97 of file PixelFEDCard.h.
Referenced by clear(), enabledChannels(), restoreBaselinAndChannelMasks(), setChannel(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::Scntrl_original |
Definition at line 101 of file PixelFEDCard.h.
Referenced by restoreBaselinAndChannelMasks().
Definition at line 135 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
unsigned int pos::PixelFEDCard::SpecialDac |
Definition at line 110 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().
int pos::PixelFEDCard::TBM_L0[36] |
Definition at line 90 of file PixelFEDCard.h.
Referenced by clear(), readDBTBMLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::TBM_L1[36] |
Definition at line 90 of file PixelFEDCard.h.
Referenced by clear(), readDBTBMLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::TBM_L2[36] |
Definition at line 90 of file PixelFEDCard.h.
Referenced by clear(), readDBTBMLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::TBM_L3[36] |
Definition at line 90 of file PixelFEDCard.h.
Referenced by clear(), readDBTBMLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::TBM_L4[36] |
Definition at line 90 of file PixelFEDCard.h.
Referenced by clear(), readDBTBMLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::TRL_L0[36] |
Definition at line 91 of file PixelFEDCard.h.
Referenced by clear(), readDBTBMLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::TRL_L1[36] |
Definition at line 91 of file PixelFEDCard.h.
Referenced by clear(), readDBTBMLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::TRL_L2[36] |
Definition at line 91 of file PixelFEDCard.h.
Referenced by clear(), readDBTBMLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::TRL_L3[36] |
Definition at line 91 of file PixelFEDCard.h.
Referenced by clear(), readDBTBMLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::TRL_L4[36] |
Definition at line 91 of file PixelFEDCard.h.
Referenced by clear(), readDBTBMLevels(), writeASCII(), and writeXML().
int pos::PixelFEDCard::Ublack[36] |
Definition at line 87 of file PixelFEDCard.h.
Referenced by clear(), writeASCII(), and writeXML().