SpillTimeND Class Reference

#include <SpillTimeND.h>

Inheritance diagram for SpillTimeND:

DbiTableRow List of all members.

Public Types

 kTask_Vtm = 1
 kTask_TimeWatcher = 2
 kTask_TimeGoblin = 3
enum  ESpillTimeTasks { kTask_Vtm = 1, kTask_TimeWatcher = 2, kTask_TimeGoblin = 3 }

Public Member Functions

 SpillTimeND ()
 SpillTimeND (VldTimeStamp ts)
virtual ~SpillTimeND ()
Bool_t CanL2Cache () const
VldTimeStamp GetTimeStamp () const
Int_t GetSec ()
Int_t GetNanoSec ()
virtual DbiTableRowCreateTableRow () const
virtual void Fill (DbiResultSet &rs, const DbiValidityRec *vrec)
virtual void Store (DbiOutRowStream &ors, const DbiValidityRec *vrec) const

Private Member Functions

 ClassDef (SpillTimeND, 1)

Private Attributes

Int_t fSecond
Int_t fNanoSec

Detailed Description

Definition at line 10 of file SpillTimeND.h.


Member Enumeration Documentation

enum SpillTimeND::ESpillTimeTasks

Enumerator:
kTask_Vtm 
kTask_TimeWatcher 
kTask_TimeGoblin 

Definition at line 14 of file SpillTimeND.h.

00014                       {
00015     kTask_Vtm = 1,
00016     kTask_TimeWatcher = 2,
00017     kTask_TimeGoblin = 3
00018   };


Constructor & Destructor Documentation

SpillTimeND::SpillTimeND (  )  [inline]

Definition at line 20 of file SpillTimeND.h.

References LEA_CTOR.

00020 { LEA_CTOR; };

SpillTimeND::SpillTimeND ( VldTimeStamp  ts  )  [inline]

Definition at line 22 of file SpillTimeND.h.

References LEA_CTOR.

00023     : fSecond(ts.GetSec()), fNanoSec(ts.GetNanoSec())
00024     { LEA_CTOR; };

virtual SpillTimeND::~SpillTimeND (  )  [inline, virtual]

Definition at line 26 of file SpillTimeND.h.

References LEA_DTOR.

00026 { LEA_DTOR; };


Member Function Documentation

Bool_t SpillTimeND::CanL2Cache (  )  const [inline, virtual]

Reimplemented from DbiTableRow.

Definition at line 29 of file SpillTimeND.h.

00029 { return kTRUE; }

SpillTimeND::ClassDef ( SpillTimeND  ,
 
) [private]

virtual DbiTableRow* SpillTimeND::CreateTableRow (  )  const [inline, virtual]

Implements DbiTableRow.

Definition at line 36 of file SpillTimeND.h.

00036 { return new SpillTimeND; }

void SpillTimeND::Fill ( DbiResultSet rs,
const DbiValidityRec vrec 
) [virtual]

Implements DbiTableRow.

Definition at line 29 of file SpillTimeND.cxx.

References DbiRowStream::CurColName(), fNanoSec, fSecond, DbiRowStream::HasRowCounter(), DbiRowStream::IncrementCurCol(), Msg::kDebug, MSG, DbiRowStream::NumCols(), and DbiRowStream::TableName().

00030                                                                 {
00031 
00032 //
00033 //
00034 //  Purpose:  Fill object from Result Set
00035 //
00036 //  Arguments: 
00037 //    rs           in    Result Set used to fill object
00038 //    vrec         in    Associated validity record (or 0 if filling
00039 //                                                    DbiValidityRec)
00040 //
00041 //  o Fill object from current row of Result Set.
00042 
00043 //  Program Notes:-
00044 //  =============
00045 
00046 //  This method demonstrates both the "dumb" fill method (just
00047 //  load the data as it comes) and the smart method (check column
00048 //  name and load according to column order). 
00049 
00050    if ( rs.TableName() == "SPILLTIMEND" ) {
00051       // Dumb method.
00052      rs  >> fSecond >> fNanoSec;
00053    }
00054 
00055    else {
00056       
00057       // Smart method
00058       Int_t numCol = rs.NumCols();
00059       //  The first column (SeqNo) has already been processed.
00060       for (Int_t curCol = rs.HasRowCounter() ? 3 : 2; curCol <= numCol; ++curCol) {
00061          string colName = rs.CurColName();
00062               if( colName == "SECOND" )  rs >> fSecond;
00063          else if( colName == "NANOSEC" ) rs >> fNanoSec;
00064          else {
00065            MSG("Dbi",Msg::kDebug) << "Ignoring column " << curCol 
00066                                   << "(" << colName << ")"
00067                                   << "; not part of SpillTimeND" 
00068                                   << endl;
00069            rs.IncrementCurCol();
00070          }
00071       }
00072    }
00073    
00074    
00075 }

Int_t SpillTimeND::GetNanoSec (  )  [inline]

Definition at line 34 of file SpillTimeND.h.

References fNanoSec.

00034 { return fNanoSec; };

Int_t SpillTimeND::GetSec (  )  [inline]

Definition at line 33 of file SpillTimeND.h.

References fSecond.

00033 { return fSecond; };

VldTimeStamp SpillTimeND::GetTimeStamp (  )  const [inline]

Definition at line 32 of file SpillTimeND.h.

References fNanoSec, and fSecond.

Referenced by MadTestAnalysis::CreatePAN(), MadPIDAnalysis::CreatePAN(), MadDpAnalysis::CreatePAN(), NtpMaker::FillSpillInfo(), SpillTimeFinder::FindBestRows(), SpillTimeFinder::FindClosestEntries(), SpillTimeFinder::GetNearestSpill(), SpillTimeFinder::GetTimeOfNearestSpill(), SpillTimeFinder::GetTimeOfNextSpill(), SpillTimeFinder::GetTimeOfRecentSpill(), DataQualityInterface::ProcessBeamStatus(), and DataUtil::QueryBeamDB().

00032 { return VldTimeStamp(fSecond,fNanoSec); };

void SpillTimeND::Store ( DbiOutRowStream ors,
const DbiValidityRec vrec 
) const [virtual]

Reimplemented from DbiTableRow.

Definition at line 79 of file SpillTimeND.cxx.

References fNanoSec, and fSecond.

00080                                                                        {
00081   //
00082   //
00083   //  Purpose:  Stream object to output row stream
00084   //
00085   //  Arguments: 
00086   //    ors          in     Output row stream.
00087   //    vrec         in    Associated validity record (or 0 if filling
00088   
00089   ors << fSecond << fNanoSec;
00090 }


Member Data Documentation

Int_t SpillTimeND::fNanoSec [private]

Definition at line 46 of file SpillTimeND.h.

Referenced by Fill(), GetNanoSec(), GetTimeStamp(), and Store().

Int_t SpillTimeND::fSecond [private]

Definition at line 45 of file SpillTimeND.h.

Referenced by Fill(), GetSec(), GetTimeStamp(), and Store().


The documentation for this class was generated from the following files:
Generated on Wed Sep 10 22:52:09 2014 for loon by  doxygen 1.4.7