00001 #include "DaqRunInfoSvc/DaqCalibRunInfo.h" 00002 #include "DatabaseInterface/DbiLog.h" 00003 #include "DatabaseInterface/DbiOutRowStream.h" 00004 #include "DatabaseInterface/DbiResultSet.h" 00005 #include "DatabaseInterface/DbiValidityRec.h" 00006 00007 #include "DatabaseInterface/DbiResultPtr.tpl" 00008 template class DbiResultPtr<DaqCalibRunInfo>; 00009 00010 #include "DatabaseInterface/DbiWriter.tpl" 00011 template class DbiWriter<DaqCalibRunInfo>; 00012 00013 void DaqCalibRunInfo::Fill(DbiResultSet& rs, 00014 const DbiValidityRec* /* vrec */) { 00015 00016 Int_t numCol = rs.NumCols(); 00017 // The first column (SeqNo) has already been processed. 00018 for (Int_t curCol = 2; curCol <= numCol; ++curCol) { 00019 string colName = rs.CurColName(); 00020 if ( colName == "RUNNO" ) rs >> m_RunNo; 00021 else if ( colName == "DETECTORID" ) rs >> m_DetectorId; 00022 else if ( colName == "ADNO" ) rs >> m_AdNo; 00023 else if ( colName == "SOURCEIDA" ) rs >> m_SourceIdA; 00024 else if ( colName == "ZPOSITIONA" ) rs >> m_ZPositionA; 00025 else if ( colName == "SOURCEIDB" ) rs >> m_SourceIdB; 00026 else if ( colName == "ZPOSITIONB" ) rs >> m_ZPositionB; 00027 else if ( colName == "SOURCEIDC" ) rs >> m_SourceIdC; 00028 else if ( colName == "ZPOSITIONC" ) rs >> m_ZPositionC; 00029 else if ( colName == "DURATION" ) rs >> m_Duration; 00030 else if ( colName == "LEDNUMBER1" ) rs >> m_LedNumber1; 00031 else if ( colName == "LEDNUMBER2" ) rs >> m_LedNumber2; 00032 else if ( colName == "LEDVOLTAGE1" ) rs >> m_LedVoltage1; 00033 else if ( colName == "LEDVOLTAGE2" ) rs >> m_LedVoltage2; 00034 else if ( colName == "LEDFREQ" ) rs >> m_LedFreq; 00035 else if ( colName == "LEDPULSESEP" ) rs >> m_LedPulseSep; 00036 else if ( colName == "LTBMODE" ) rs >> m_LtbMode; 00037 else { 00038 LOG(dbi,Logging::kDebug1) << "Ignoring column " << curCol 00039 << "(" << colName << ")" 00040 << "; not part of DaqCalibRunInfo" << std::endl; 00041 rs.IncrementCurCol(); 00042 } 00043 } 00044 00045 } 00046 00047 void DaqCalibRunInfo::Store(DbiOutRowStream& ors, 00048 const DbiValidityRec* /* vrec */) const { 00049 ors << m_RunNo << m_DetectorId << m_AdNo 00050 << m_SourceIdA << m_ZPositionA 00051 << m_SourceIdB << m_ZPositionB 00052 << m_SourceIdC << m_ZPositionC 00053 << m_Duration << m_LedNumber1 00054 << m_LedNumber2 << m_LedVoltage1 << m_LedVoltage2 00055 << m_LedFreq << m_LedPulseSep << m_LtbMode; 00056 00057 } 00058 00059