ATLAS Offline Software
BuildH6HitCollections.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // BuildH6HitCollections
6 // 10-Nov-2003 Bill Seligman
7 
8 // Transform the internal LArG4 hit collections into the external form
9 // needed by AtlasG4Sim.
10 
11 // 09-Feb-2004 WGS: Include the possibility of building calibration hits.
12 
13 #ifndef LArG4_BuildH6HitCollections_H
14 #define LArG4_BuildH6HitCollections_H
15 
16 #include "LArSimEvent/LArHit.h"
20 
21 #include <vector>
22 
23 // Forward declarations
24 class LArEM_ID;
25 class LArFCAL_ID;
26 class LArHEC_ID;
27 class CaloDM_ID;
28 class IMessageSvc;
29 class Identifier;
30 class LArG4Identifier;
31 
32 namespace LArG4 {
33 
35  {
36  public:
37 
38  // Constructor and destructor
41 
42  // The meat of this class: Build a vector of the different hit
43  // collections associated with this event.
44  typedef LArHitContainer hitCollection_t; // define a type
45  virtual void ChangeHitCollections(LArHitContainer* emecHitContainer, LArHitContainer* hecHitContainer ); // a method that uses the type
46 
47  // A separate routine for the (optional) calibration hits.
49  virtual std::vector<calibCollection_t*> CreateCalibrationHitCollections();
50 
51  // Utility routine shared by the above methods: convert a
52  // LArG4Identifier (used internally solely by LArG4) to a standard
53  // Athena Identifier.
55 
56  protected:
57  // These data members are protected, not private, so that a class
58  // in the testbeam code can inherit from this class and use these
59  // members.
60 
61  // We have to convert hit identifiers. These private members save
62  // the location of the identifier helper classes.
67 
68  // Pointer to Athena message service.
69  IMessageSvc* m_msgSvc;
70 
71  };
72 
73 } // namespace LArG4
74 
75 #endif // LArG4_BuildH6HitCollections_H
CaloCalibrationHitContainer
Definition: CaloCalibrationHitContainer.h:25
LArG4Identifier
Definition: LArG4Identifier.h:121
LArG4::BuildH6HitCollections::ConvertID
virtual Identifier ConvertID(const LArG4Identifier &)
LArG4::BuildH6HitCollections::BuildH6HitCollections
BuildH6HitCollections()
CaloCalibrationHit.h
LArG4::BuildH6HitCollections::m_larFcalID
const LArFCAL_ID * m_larFcalID
Definition: BuildH6HitCollections.h:64
LArG4::BuildH6HitCollections::ChangeHitCollections
virtual void ChangeHitCollections(LArHitContainer *emecHitContainer, LArHitContainer *hecHitContainer)
LArHEC_ID
Helper class for LArHEC offline identifiers.
Definition: LArHEC_ID.h:85
LArHitContainer
Hit collection.
Definition: LArHitContainer.h:26
LArG4
Definition: LArWheelCalculatorEnums.h:8
CaloCalibrationHitContainer.h
LArG4::BuildH6HitCollections::m_larEmID
const LArEM_ID * m_larEmID
Definition: BuildH6HitCollections.h:63
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
LArG4::BuildH6HitCollections::m_larHecID
const LArHEC_ID * m_larHecID
Definition: BuildH6HitCollections.h:65
LArG4::BuildH6HitCollections::hitCollection_t
LArHitContainer hitCollection_t
Definition: BuildH6HitCollections.h:44
LArG4::BuildH6HitCollections::calibCollection_t
CaloCalibrationHitContainer calibCollection_t
Definition: BuildH6HitCollections.h:48
LArG4::BuildH6HitCollections::~BuildH6HitCollections
virtual ~BuildH6HitCollections()
LArG4::BuildH6HitCollections::CreateCalibrationHitCollections
virtual std::vector< calibCollection_t * > CreateCalibrationHitCollections()
LArG4::BuildH6HitCollections::m_caloDmID
const CaloDM_ID * m_caloDmID
Definition: BuildH6HitCollections.h:66
LArG4::BuildH6HitCollections
Definition: BuildH6HitCollections.h:35
LArHit.h
LArHitContainer.h
LArG4::BuildH6HitCollections::m_msgSvc
IMessageSvc * m_msgSvc
Definition: BuildH6HitCollections.h:69
CaloDM_ID
Helper class for Calo Dead Material offline identifiers.
Definition: CaloDM_ID.h:102
LArEM_ID
Helper class for LArEM offline identifiers.
Definition: LArEM_ID.h:118
LArFCAL_ID
Helper class for LArFCAL offline identifiers.
Definition: LArFCAL_ID.h:60