ATLAS Offline Software
Loading...
Searching...
No Matches
FCALDetectorManager.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 LARREADOUTGEOMETRY_FCALDETECTORMANAGER_H
6#define LARREADOUTGEOMETRY_FCALDETECTORMANAGER_H
7
8#include "LArReadoutGeometry/FCAL_ChannelMap.h"
10#include "LArHV/FCALHVManager.h"
11#include "GeoModelKernel/GeoVDetectorManager.h"
13#include <vector>
14
15class IMessageSvc;
16
27
28class FCALDetectorManager : public GeoVDetectorManager
29{
30
31 private:
32 typedef const FCALModule * ModulePtr;
33 public:
34 typedef std::vector<const FCALModule *>::const_iterator ConstIterator;
35
36
37 public:
38
42 FCALDetectorManager (const FCALHVManager* hvManager=nullptr);
43
47 virtual ~FCALDetectorManager() override;
48
53
58
62 const FCALModule* getFCAL (FCALModule::Module module, FCALModule::Endcap endcap) const;
63
67 virtual unsigned int getNumTreeTops () const override;
68
72 virtual PVConstLink getTreeTop (unsigned int i) const override;
73
77 const FCAL_ChannelMap * getChannelMap () const;
78
82 void addModule (FCALModule* fcalModule);
83
87 void addTreeTop (const PVLink& treeTop);
88
92 const FCALHVManager& getHVManager() const;
93
94 private:
95
98
103 std::vector<PVLink> m_treeTop;
104
110
115 std::vector<const FCALModule *> m_DetList;
116
118
120
121};
122
123
124
125
127{
128
129 return m_fcal_channel_map;
130
131}
132
133
134CLASS_DEF(FCALDetectorManager, 12868358, 1)
135
136
137
138#endif
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
A manager class providing access to readout geometry information for the forward calorimeter.
void addModule(FCALModule *fcalModule)
Adds an FCAL Module.
ModulePtr m_Module[2][3]
This is the array in which three modules in two sides are kept.
FCALDetectorManager(const FCALHVManager *hvManager=nullptr)
Constructor.
FCALDetectorManager & operator=(const FCALDetectorManager &right)
std::vector< constFCALModule * >::const_iterator ConstIterator
std::vector< PVLink > m_treeTop
This is the set of tree tops managed by this detector node.
virtual ~FCALDetectorManager() override
Desctructor.
const FCAL_ChannelMap * m_fcal_channel_map
FCALDetectorManager::ConstIterator beginFCAL() const
Iterate over FCAL Modules.
FCALDetectorManager(const FCALDetectorManager &right)
std::vector< const FCALModule * > m_DetList
Vector of FCAL Modules.
FCALDetectorManager::ConstIterator endFCAL() const
Iterate over FCAL Modules.
void addTreeTop(const PVLink &treeTop)
Add a Tree Top.
const FCAL_ChannelMap * getChannelMap() const
Returns the Channel Map.
const FCALModule * getFCAL(FCALModule::Module module, FCALModule::Endcap endcap) const
Retreive a specific FCAL Module.
const FCALHVManager & getHVManager() const
Get the HV Manager:
virtual unsigned int getNumTreeTops() const override
Gets the number of tree tops.
const FCALModule * ModulePtr
const FCALHVManager * m_HVManager
virtual PVConstLink getTreeTop(unsigned int i) const override
Gets the ith tree top.
This class provides direct access to information on the HV electrodes within the barrels.
This class contains the tube and tile maps for the FCAL A tile is of a set of FCAL tubes.