Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:16:08

0001 #ifndef FUN4ALLRAW_MVTXRAWEVTHEADERV2_H
0002 #define FUN4ALLRAW_MVTXRAWEVTHEADERV2_H
0003 
0004 #include "MvtxRawEvtHeader.h"
0005 
0006 #include <phool/PHObject.h>
0007 
0008 class MvtxFeeIdInfo;
0009 class TClonesArray;
0010 
0011 class MvtxRawEvtHeaderv2 : public MvtxRawEvtHeader
0012 {
0013  public:
0014   //! ctor
0015   MvtxRawEvtHeaderv2();
0016 
0017   //! cp/mv ctor
0018   MvtxRawEvtHeaderv2(const MvtxRawEvtHeaderv2 &) = default;
0019   MvtxRawEvtHeaderv2(MvtxRawEvtHeaderv2 &&) = default;
0020 
0021   //! cp/mv assignment
0022   MvtxRawEvtHeaderv2 &operator=(const MvtxRawEvtHeaderv2 &) = default;
0023   MvtxRawEvtHeaderv2 &operator=(MvtxRawEvtHeaderv2 &&) = default;
0024 
0025   //! dtor
0026   ~MvtxRawEvtHeaderv2() override;
0027 
0028   /// Clear Event
0029   void Reset() override;
0030 
0031   /** identify Function from PHObject
0032       @param os Output Stream
0033    */
0034   void identify(std::ostream &os = std::cout) const override;
0035 
0036   /// isValid returns non zero if object contains vailid data
0037   int isValid() const override;
0038 
0039   MvtxFeeIdInfo *AddFeeIdInfo() override;
0040   MvtxFeeIdInfo *AddFeeIdInfo(MvtxFeeIdInfo *feeIdInfo) override;
0041 
0042   uint64_t get_nFeeIdInfo() override;
0043   MvtxFeeIdInfo *get_feeIdInfo(unsigned int index) override;
0044 
0045   void AddL1Trg(const uint64_t &gtmL1_bco) override { m_MvtxL1TrgSet.insert(gtmL1_bco); };
0046   void AddL1Trg(const std::set<uint64_t> &mvtxL1TrgSet) override;
0047 
0048   std::set<uint64_t> &getMvtxLvL1BCO() override { return m_MvtxL1TrgSet; };
0049 
0050  private:
0051   TClonesArray *m_MvtxFeeIdInfoTCArray = nullptr;
0052 
0053   std::set<uint64_t> m_MvtxL1TrgSet;
0054 
0055   ClassDefOverride(MvtxRawEvtHeaderv2, 1)
0056 };
0057 
0058 #endif