Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:17:10

0001 //  Declaration of class PdbCalBank
0002 //  Purpose: Calibration bank base class
0003 //  Author: Matthias Messer
0004 
0005 #ifndef PDBCAL_BASE_PDBCALBANK_H
0006 #define PDBCAL_BASE_PDBCALBANK_H
0007 
0008 #include "PdbBankID.h"
0009 
0010 #include <phool/PHTimeStamp.h>
0011 
0012 #include <phool/PHObject.h>
0013 
0014 #include <cstddef>
0015 #include <string>
0016 
0017 class PdbCalChan;
0018 class PHTimeStamp;
0019 
0020 class PdbCalBank : public PHObject
0021 {
0022  public:
0023   PdbCalBank() {}
0024   ~PdbCalBank() override {}
0025   PHObject *CloneMe() const override;
0026 
0027   virtual void printHeader() const = 0;
0028   virtual void print() = 0;
0029   virtual void printEntry(size_t) = 0;
0030 
0031   virtual size_t getLength() = 0;
0032   virtual PdbCalChan &getEntry(size_t) = 0;
0033   virtual void setLength(size_t val) = 0;
0034 
0035   //
0036   // Access functions for the header
0037   //
0038   virtual PdbBankID getBankID() const = 0;
0039   virtual PHTimeStamp getInsertTime() const = 0;
0040   virtual PHTimeStamp getStartValTime() const = 0;
0041   virtual PHTimeStamp getEndValTime() const = 0;
0042   virtual std::string getDescription() const = 0;
0043   virtual std::string getUserName() const = 0;
0044 
0045   virtual void setBankID(const PdbBankID &) = 0;
0046   virtual void setInsertTime(const PHTimeStamp &) = 0;
0047   virtual void setStartValTime(const PHTimeStamp &) = 0;
0048   virtual void setEndValTime(const PHTimeStamp &) = 0;
0049   virtual void setDescription(const std::string &) = 0;
0050   virtual void setUserName(const std::string &) = 0;
0051   using PHObject::isValid;
0052   virtual int isValid(const PHTimeStamp &) const = 0;
0053 
0054   ClassDefOverride(PdbCalBank, 1);
0055 };
0056 
0057 #endif /* PDBCAL_BASE_PDBCALBANK_H */