ATLAS Offline Software
TBPatternUnitStreamerToolH8.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TBREC_TBPATTERNUNITSTREAMERTOOLH8_H
6 #define TBREC_TBPATTERNUNITSTREAMERTOOLH8_H
7 
27 #include "TBEventStreamerTool.h"
28 
29 #include <string>
30 #include <map>
31 #include <vector>
32 
34 {
35  public:
36 
37  typedef unsigned int bit_mask;
38  typedef std::map< std::string, bit_mask > bit_mask_store;
39  typedef std::string pattern;
40  typedef std::vector<pattern> pattern_store;
41 
42  TBPatternUnitStreamerToolH8(const std::string& type,
43  const std::string& name,
44  const IInterface* parent);
46 
47  virtual StatusCode initializeTool() override;
48 
49  virtual StatusCode accept() override;
50 
51  protected:
52 
54  // Properties //
56 
57  std::string m_patternUnitKey;
60 
62  // Internal Stores //
64 
68 
70  // Internal Helpers //
72 
73  std::string decodeBinary(bit_mask& theTrigger);
74  StatusCode findPattern(const pattern_store& thePatterns,
75  const bit_mask_store& theBitMasks,
76  bit_mask& theMask);
77 };
78 #endif
TBPatternUnitStreamerToolH8::~TBPatternUnitStreamerToolH8
virtual ~TBPatternUnitStreamerToolH8()
Definition: TBPatternUnitStreamerToolH8.cxx:31
TBPatternUnitStreamerToolH8::findPattern
StatusCode findPattern(const pattern_store &thePatterns, const bit_mask_store &theBitMasks, bit_mask &theMask)
Definition: TBPatternUnitStreamerToolH8.cxx:187
TBPatternUnitStreamerToolH8::pattern_store
std::vector< pattern > pattern_store
Definition: TBPatternUnitStreamerToolH8.h:40
TBEventStreamerTool.h
TBPatternUnitStreamerToolH8::pattern
std::string pattern
Definition: TBPatternUnitStreamerToolH8.h:39
TBPatternUnitStreamerToolH8::accept
virtual StatusCode accept() override
Definition: TBPatternUnitStreamerToolH8.cxx:134
TBPatternUnitStreamerToolH8::m_patternUnitKey
std::string m_patternUnitKey
Definition: TBPatternUnitStreamerToolH8.h:57
TBPatternUnitStreamerToolH8::m_rejectPattern
bit_mask m_rejectPattern
Definition: TBPatternUnitStreamerToolH8.h:66
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TBPatternUnitStreamerToolH8::bit_mask
unsigned int bit_mask
Definition: TBPatternUnitStreamerToolH8.h:37
test_pyathena.parent
parent
Definition: test_pyathena.py:15
TBPatternUnitStreamerToolH8::m_rejectPatternNames
pattern_store m_rejectPatternNames
Definition: TBPatternUnitStreamerToolH8.h:59
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TBPatternUnitStreamerToolH8::m_acceptPattern
bit_mask m_acceptPattern
Definition: TBPatternUnitStreamerToolH8.h:65
TBPatternUnitStreamerToolH8
compares pattern unit with client defined masks
Definition: TBPatternUnitStreamerToolH8.h:34
TBPatternUnitStreamerToolH8::initializeTool
virtual StatusCode initializeTool() override
Definition: TBPatternUnitStreamerToolH8.cxx:38
TBPatternUnitStreamerToolH8::m_acceptPatternNames
pattern_store m_acceptPatternNames
Definition: TBPatternUnitStreamerToolH8.h:58
TBPatternUnitStreamerToolH8::bit_mask_store
std::map< std::string, bit_mask > bit_mask_store
Definition: TBPatternUnitStreamerToolH8.h:38
TBEventStreamerTool
Definition: TBEventStreamerTool.h:15
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TBPatternUnitStreamerToolH8::decodeBinary
std::string decodeBinary(bit_mask &theTrigger)
Definition: TBPatternUnitStreamerToolH8.cxx:166
TBPatternUnitStreamerToolH8::TBPatternUnitStreamerToolH8
TBPatternUnitStreamerToolH8(const std::string &type, const std::string &name, const IInterface *parent)
Definition: TBPatternUnitStreamerToolH8.cxx:11
TBPatternUnitStreamerToolH8::m_triggerBitMap
bit_mask_store m_triggerBitMap
Definition: TBPatternUnitStreamerToolH8.h:67