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 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // $Id$
16 #ifndef CALOIDENTIFIER_CALOCELL_SUPERCELL_ID_H
17 #define CALOIDENTIFIER_CALOCELL_SUPERCELL_ID_H
18 
19 
20 #include "AthenaKernel/CLASS_DEF.h"
23 
24 #include "CaloIdentifier/CaloID.h"
27 #include "AthenaKernel/BaseInfo.h"
28 
29 #include <vector>
30 #include <iostream>
31 
32 
33 class IdentifierHash;
34 class CaloNeighbours;
35 
48 {
49 
50 public:
51 
53 
56  const LArHEC_SuperCell_ID* hec_id,
57  const LArFCAL_SuperCell_ID* fcal_id,
58  const LArMiniFCAL_ID* minifcal_id,
59  const Tile_SuperCell_ID* tile_id) ;
60 
62 
63 
67  {
68  return static_cast<const LArEM_SuperCell_ID*>
70  }
74  {
75  return static_cast<const LArHEC_SuperCell_ID*>
77  }
81  {
82  return static_cast<const LArFCAL_SuperCell_ID*>
84  }
88  {
89  return static_cast<const Tile_SuperCell_ID*>
91  }
92 };
93 
94 //This is required and checked at compile time when you try to record/retrieve
95 CLASS_DEF( CaloCell_SuperCell_ID , 128365736 , 1 )
97 
98 
99 
100 
101 #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:64
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:17
CaloCell_Base_ID::fcal_idHelper
const LArFCAL_Base_ID * fcal_idHelper() const
access to FCAL idHelper
Definition: CaloCell_Base_ID.h:343
CaloCell_SuperCell_ID::fcal_idHelper
const LArFCAL_SuperCell_ID * fcal_idHelper() const
access to FCAL idHelper
Definition: CaloCell_SuperCell_ID.h:80
CaloCell_Base_ID::em_idHelper
const LArEM_Base_ID * em_idHelper() const
access to EM idHelper
Definition: CaloCell_Base_ID.h:332
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:122
CaloCell_SuperCell_ID
Helper class for offline supercell identifiers.
Definition: CaloCell_SuperCell_ID.h:48
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.
CaloCell_SuperCell_ID::~CaloCell_SuperCell_ID
~CaloCell_SuperCell_ID(void)
IdentifierHash.h
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:73
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:64
CaloCell_SuperCell_ID::size_type
CaloCell_Base_ID::size_type size_type
Definition: CaloCell_SuperCell_ID.h:52
LArHEC_SuperCell_ID
Helper class for LArHEC offline identifiers for supercells.
Definition: LArHEC_SuperCell_ID.h:59
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:87
LArNeighbours.h
CaloCell_Base_ID
Helper base class for offline cell identifiers.
Definition: CaloCell_Base_ID.h:41
CaloCell_SuperCell_ID::em_idHelper
const LArEM_SuperCell_ID * em_idHelper() const
access to EM idHelper
Definition: CaloCell_SuperCell_ID.h:66
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:43
CaloCell_Base_ID::tile_idHelper
const Tile_Base_ID * tile_idHelper() const
access to Tile idHelper
Definition: CaloCell_Base_ID.h:355
CaloCell_Base_ID::hec_idHelper
const LArHEC_Base_ID * hec_idHelper() const
access to HEC idHelper
Definition: CaloCell_Base_ID.h:337