22 dacs.push_back(Vana_);
24 dacs.push_back(Vcomp_);
25 dacs.push_back(Vleak_);
26 dacs.push_back(VrgPr_);
27 dacs.push_back(VwllPr_);
28 dacs.push_back(VrgSh_);
29 dacs.push_back(VwllSh_);
30 dacs.push_back(VHldDel_);
31 dacs.push_back(Vtrim_);
32 dacs.push_back(VcThr_);
33 dacs.push_back(VIbias_bus_);
34 dacs.push_back(VIbias_sf_);
35 dacs.push_back(VOffsetOp_);
36 dacs.push_back(VbiasOp_);
37 dacs.push_back(VOffsetRO_);
38 dacs.push_back(VIon_);
39 dacs.push_back(VIbias_PH_);
40 dacs.push_back(VIbias_DAC_);
41 dacs.push_back(VIbias_roc_);
42 dacs.push_back(VIColOr_);
43 dacs.push_back(Vnpix_);
44 dacs.push_back(VsumCol_);
45 dacs.push_back(Vcal_);
46 dacs.push_back(CalDel_);
47 dacs.push_back(TempRange_);
49 dacs.push_back(ChipContReg_);
121 std::map<std::string, bool>& changes,
122 std::map<std::string, unsigned int>&
previous) {
272 std::string mthn =
"[PixelROCDACSettings::setDAC()]\t\t\t\t ";
273 switch (dacaddress) {
311 VIbias_bus_ = dacvalue;
314 VIbias_sf_ = dacvalue;
317 VOffsetOp_ = dacvalue;
323 VOffsetRO_ = dacvalue;
329 VIbias_PH_ = dacvalue;
332 VIbias_DAC_ = dacvalue;
335 VIbias_roc_ = dacvalue;
353 TempRange_ = dacvalue;
359 ChipContReg_ = dacvalue;
362 cout << __LINE__ <<
"]\t" << mthn <<
"DAC Address " << dacaddress <<
" does not exist!" << endl;
367 out << (char)rocid_.rocname().size();
368 out.write(rocid_.rocname().c_str(), rocid_.rocname().size());
404 in.read((
char*)&Vdd_, 1);
405 in.read((
char*)&Vana_, 1);
406 in.read((
char*)&Vsf_, 1);
407 in.read((
char*)&Vcomp_, 1);
408 in.read((
char*)&Vleak_, 1);
409 in.read((
char*)&VrgPr_, 1);
410 in.read((
char*)&VwllPr_, 1);
411 in.read((
char*)&VrgSh_, 1);
412 in.read((
char*)&VwllSh_, 1);
413 in.read((
char*)&VHldDel_, 1);
414 in.read((
char*)&Vtrim_, 1);
415 in.read((
char*)&VcThr_, 1);
416 in.read((
char*)&VIbias_bus_, 1);
417 in.read((
char*)&VIbias_sf_, 1);
418 in.read((
char*)&VOffsetOp_, 1);
419 in.read((
char*)&VbiasOp_, 1);
420 in.read((
char*)&VOffsetRO_, 1);
421 in.read((
char*)&VIon_, 1);
422 in.read((
char*)&VIbias_PH_, 1);
423 in.read((
char*)&VIbias_DAC_, 1);
424 in.read((
char*)&VIbias_roc_, 1);
425 in.read((
char*)&VIColOr_, 1);
426 in.read((
char*)&Vnpix_, 1);
427 in.read((
char*)&VsumCol_, 1);
428 in.read((
char*)&Vcal_, 1);
429 in.read((
char*)&CalDel_, 1);
430 in.read((
char*)&TempRange_, 1);
431 in.read((
char*)&WBC_, 1);
432 in.read((
char*)&ChipContReg_, 1);
438 out <<
"ROC: " << rocid_.rocname() << endl;
473 std::string mthn =
"[PixelROCDACSettings::writeXML()]\t\t\t ";
475 *out <<
" <DATA>" << endl;
476 *out <<
" <ROC_NAME>" << rocid_.rocname() <<
"</ROC_NAME>" << endl;
477 *out <<
" <VDD>" << (int)Vdd_ <<
"</VDD>" << endl;
478 *out <<
" <VANA>" << (int)Vana_ <<
"</VANA>" << endl;
479 *out <<
" <VSF>" << (int)Vsf_ <<
"</VSF>" << endl;
480 *out <<
" <VCOMP>" << (int)Vcomp_ <<
"</VCOMP>" << endl;
481 *out <<
" <VLEAK>" << (int)Vleak_ <<
"</VLEAK>" << endl;
482 *out <<
" <VRGPR>" << (int)VrgPr_ <<
"</VRGPR>" << endl;
483 *out <<
" <VWLLPR>" << (int)VwllPr_ <<
"</VWLLPR>" << endl;
484 *out <<
" <VRGSH>" << (int)VrgSh_ <<
"</VRGSH>" << endl;
485 *out <<
" <VWLLSH>" << (int)VwllSh_ <<
"</VWLLSH>" << endl;
486 *out <<
" <VHLDDEL>" << (int)VHldDel_ <<
"</VHLDDEL>" << endl;
487 *out <<
" <VTRIM>" << (int)Vtrim_ <<
"</VTRIM>" << endl;
488 *out <<
" <VCTHR>" << (int)VcThr_ <<
"</VCTHR>" << endl;
489 *out <<
" <VIBIAS_BUS>" << (int)VIbias_bus_ <<
"</VIBIAS_BUS>" << endl;
490 *out <<
" <VIBIAS_SF>" << (int)VIbias_sf_ <<
"</VIBIAS_SF>" << endl;
491 *out <<
" <VOFFSETOP>" << (int)VOffsetOp_ <<
"</VOFFSETOP>" << endl;
492 *out <<
" <VBIASOP>" << (int)VbiasOp_ <<
"</VBIASOP>" << endl;
493 *out <<
" <VOFFSETRO>" << (int)VOffsetRO_ <<
"</VOFFSETRO>" << endl;
494 *out <<
" <VION>" << (int)VIon_ <<
"</VION>" << endl;
495 *out <<
" <VIBIAS_PH>" << (int)VIbias_PH_ <<
"</VIBIAS_PH>" << endl;
496 *out <<
" <VIBIAS_DAC>" << (int)VIbias_DAC_ <<
"</VIBIAS_DAC>" << endl;
497 *out <<
" <VIBIAS_ROC>" << (int)VIbias_roc_ <<
"</VIBIAS_ROC>" << endl;
498 *out <<
" <VICOLOR>" << (int)VIColOr_ <<
"</VICOLOR>" << endl;
499 *out <<
" <VNPIX>" << (int)Vnpix_ <<
"</VNPIX>" << endl;
500 *out <<
" <VSUMCOL>" << (int)VsumCol_ <<
"</VSUMCOL>" << endl;
501 *out <<
" <VCAL>" << (int)Vcal_ <<
"</VCAL>" << endl;
502 *out <<
" <CALDEL>" << (int)CalDel_ <<
"</CALDEL>" << endl;
503 *out <<
" <TEMPRANGE>" << (int)TempRange_ <<
"</TEMPRANGE>" << endl;
504 *out <<
" <WBC>" << (int)WBC_ <<
"</WBC>" << endl;
505 *out <<
" <CHIPCONTREG>" << (int)ChipContReg_ <<
"</CHIPCONTREG>" << endl;
506 *out <<
" </DATA>" << endl;
512 std::string mthn =
"[PixelROCDACSettings::checkTag()]\t\t\t\t ";
514 if (tag != dacName) {
515 cout << __LINE__ <<
"]\t" << mthn <<
"Read ROC name : " << tag << endl;
516 cout << __LINE__ <<
"]\t" << mthn <<
"But expected to find: " << dacName << endl;
517 cout << __LINE__ <<
"]\t" << mthn <<
"When reading DAC settings for ROC " << rocid << endl;
523 std::string mthn =
"[PixelROCDACSettings::read()]\t\t\t\t ";
637 static bool first =
true;
639 cout << __LINE__ <<
"]\t" << mthn <<
"**********************************************" << endl;
640 cout << __LINE__ <<
"]\t" << mthn <<
"Did not find TempRange setting in DAC settings" << endl;
641 cout << __LINE__ <<
"]\t" << mthn <<
"Will use a default value of 4." << endl;
642 cout << __LINE__ <<
"]\t" << mthn <<
"This message will only be printed out once" << endl;
643 cout << __LINE__ <<
"]\t" << mthn <<
"**********************************************" << endl;
667 std::string mthn =
"[PixelROCDACSettings::read()]\t\t\t\t ";
779 static bool first =
true;
781 cout << __LINE__ <<
"]\t" << mthn <<
"**********************************************" << endl;
782 cout << __LINE__ <<
"]\t" << mthn <<
"Did not find TempRange setting in DAC settings" << endl;
783 cout << __LINE__ <<
"]\t" << mthn <<
"Will use a default value of 4." << endl;
784 cout << __LINE__ <<
"]\t" << mthn <<
"This message will only be printed out once" << endl;
785 cout << __LINE__ <<
"]\t" << mthn <<
"**********************************************" << endl;
875 VIbias_bus_ = dacValue;
877 VIbias_sf_ = dacValue;
879 VOffsetOp_ = dacValue;
883 VOffsetRO_ = dacValue;
887 VIbias_PH_ = dacValue;
889 VIbias_DAC_ = dacValue;
891 VIbias_roc_ = dacValue;
904 TempRange_ = dacValue;
908 ChipContReg_ = dacValue;
910 cout <<
"ERROR in PixelROCDACSettings::setDac: DAC name " << dacName <<
" does not exist." << endl;
975 cout <<
"ERROR in PixelROCDACSettings::getDac: DAC name " << dacName <<
" does not exist." << endl;
982 for (
unsigned int i = 0;
i <
generic.length();
i++) {
983 result.append(1, (
char)tolower(
generic[
i]));
const std::string k_DACName_VcThr
const std::string k_DACName_VrgPr
unsigned int getDac(std::string dacName) const
const std::string k_DACName_ChipContReg
const std::string k_DACName_Vsf
const std::string k_DACName_CalDel
const std::string k_DACName_TempRange
const std::string k_DACName_VIbias_sf
const std::string k_DACName_Vtrim
const std::string k_DACName_VIbias_DAC
const std::string k_DACName_VwllSh
const std::string k_DACName_Vnpix
const std::string k_DACName_Vleak
const std::string k_DACName_VIbias_PH
const std::string k_DACName_VOffsetRO
std::string getConfigCommand()
const std::string k_DACName_VIbias_bus
std::ostream & operator<<(std::ostream &s, const PixelCalibConfiguration &calib)
void getDACs(std::vector< unsigned int > &dacs) const
int read(std::ifstream &in, const PixelROCName &rocid)
const std::string k_DACName_VIColOr
void setDAC(unsigned int dacaddress, unsigned int dacvalue)
This class provide the data structure for the ROC DAC parameters.
const std::string k_DACName_VOffsetOp
void writeXML(pos::PixelConfigKey key, int version, std::string path) const
void setDACs(std::map< std::string, unsigned int > &dacs)
std::string ToLower(std::string)
const std::string k_DACName_VbiasOp
const std::string k_DACName_VIbias_roc
const std::string k_DACName_Vcal
const std::string k_DACName_VrgSh
const std::string k_DACName_VIon
const std::string k_DACName_Vcomp
void checkTag(std::string tag, std::string dacName, const PixelROCName &rocid)
const std::string k_DACName_WBC
const std::string k_DACName_Vdd
const std::string k_DACName_VHldDel
void compareDACs(std::map< std::string, unsigned int > &dacs, std::map< std::string, bool > &changes, std::map< std::string, unsigned int > &previous)
void setDac(std::string dacName, int value)
const std::string k_DACName_VsumCol
void writeBinary(std::ofstream &out) const
int readBinary(std::ifstream &in, const PixelROCName &rocid)
A dummy class with ALL public variables.
const std::string k_DACName_Vana
const std::string k_DACName_VwllPr
void writeASCII(std::ostream &out) const