ATLAS Offline Software
CaloCell_SuperCell_ID.h
Go to the documentation of this file.
1 // This file's extension implies that it's C, but it's really -*- C++ -*-.
2 /*
3  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
4 */
13 #ifndef CALOIDENTIFIER_CALOCELL_SUPERCELL_ID_H
14 #define CALOIDENTIFIER_CALOCELL_SUPERCELL_ID_H
15 
16 
17 #include "AthenaKernel/CLASS_DEF.h"
20 
21 #include "CaloIdentifier/CaloID.h"
24 #include "AthenaKernel/BaseInfo.h"
25 
26 #include <vector>
27 #include <iostream>
28 
29 
30 class IdentifierHash;
31 class CaloNeighbours;
32 
45 {
46 
47 public:
48 
50 
53  const LArHEC_SuperCell_ID* hec_id,
54  const LArFCAL_SuperCell_ID* fcal_id,
55  const LArMiniFCAL_ID* minifcal_id,
56  const Tile_SuperCell_ID* tile_id) ;
57 
59 
60 
64  {
65  return static_cast<const LArEM_SuperCell_ID*>
67  }
71  {
72  return static_cast<const LArHEC_SuperCell_ID*>
74  }
78  {
79  return static_cast<const LArFCAL_SuperCell_ID*>
81  }
85  {
86  return static_cast<const Tile_SuperCell_ID*>
88  }
89 };
90 
91 //This is required and checked at compile time when you try to record/retrieve
92 CLASS_DEF( CaloCell_SuperCell_ID , 128365736 , 1 )
94 
95 
96 
97 
98 #endif // not CALOIDENTIFIER_CALOCELL_SUPERCELL_ID_H
LArFCAL_SuperCell_ID
Helper class for LArFCAL offline identifiers for supercells.
Definition: LArFCAL_SuperCell_ID.h:48
CaloID.h
SG_BASE
SG_BASE(CaloCell_SuperCell_ID, CaloCell_Base_ID)
Tile_SuperCell_ID
Helper class for Tile offline identifiers for supercells.
Definition: Tile_SuperCell_ID.h:61
CaloCell_SuperCell_ID::CaloCell_SuperCell_ID
CaloCell_SuperCell_ID(const LArEM_SuperCell_ID *em_id, const LArHEC_SuperCell_ID *hec_id, const LArFCAL_SuperCell_ID *fcal_id, const LArMiniFCAL_ID *minifcal_id, const Tile_SuperCell_ID *tile_id)
Constructor.
Definition: CaloCell_SuperCell_ID.cxx:15
CaloCell_Base_ID::fcal_idHelper
const LArFCAL_Base_ID * fcal_idHelper() const
access to FCAL idHelper
Definition: CaloCell_Base_ID.h:341
CaloCell_SuperCell_ID::fcal_idHelper
const LArFCAL_SuperCell_ID * fcal_idHelper() const
access to FCAL idHelper
Definition: CaloCell_SuperCell_ID.h:77
CaloCell_Base_ID::em_idHelper
const LArEM_Base_ID * em_idHelper() const
access to EM idHelper
Definition: CaloCell_Base_ID.h:330
AtlasDetectorID.h
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
LArEM_SuperCell_ID
Helper class for LArEM offline identifiers for supercells.
Definition: LArEM_SuperCell_ID.h:119
CaloCell_SuperCell_ID
Helper class for offline supercell identifiers.
Definition: CaloCell_SuperCell_ID.h:45
BaseInfo.h
Provide an interface for finding inheritance information at run time.
CaloNeighbours
Definition: CaloNeighbours.h:92
CaloCell_Base_ID.h
Helper base class for offline cell identifiers.
IdentifierHash.h
CaloCell_SuperCell_ID::~CaloCell_SuperCell_ID
~CaloCell_SuperCell_ID()
LArMiniFCAL_ID
Helper class for LArMiniFCAL offline identifiers.
Definition: LArMiniFCAL_ID.h:57
CaloCell_SuperCell_ID::hec_idHelper
const LArHEC_SuperCell_ID * hec_idHelper() const
access to HEC idHelper
Definition: CaloCell_SuperCell_ID.h:70
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition: Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:67
CaloCell_SuperCell_ID::size_type
CaloCell_Base_ID::size_type size_type
Definition: CaloCell_SuperCell_ID.h:49
LArHEC_SuperCell_ID
Helper class for LArHEC offline identifiers for supercells.
Definition: LArHEC_SuperCell_ID.h:56
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
CaloCell_SuperCell_ID::tile_idHelper
const Tile_SuperCell_ID * tile_idHelper() const
access to FCAL idHelper
Definition: CaloCell_SuperCell_ID.h:84
LArNeighbours.h
CaloCell_Base_ID
Helper base class for offline cell identifiers.
Definition: CaloCell_Base_ID.h:38
CaloCell_SuperCell_ID::em_idHelper
const LArEM_SuperCell_ID * em_idHelper() const
access to EM idHelper
Definition: CaloCell_SuperCell_ID.h:63
CLASS_DEF.h
macros to associate a CLID to a type
CaloCell_Base_ID::size_type
Identifier::size_type size_type
Definition: CaloCell_Base_ID.h:40
CaloCell_Base_ID::tile_idHelper
const Tile_Base_ID * tile_idHelper() const
access to Tile idHelper
Definition: CaloCell_Base_ID.h:353
CaloCell_Base_ID::hec_idHelper
const LArHEC_Base_ID * hec_idHelper() const
access to HEC idHelper
Definition: CaloCell_Base_ID.h:335