Geant4.10
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
geant4.10.00.p01
examples
extended
parallel
TopC
ParN02
AnnotatedFiles
examples/extended/parallel/TopC/ParN02/AnnotatedFiles/G4HCofThisEvent.hh
Go to the documentation of this file.
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
26
/// \file parallel/ParN02/AnnotatedFiles/G4HCofThisEvent.hh
27
/// \brief Definition of the G4HCofThisEvent class
28
//
29
//
30
// $Id: G4HCofThisEvent.hh 66241 2012-12-13 18:34:42Z gunter $
31
//
32
33
#ifndef G4HCofThisEvent_h
34
#define G4HCofThisEvent_h 1
35
36
#include "
globals.hh
"
37
#include "
G4Allocator.hh
"
38
#include "
G4VHitsCollection.hh
"
39
#include <vector>
40
41
// class description:
42
//
43
// This is a class which stores hits collections generated at one event.
44
// This class is exclusively constructed by G4SDManager when the first
45
// hits collection of an event is passed to the manager, and this class
46
// object is deleted by G4RunManager when a G4Event class object is deleted.
47
// Almost all public methods must be used by Geant4 kernel classes and
48
// the user should not invoke them. The user can use two const methods,
49
// GetHC() and GetNumberOfCollections() for accessing to the stored hits
50
// collection(s).
51
52
53
//vietha 2003/04/26 , include files needed to copy to the beginning of MarshaledG4HCofThisEvent.h
54
// in order to compile
55
//MSH_include_begin
56
#include "
G4SDManager.hh
"
57
#include "
G4THitsCollection.hh
"
58
#include "
ExN02TrackerHit.hh
"
59
#include "
MarshaledExN02TrackerHit.h
"
60
#include "
MarshaledG4THitsCollection.h
"
61
#include "
MarshaledG4VHitsCollection.h
"
62
//MSH_include_end
63
//MSH_BEGIN
64
class
G4HCofThisEvent
65
{
66
public
:
67
G4HCofThisEvent
();
68
G4HCofThisEvent
(
G4int
cap);
69
~G4HCofThisEvent
();
70
inline
void
*
operator
new
(size_t);
71
inline
void
operator
delete
(
void
* anHCoTE);
72
73
void
AddHitsCollection
(
G4int
HCID,
G4VHitsCollection
* aHC);
74
75
private
:
76
std::vector<G4VHitsCollection*> * HC;
/*MSH: ptr_as_array
77
[elementType: G4VHitsCollection*]
78
[elementCount: { $ELE_COUNT = $THIS->GetNumberOfCollections(); }]
79
[elementGet: { $ELEMENT = $THIS->GetHC($ELE_INDEX); }]
80
[elementSet: { $THIS->AddHitsCollection($ELE_INDEX, $ELEMENT); }] */
81
82
public
:
// with description
83
inline
G4VHitsCollection
*
GetHC
(
G4int
i)
84
{
return
(*HC)[i]; }
85
// Returns a pointer to a hits collection. Null will be returned
86
// if the particular collection is not stored at the current event.
87
// The integer argument is ID number which is assigned by G4SDManager
88
// and the number can be obtained by G4SDManager::GetHitsCollectionID()
89
// method.
90
inline
G4int
GetNumberOfCollections
()
91
{
92
G4int
n
= 0;
93
for
(
size_t
i=0;i<HC->size();i++)
94
{
95
if
((*HC)[i]) n++;
96
}
97
return
n
;
98
}
99
// Returns the number of hits collections which are stored in this class
100
// object.
101
public
:
102
inline
G4int
GetCapacity
()
103
{
104
return
HC->size();
105
}
106
};
107
//MSH_END
108
109
#if defined G4DIGI_ALLOC_EXPORT
110
extern
G4DLLEXPORT
G4Allocator<G4HCofThisEvent>
anHCoTHAllocator
;
111
#else
112
extern
G4DLLIMPORT
G4Allocator<G4HCofThisEvent>
anHCoTHAllocator
;
113
#endif
114
115
inline
void
* G4HCofThisEvent::operator
new
(size_t)
116
{
117
void
* anHCoTH;
118
anHCoTH = (
void
*)
anHCoTHAllocator
.MallocSingle();
119
return
anHCoTH;
120
}
121
122
inline
void
G4HCofThisEvent::operator
delete
(
void
* anHCoTH)
123
{
124
anHCoTHAllocator
.FreeSingle((
G4HCofThisEvent
*)anHCoTH);
125
}
126
127
128
#endif
129
G4HCofThisEvent::GetHC
G4VHitsCollection * GetHC(G4int i)
Definition:
examples/extended/parallel/TopC/ParN02/AnnotatedFiles/G4HCofThisEvent.hh:83
G4DLLEXPORT
#define G4DLLEXPORT
Definition:
G4Types.hh:62
G4DLLIMPORT
#define G4DLLIMPORT
Definition:
G4Types.hh:63
MarshaledG4VHitsCollection.h
G4HCofThisEvent::~G4HCofThisEvent
~G4HCofThisEvent()
Definition:
G4HCofThisEvent.cc:48
G4VHitsCollection
Definition:
examples/extended/parallel/TopC/ParN02/AnnotatedFiles/G4VHitsCollection.hh:49
G4int
int G4int
Definition:
G4Types.hh:78
G4Allocator.hh
G4VHitsCollection.hh
G4THitsCollection.hh
G4SDManager.hh
G4HCofThisEvent::GetCapacity
G4int GetCapacity()
Definition:
examples/extended/parallel/TopC/ParN02/AnnotatedFiles/G4HCofThisEvent.hh:102
MarshaledG4THitsCollection.h
n
const G4int n
Definition:
G4UrQMD1_3Interface.hh:144
globals.hh
G4HCofThisEvent::AddHitsCollection
void AddHitsCollection(G4int HCID, G4VHitsCollection *aHC)
Definition:
G4HCofThisEvent.cc:57
ExN02TrackerHit.hh
G4Allocator
Definition:
G4Allocator.hh:65
G4HCofThisEvent
Definition:
examples/extended/parallel/TopC/ParN02/AnnotatedFiles/G4HCofThisEvent.hh:64
G4HCofThisEvent::G4HCofThisEvent
G4HCofThisEvent()
Definition:
G4HCofThisEvent.cc:34
anHCoTHAllocator
G4DLLIMPORT G4Allocator< G4HCofThisEvent > anHCoTHAllocator
MarshaledExN02TrackerHit.h
G4HCofThisEvent::GetNumberOfCollections
G4int GetNumberOfCollections()
Definition:
examples/extended/parallel/TopC/ParN02/AnnotatedFiles/G4HCofThisEvent.hh:90
Generated on Wed Apr 30 2014 15:54:48 for Geant4.10 by
1.8.7