CMS 3D CMS Logo

GMTCollections.h
Go to the documentation of this file.
1 #ifndef GMTCollections_h
2 #define GMTCollections_h
3 
6 
7 //#include "EventFilter/L1TRawToDigi/interface/UnpackerCollections.h"
8 #include "L1TObjectCollections.h"
9 
10 #include <array>
11 
12 namespace l1t {
13  namespace stage2 {
15  public:
21  muons_(),
22  imdMuonsBMTF_(std::make_unique<MuonBxCollection>()),
23  imdMuonsEMTFNeg_(std::make_unique<MuonBxCollection>()),
24  imdMuonsEMTFPos_(std::make_unique<MuonBxCollection>()),
25  imdMuonsOMTFNeg_(std::make_unique<MuonBxCollection>()),
26  imdMuonsOMTFPos_(std::make_unique<MuonBxCollection>())
27  {
28  std::generate(muons_.begin(), muons_.end(), []{ return std::make_unique<MuonBxCollection>(); });
29  };
30 
31  virtual ~GMTCollections();
32 
36  inline MuonBxCollection* getMuons(const unsigned int copy) override { return muons_[copy].get(); };
37  inline MuonBxCollection* getImdMuonsBMTF() { return imdMuonsBMTF_.get(); };
42 
43  private:
44  std::unique_ptr<RegionalMuonCandBxCollection> regionalMuonCandsBMTF_;
45  std::unique_ptr<RegionalMuonCandBxCollection> regionalMuonCandsOMTF_;
46  std::unique_ptr<RegionalMuonCandBxCollection> regionalMuonCandsEMTF_;
47  std::array<std::unique_ptr<MuonBxCollection>, 6> muons_;
48  std::unique_ptr<MuonBxCollection> imdMuonsBMTF_;
49  std::unique_ptr<MuonBxCollection> imdMuonsEMTFNeg_;
50  std::unique_ptr<MuonBxCollection> imdMuonsEMTFPos_;
51  std::unique_ptr<MuonBxCollection> imdMuonsOMTFNeg_;
52  std::unique_ptr<MuonBxCollection> imdMuonsOMTFPos_;
53  };
54  }
55 }
56 
57 #endif
MuonBxCollection * getImdMuonsEMTFNeg()
MuonBxCollection * getImdMuonsOMTFNeg()
std::unique_ptr< MuonBxCollection > imdMuonsOMTFNeg_
std::unique_ptr< RegionalMuonCandBxCollection > regionalMuonCandsOMTF_
std::unique_ptr< RegionalMuonCandBxCollection > regionalMuonCandsEMTF_
RegionalMuonCandBxCollection * getRegionalMuonCandsBMTF()
RegionalMuonCandBxCollection * getRegionalMuonCandsEMTF()
delete x;
Definition: CaloConfig.h:22
def generate(map_blobs=False, class_name=None)
Definition: models.py:187
std::unique_ptr< MuonBxCollection > imdMuonsEMTFNeg_
MuonBxCollection * getMuons(const unsigned int copy) override
std::array< std::unique_ptr< MuonBxCollection >, 6 > muons_
std::unique_ptr< RegionalMuonCandBxCollection > regionalMuonCandsBMTF_
RegionalMuonCandBxCollection * getRegionalMuonCandsOMTF()
MuonBxCollection * getImdMuonsOMTFPos()
std::unique_ptr< MuonBxCollection > imdMuonsOMTFPos_
MuonBxCollection * getImdMuonsBMTF()
MuonBxCollection * getImdMuonsEMTFPos()
std::unique_ptr< MuonBxCollection > imdMuonsBMTF_
std::unique_ptr< MuonBxCollection > imdMuonsEMTFPos_