ATLAS Offline Software
sTgcDigitContainer.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 // sTgcDigitContainer.h
6 
7 #ifndef MUONDIGITCONTAINER_STGCDIGITCONAINTER_H
8 #define MUONDIGITCONTAINER_STGCDIGITCONAINTER_H
9 
10 // Nektarios Chr. Benekos
11 // March 2013
12 //
13 // Muon digit container.
14 //
15 // This container provides access to muon digits and provides
16 // a mechanism for recording them.
17 //
18 // Converters will enable reading from raw data, zebra and
19 // conventional StoreGate technologies (Objectivty, root).
20 // They will also enable writing to all but zebra.
21 //
22 // Usage:
23 //
24 // // Create module ID's.
25 // sTgcModuleId bil11(BIL,1,1);
26 // sTgcModuleId bml11(BML,1,1);
27 // sTgcModuleId bol11(BOL,1,1);
28 // // Insert some digits.
29 // digs.push_back(sTgcDigit(sTgcChannelId(bil11, 0, 0, 8), 101));
30 // digs.push_back(sTgcDigit(sTgcChannelId(bil11, 0, 1, 16), 101));
31 // digs.push_back(sTgcDigit(sTgcChannelId(bml11, 1, 0, 12), 72));
32 // // Check subcontainers.
33 // assert( digs.digits(bil11).size() == 2 );
34 // assert( digs.digits(bml11).size() == 1 );
35 // assert( digs.digits(bol11).size() == 0 );
36 
41 #include <vector>
42 #include <string>
44 #include "AthenaKernel/CLASS_DEF.h"
46 
47 
49 :public IdentifiableContainer<sTgcDigitCollection>
50 {
51  public:
53 
54  sTgcDigitContainer(unsigned int hash_max) ;
56 
59 
60  size_type digit_size() const ;
61 
62  // IdentifiableContainer is still a DataObject
63  // Put CLID here.
64  static const CLID& classID();
65 
67  virtual const CLID& clID() const
68  {
69  return classID();
70  }
71 
72  private:
73 
74 
75 };
76 
77 CLASS_DEF(sTgcDigitContainer,1116553201,0)
78 
79 // Output stream.
80  std::ostream& operator<<(std::ostream& lhs, const sTgcDigitContainer& rhs);
81 
82 #endif
83 
84 
sTgcDigitContainer
Use IdentifiableContainer with sTgcDigitCollection.
Definition: sTgcDigitContainer.h:50
sTgcDigitContainer::classID
static const CLID & classID()
Definition: sTgcDigitContainer.cxx:46
IdentifiableContainerMT::size_type
std::vector< std::atomic< const void * > >::size_type size_type
Definition: IdentifiableContainerMT.h:72
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
sTgcDigitContainer::sTgcDigitContainer
sTgcDigitContainer()
Definition: sTgcDigitContainer.cxx:23
sTgcDigitContainer::MyBase
IdentifiableContainer< sTgcDigitCollection > MyBase
Definition: sTgcDigitContainer.h:58
sTgcDigitContainer::digit_size
size_type digit_size() const
Definition: sTgcDigitContainer.cxx:55
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
sTgcDigitContainer::clID
virtual const CLID & clID() const
return class ID
Definition: sTgcDigitContainer.h:67
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
sTgcDigitCollection.h
IdentifiableContainerMT
Definition: IdentifiableContainerMT.h:30
sTgcDigitContainer::~sTgcDigitContainer
~sTgcDigitContainer()
DataVector< sTgcDigit >::size_type
BASE::size_type size_type
Definition: DataVector.h:813
sTgcDigitContainer::size_type
sTgcDigitCollection::size_type size_type
Definition: sTgcDigitContainer.h:57
CLASS_DEF.h
macros to associate a CLID to a type
IdentifiableContainer.h
This class is a general container which can hold objects of accessed by an IdentifierHash For more in...