ATLAS Offline Software
StaticBunchCrossingTool.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // $Id: StaticBunchCrossingTool.h 749252 2016-05-24 09:30:51Z krasznaa $
8 #ifndef TRIGBUNCCROSSINGTOOL_STATICBUNCHCROSSINGTOOL_H
9 #define TRIGBUNCCROSSINGTOOL_STATICBUNCHCROSSINGTOOL_H
10 
11 // STL include(s):
12 #include <map>
13 #include <vector>
14 
15 // Local include(s):
17 
18 namespace Trig {
19 
36 
39 
40  public:
42  StaticBunchCrossingTool( const std::string& name =
43  "StaticBunchCrossingTool" );
44 
46  virtual StatusCode initialize();
47 
49  StatusCode loadConfig( int bgkey );
51  StatusCode loadConfig( const std::vector< int >& filledBunches,
52  const std::vector< float >& filledIntensities =
53  std::vector< float >(),
54  const std::vector< int >& unpairedBunches =
55  std::vector< int >(),
56  const std::vector< float >& unpairedIntensities =
57  std::vector< float >() );
59  StatusCode loadConfig( const std::vector< float >& bunches );
60 
61  private:
63  int m_bgkey;
64 
66  std::map< int, std::vector< int > > m_knownBGKeys;
67 
68  }; // class StaticBunchCrossingTool
69 
70 } // namespace Trig
71 
72 #endif // TRIGBUNCCROSSINGTOOL_STATICBUNCHCROSSINGTOOL_H
Trig::BunchCrossingToolBase
Base class for all BunchCrossingTool implementations.
Definition: BunchCrossingToolBase.h:41
BunchCrossingToolBase.h
Trig::IBunchCrossingTool
Interface for all the bunch crossing tools.
Definition: IBunchCrossingTool.h:40
Trig
The common trigger namespace for trigger analysis tools.
Definition: CaloTowerVecMon.h:44
Trig::StaticBunchCrossingTool
Stand-alone bunch group tool knowing some static configurations.
Definition: StaticBunchCrossingTool.h:35
Trig::StaticBunchCrossingTool::initialize
virtual StatusCode initialize()
Function initialising the tool.
Definition: StaticBunchCrossingTool.cxx:34
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Trig::StaticBunchCrossingTool::m_knownBGKeys
std::map< int, std::vector< int > > m_knownBGKeys
All the hard-coded configs.
Definition: StaticBunchCrossingTool.h:66
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
Trig::StaticBunchCrossingTool::m_bgkey
int m_bgkey
Default key to be loaded.
Definition: StaticBunchCrossingTool.h:63
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
Trig::StaticBunchCrossingTool::StaticBunchCrossingTool
StaticBunchCrossingTool(const std::string &name="StaticBunchCrossingTool")
Create a proper constructor for Athena.
Definition: StaticBunchCrossingTool.cxx:17
Trig::StaticBunchCrossingTool::loadConfig
StatusCode loadConfig(int bgkey)
Load a hard-coded bunch group key.
Definition: StaticBunchCrossingTool.cxx:56