ATLAS Offline Software
TBPatternUnitStreamerTool.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_TBPATTERNUNITSTREAMERTOOL_H
6 #define TBREC_TBPATTERNUNITSTREAMERTOOL_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  TBPatternUnitStreamerTool(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
TBPatternUnitStreamerTool::m_rejectPatternNames
pattern_store m_rejectPatternNames
Definition: TBPatternUnitStreamerTool.h:59
TBPatternUnitStreamerTool::bit_mask
unsigned int bit_mask
Definition: TBPatternUnitStreamerTool.h:37
TBPatternUnitStreamerTool::accept
virtual StatusCode accept() override
Definition: TBPatternUnitStreamerTool.cxx:154
TBPatternUnitStreamerTool::bit_mask_store
std::map< std::string, bit_mask > bit_mask_store
Definition: TBPatternUnitStreamerTool.h:38
TBPatternUnitStreamerTool::decodeBinary
std::string decodeBinary(bit_mask &theTrigger)
Definition: TBPatternUnitStreamerTool.cxx:193
TBPatternUnitStreamerTool::findPattern
StatusCode findPattern(const pattern_store &thePatterns, const bit_mask_store &theBitMasks, bit_mask &theMask)
Definition: TBPatternUnitStreamerTool.cxx:213
TBEventStreamerTool.h
TBPatternUnitStreamerTool::m_triggerBitMap
bit_mask_store m_triggerBitMap
Definition: TBPatternUnitStreamerTool.h:67
TBPatternUnitStreamerTool::TBPatternUnitStreamerTool
TBPatternUnitStreamerTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: TBPatternUnitStreamerTool.cxx:13
TBPatternUnitStreamerTool::m_rejectPattern
bit_mask m_rejectPattern
Definition: TBPatternUnitStreamerTool.h:66
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
test_pyathena.parent
parent
Definition: test_pyathena.py:15
TBPatternUnitStreamerTool::pattern_store
std::vector< pattern > pattern_store
Definition: TBPatternUnitStreamerTool.h:40
TBPatternUnitStreamerTool::m_acceptPatternNames
pattern_store m_acceptPatternNames
Definition: TBPatternUnitStreamerTool.h:58
TBPatternUnitStreamerTool::m_acceptPattern
bit_mask m_acceptPattern
Definition: TBPatternUnitStreamerTool.h:65
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
TBPatternUnitStreamerTool
compares pattern unit with client defined masks
Definition: TBPatternUnitStreamerTool.h:34
TBPatternUnitStreamerTool::pattern
std::string pattern
Definition: TBPatternUnitStreamerTool.h:39
TBEventStreamerTool
Definition: TBEventStreamerTool.h:15
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TBPatternUnitStreamerTool::~TBPatternUnitStreamerTool
virtual ~TBPatternUnitStreamerTool()
Definition: TBPatternUnitStreamerTool.cxx:51
TBPatternUnitStreamerTool::m_patternUnitKey
std::string m_patternUnitKey
Definition: TBPatternUnitStreamerTool.h:57
TBPatternUnitStreamerTool::initializeTool
virtual StatusCode initializeTool() override
Definition: TBPatternUnitStreamerTool.cxx:58