ATLAS Offline Software
MdtCsmContainer.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 #ifndef MUONRDO_MDTCSMCONTAINER_H
6 #define MUONRDO_MDTCSMCONTAINER_H
7 
8 
9 #include <vector>
10 #include <string>
11 #include "MuonRDO/MdtCsm.h"
12 #include "MuonRDO/MdtCsmIdHash.h"
13 #include "MuonRDO/MdtCsm_Cache.h"
14 #include "AthenaKernel/CLASS_DEF.h"
16 
17 
22  :public IdentifiableContainer<MdtCsm> {
23 public:
24  MdtCsmContainer() ;
25  MdtCsmContainer( unsigned int hashmax) ;
26  MdtCsmContainer( MdtCsm_Cache* cache );
28 
31 
32  size_type digit_size() const ;
33 
35  static unsigned int idToHash(unsigned int id) ;
36 
37  // IdentifiableContainer is still a DataObject
38  // Put CLID here.
39  static const CLID& classID();
40 
42  virtual const CLID& clID() const
43  {
44  return classID();
45  }
46 
47 private:
48 
49  static const MdtCsmIdHash& hashFcn();
50 
51 };
52 
54 
55 // Output stream.
56 std::ostream& operator<<(std::ostream& lhs, const MdtCsmContainer& rhs);
57 
58 
59 #endif // MUONRDO_MDTCSMCONTAINER_H
MdtCsmContainer::hashFcn
static const MdtCsmIdHash & hashFcn()
Definition: MdtCsmContainer.cxx:66
IdentifiableContainerMT::size_type
std::vector< std::atomic< const void * > >::size_type size_type
Definition: IdentifiableContainerMT.h:72
MdtCsmContainer
This container provides acces to the MDT RDOs.
Definition: MdtCsmContainer.h:22
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
MdtCsm_Cache.h
MdtCsmIdHash.h
MdtCsmContainer::classID
static const CLID & classID()
Definition: MdtCsmContainer.cxx:75
MdtCsmContainer::size_type
MdtCsm::size_type size_type
Definition: MdtCsmContainer.h:29
MdtCsmIdHash
Hash function for Mdt module Identifier to be used in MdtDigitContainer (IdentifiableContainer)
Definition: MdtCsmIdHash.h:17
MdtCsmContainer::clID
virtual const CLID & clID() const
return class ID
Definition: MdtCsmContainer.h:42
MdtCsmContainer::MyBase
IdentifiableContainer< MdtCsm > MyBase
Definition: MdtCsmContainer.h:30
MdtCsmContainer::digit_size
size_type digit_size() const
Definition: MdtCsmContainer.cxx:85
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
MdtCsmContainer::MdtCsmContainer
MdtCsmContainer()
Definition: MdtCsmContainer.cxx:29
MdtCsm.h
MdtCsmContainer::idToHash
static unsigned int idToHash(unsigned int id)
Convert identifier to idhash.
Definition: MdtCsmContainer.cxx:59
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
IdentifiableContainerMT
Definition: IdentifiableContainerMT.h:30
MdtCsmContainer::~MdtCsmContainer
~MdtCsmContainer()
DataVector< MdtAmtHit >::size_type
BASE::size_type size_type
Definition: DataVector.h:813
CLASS_DEF.h
macros to associate a CLID to a type
EventContainers::IdentifiableCache
Definition: IdentifiableCache.h:29
IdentifiableContainer.h
This class is a general container which can hold objects of accessed by an IdentifierHash For more in...