00001 #include "PulserTimingCardSetting.h"
00002 #include "DatabaseInterface/DbiResultSet.h"
00003 #include "MessageService/MsgService.h"
00004 #include <cassert>
00005
00014
00015 ClassImp(PulserTimingCardSetting)
00016
00017
00018 CVSID("$Id: PulserTimingCardSetting.cxx,v 1.6 2007/03/01 17:06:40 rhatcher Exp $");
00019
00020 #include "DatabaseInterface/DbiResultPtr.tpl"
00021 template class DbiResultPtr<PulserTimingCardSetting>;
00022
00023 #include "DatabaseInterface/DbiWriter.tpl"
00024 template class DbiWriter<PulserTimingCardSetting>;
00025
00026
00027 const double kDefaultOffset = 260.*Munits::ns;
00028
00029
00031
00033 void PulserTimingCardSetting::Fill(DbiResultSet& rs,
00034 const DbiValidityRec* ) {
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045 if ( rs.TableName() == "PULSERTIMINGCARDSETTING" ) {
00046
00047 rs >> fPulserBox >> fDelay_ns;
00048 }
00049 else {
00050
00051 Int_t numCol = rs.NumCols();
00052
00053 for (Int_t curCol = rs.HasRowCounter() ? 3 : 2; curCol <= numCol; ++curCol) {
00054 string colName = rs.CurColName();
00055 if ( colName == "PULSERBOX" ) rs >> fPulserBox;
00056 else if( colName == "DELAYNS" ) rs >> fDelay_ns;
00057 else {
00058 MSG("Dbi",Msg::kDebug) << "Ignoring column " << curCol
00059 << "(" << colName << ")"
00060 << "; not part of PulserTimingCardSetting"
00061 << endl;
00062 rs.IncrementCurCol();
00063 }
00064 }
00065 }
00066
00067 }
00068
00069
00070 void PulserTimingCardSetting::Store(DbiOutRowStream& ors,
00071 const DbiValidityRec* ) const
00072 {
00073
00074
00075
00076
00077
00078 ors << fPulserBox << fDelay_ns;
00079 }
00080