Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:21:40

0001 #ifndef L1Trigger_TPatternsGroup_h
0002 #define L1Trigger_TPatternsGroup_h
0003 // -*- C++ -*-
0004 //
0005 // Package:     L1Trigger
0006 // Class  :     TPatternsGroup
0007 //
0008 /**\class TPatternsGroup TPatternsGroup.h src/L1Trigger/interface/TPatternsGroup.h
0009 
0010  Description: <one line class summary>
0011 
0012  Usage:
0013     <usage>
0014 
0015 */
0016 #include "CondFormats/L1TObjects/interface/RPCPattern.h"
0017 #include "L1Trigger/RPCTrigger/interface/RPCLogCone.h"
0018 /** \class TPatternsGroup
0019  * Basic class for storing grouped patterns inside Pac.
0020  * In group (object of class TPatternsGroup) the patterns belonging to given
0021    * group are stored in m_PatternsVec. These patterns are use in trigger algorithm*/
0022 class TPatternsGroup {
0023   friend class RPCPacData;
0024   friend class RPCPac;
0025 
0026 public:
0027   void addPattern(const RPCPattern::RPCPatVec::const_iterator& pattern);
0028 
0029   ///Updates m_GroupShape, i.e. sets to true strips belonging to the pattern. Coleed in addPattern()
0030   void updateShape(const RPCPattern::RPCPatVec::const_iterator& pattern);
0031 
0032   void setPatternsGroupType(RPCPattern::TPatternType patternsGroupType);
0033 
0034   RPCPattern::TPatternType getPatternsGroupType() const;
0035 
0036   void setGroupDescription(std::string groupDescription);
0037 
0038   std::string getGroupDescription() const;
0039 
0040 protected:
0041   RPCPattern::TPatternType m_PatternsGroupType;
0042   //L1RpcPatternsVec m_PatternsVec; //!< Vector of patterns.
0043 
0044   //!< Vector of itereator on m_PatternsVec in Pac.
0045   std::vector<RPCPattern::RPCPatVec::const_iterator> m_PatternsItVec;
0046 
0047   //!< Set LogStrips denotes strips beloging to the group.
0048   RPCLogCone m_GroupShape;
0049 
0050   std::string m_GroupDescription;
0051 };
0052 #endif