ATLAS Offline Software
TestBeam
TBRec
src
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
33
class
TBPatternUnitStreamerTool
:
public
TBEventStreamerTool
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
);
45
virtual
~TBPatternUnitStreamerTool
();
46
47
virtual
StatusCode
initializeTool
()
override
;
48
49
virtual
StatusCode
accept
()
override
;
50
51
protected
:
52
54
// Properties //
56
57
std::string
m_patternUnitKey
;
58
pattern_store
m_acceptPatternNames
;
59
pattern_store
m_rejectPatternNames
;
60
62
// Internal Stores //
64
65
bit_mask
m_acceptPattern
;
66
bit_mask
m_rejectPattern
;
67
bit_mask_store
m_triggerBitMap
;
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:228
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
Generated on Mon Dec 23 2024 21:19:16 for ATLAS Offline Software by
1.8.18