File indexing completed on 2024-07-03 04:17:41
0001 #ifndef DataFormats_L1Trigger_P2GTAlgoBlock_h
0002 #define DataFormats_L1Trigger_P2GTAlgoBlock_h
0003
0004 #include "P2GTCandidate.h"
0005
0006 #include <map>
0007 #include <string>
0008
0009 namespace l1t {
0010
0011 class P2GTAlgoBlock;
0012 typedef std::map<std::string, P2GTAlgoBlock> P2GTAlgoBlockMap;
0013
0014 class P2GTAlgoBlock {
0015 public:
0016 P2GTAlgoBlock()
0017 : decisionBeforeBxMaskAndPrescale_(false),
0018 decisionBeforePrescale_(false),
0019 decisionFinal_(false),
0020 decisionFinalPreview_(false),
0021 isVeto_(false),
0022 triggerTypes_(0),
0023 trigObjects_() {}
0024
0025 P2GTAlgoBlock(bool decisionBeforeBxMaskAndPrescale,
0026 bool decisionBeforePrescale,
0027 bool decisionFinal,
0028 bool decisionFinalPreview,
0029 bool isVeto,
0030 int triggerTypes,
0031 P2GTCandidateVectorRef trigObjects)
0032 : decisionBeforeBxMaskAndPrescale_(decisionBeforeBxMaskAndPrescale),
0033 decisionBeforePrescale_(decisionBeforePrescale),
0034 decisionFinal_(decisionFinal),
0035 decisionFinalPreview_(decisionFinalPreview),
0036 isVeto_(isVeto),
0037 triggerTypes_(triggerTypes),
0038 trigObjects_(std::move(trigObjects)) {}
0039
0040 bool decisionBeforeBxMaskAndPrescale() const { return decisionBeforeBxMaskAndPrescale_; }
0041 bool decisionBeforePrescale() const { return decisionBeforePrescale_; }
0042 bool decisionFinal() const { return decisionFinal_; }
0043 bool decisionFinalPreview() const { return decisionFinalPreview_; }
0044 bool isVeto() const { return isVeto_; }
0045 int triggerTypes() const { return triggerTypes_; }
0046 const P2GTCandidateVectorRef& trigObjects() const { return trigObjects_; }
0047
0048 private:
0049 const bool decisionBeforeBxMaskAndPrescale_;
0050 const bool decisionBeforePrescale_;
0051 const bool decisionFinal_;
0052 const bool decisionFinalPreview_;
0053 const bool isVeto_;
0054 const int triggerTypes_;
0055 const P2GTCandidateVectorRef trigObjects_;
0056 };
0057
0058 }
0059
0060 #endif