Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Dcs_Mag_Cal.cxx

Go to the documentation of this file.
00001 
00002 #include "Dcs_Mag_Cal.h"
00003 #include "MessageService/MsgService.h"
00004 #include "DatabaseInterface/DbiOutRowStream.h"
00005 #include "DatabaseInterface/DbiResultSet.h"
00006 #include "DatabaseInterface/DbiValidityRec.h"
00007 
00008 ClassImp(Dcs_Mag_Cal)
00009 
00010 //   Definition of static data members
00011 //   *********************************
00012 
00013 CVSID("$Id: Dcs_Mag_Cal.cxx,v 1.3 2005/03/11 16:17:48 west Exp $\n  CVSID_DBIRESULTPTR ");
00014 
00015 //  Instantiate associated Result Pointer class.
00016 //  *******************************************
00017 
00018 #include "DatabaseInterface/DbiResultPtr.tpl"
00019 template class  DbiResultPtr<Dcs_Mag_Cal>;
00020 
00021 #include "DatabaseInterface/DbiWriter.tpl"
00022 template class  DbiWriter<Dcs_Mag_Cal>;
00023 
00024 // Definition of member functions (alphabetical order)
00025 // ***************************************************
00026 
00027 
00028 //.....................................................................
00029 
00030 void Dcs_Mag_Cal::Fill(DbiResultSet& rs,
00031                         const DbiValidityRec* /* vrec */) {
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 //  This method demonstrates both the "dumb" fill method (just
00043 //  load the data as it comes) and the smart method (check column
00044 //  name and load according to column order). 
00045 
00046   if (    rs.TableName() != "DCS_MAG_CAL" 
00047        && rs.TableName() != "Dcs_Mag_Cal" ) {
00048     
00049 // Dumb method.
00050           rs >>  iIsT7 >> f7Mag1 >> f7Mag2 >> f7Mag3 >> f7Mag4 >> f7Mag5 >> f7Mag6 >> f7Mag7 >> f7Mag8 >> f11Mag1 >> f11Mag2 >> f11Mag3 >> f11Mag4 >> f11Mag5 >> f11Mag6 >> f11Mag7 >> f11Mag8;
00051 
00052   }
00053   
00054 // Smart method
00055   else {
00056     Int_t numCol = rs.NumCols();
00057     //  The first column (SeqNo) has already been processed.
00058     for (Int_t curCol = rs.HasRowCounter() ? 3 : 2; curCol <= numCol; ++curCol) {
00059       string colName = rs.CurColName();
00060       if (      colName == "IS_T7" ) rs >> iIsT7;
00061       else if ( colName == "CAL_ZT7_BHZ01S7" )  rs >> f7Mag1;
00062 //      else if ( colName == "RPS_ERROR" )     rs >> iErr;
00063       else {
00064         MSG("Dbi",Msg::kDebug) << "Ignoring column " << curCol 
00065                                << "(" << colName << ")"
00066                               << "; not part of DcsMagCal" << endl;
00067         rs.IncrementCurCol();
00068       }
00069     }
00070     
00071   }
00072 }
00073 //.....................................................................
00074 
00075 void Dcs_Mag_Cal::Store(DbiOutRowStream& ors,
00076                          const DbiValidityRec* /* vrec */) const {
00077 //  Purpose:  Stream object to output row stream
00078 //
00079 //  Arguments: 
00080 //    ors          in     Output row stream.
00081 //    vrec         in    Associated validity record (or 0 if filling
00082 //                                                    DbiValidityRec)
00083 //  o  Stream object to output row stream.
00084 
00085   ors << iIsT7 << f7Mag1 << f7Mag2 << f7Mag3 << f7Mag4 << f7Mag5 << f7Mag6 << f7Mag7 << f7Mag8 << f11Mag1 << f11Mag2 << f11Mag3 << f11Mag4 << f11Mag5 << f11Mag6 << f11Mag7 << f11Mag8;
00086 }
00087 
00088 

Generated on Mon Feb 15 11:06:36 2010 for loon by  doxygen 1.3.9.1