00001 #ifndef DCSMAGNEAR_H
00002 #define DCSMAGNEAR_H
00003
00004 #include "Rtypes.h"
00005 #include "DatabaseInterface/DbiTableRow.h"
00006 #include "DatabaseInterface/DbiOutRowStream.h"
00007 #include "DatabaseInterface/DbiResultSet.h"
00008
00009 class DbiValidityRec;
00010
00011 class Dcs_Mag_Near : public DbiTableRow
00012 {
00013
00014 using TObject::Compare;
00015
00016 public:
00017
00018 Dcs_Mag_Near() { }
00019 Dcs_Mag_Near(const Dcs_Mag_Near& from) : DbiTableRow(from) { *this = from; }
00020 Dcs_Mag_Near(Float_t a, Float_t b, Float_t c, Int_t d, Short_t e,Short_t f,Short_t g,Short_t h,Short_t i,Short_t j,Short_t k,Short_t m, Short_t n):
00021 fCurrent(a),fVoltage(b),fVoltageRef(c),iRawData(d),b0LocalOrRemote(e),b1InterLocksComplete(f),b2PowerSupplyOn(g),b3GroundFault(h),b4OverCurrentDC(i),b5OverTemperature(j),b6CurrentRegulateMode(k),b7ExternalReference(m),b8Polarity(n) { }
00022 virtual ~Dcs_Mag_Near(){ };
00023
00024
00025
00026 Bool_t CanL2Cache() const { return kTRUE; }
00027 Bool_t Compare(const Dcs_Mag_Near& that ) const {
00028 return fCurrent == that.fCurrent
00029 && fVoltage == that.fVoltage
00030 && fVoltageRef == that.fVoltageRef
00031 && b0LocalOrRemote == that.b0LocalOrRemote
00032 && b1InterLocksComplete== that.b1InterLocksComplete
00033 && b2PowerSupplyOn== that.b2PowerSupplyOn
00034 && b3GroundFault== that.b3GroundFault
00035 && b4OverCurrentDC== that.b4OverCurrentDC
00036 && b5OverTemperature== that.b5OverTemperature
00037 && b6CurrentRegulateMode== that.b6CurrentRegulateMode
00038 && b7ExternalReference== that.b7ExternalReference
00039 && b8Polarity== that.b8Polarity
00040 && iRawData == that.iRawData; }
00041
00042 UInt_t GetIndex(UInt_t ) const { return 1; }
00043 Int_t GetSupermodule() const { return 1; }
00044 Float_t GetCurrent() const { return fCurrent; }
00045 Float_t GetVoltage() const { return fVoltage; }
00046 Float_t GetVoltageReference() const { return fVoltageRef; }
00047 Int_t GetRawData() const { return iRawData; }
00048 Short_t GetControlState() const { return b0LocalOrRemote; }
00049 Short_t GetInterLocksComplete() const { return b1InterLocksComplete; }
00050 Short_t GetPowerSupplyOn() const { return b2PowerSupplyOn; }
00051 Short_t GetGroundFault() const { return b3GroundFault; }
00052 Short_t GetOverCurrentDC() const { return b4OverCurrentDC; }
00053 Short_t GetOverTemperature() const { return b5OverTemperature; }
00054 Short_t GetCurrentRegulateMode() const { return b6CurrentRegulateMode; }
00055 Short_t GetExternalReference() const { return b7ExternalReference; }
00056 Short_t GetPolarity() const { return b8Polarity; }
00057
00058
00059 virtual void Fill(DbiResultSet& rs, const DbiValidityRec* vrec);
00060 virtual void Store(DbiOutRowStream& ors, const DbiValidityRec* vrec) const;
00061
00062 virtual DbiTableRow* CreateTableRow() const { return new Dcs_Mag_Near; }
00063
00064 private:
00065
00066
00067
00068 Float_t fCurrent;
00069 Float_t fVoltage;
00070 Float_t fVoltageRef;
00071 Int_t iRawData;
00072 Short_t b0LocalOrRemote;
00073 Short_t b1InterLocksComplete;
00074 Short_t b2PowerSupplyOn;
00075 Short_t b3GroundFault;
00076 Short_t b4OverCurrentDC;
00077 Short_t b5OverTemperature;
00078 Short_t b6CurrentRegulateMode;
00079 Short_t b7ExternalReference;
00080 Short_t b8Polarity;
00081
00082
00083
00084
00085
00086
00087
00088
00089
00090 ClassDef(Dcs_Mag_Near,0)
00091
00092 };
00093
00094 #endif // DCSMAGNEAR_H