Geant4  10.02.p03
G4HCIOcatalog Class Reference

#include <G4HCIOcatalog.hh>

Collaboration diagram for G4HCIOcatalog:

Public Member Functions

 G4HCIOcatalog ()
 
virtual ~G4HCIOcatalog ()
 
void SetVerboseLevel (int v)
 
void RegisterEntry (G4VHCIOentry *d)
 
void RegisterHCIOmanager (G4VPHitsCollectionIO *d)
 
G4VHCIOentryGetEntry (std::string name)
 
G4VPHitsCollectionIOGetHCIOmanager (std::string name)
 
void PrintEntries ()
 
std::string CurrentHCIOmanager ()
 
void PrintHCIOmanager ()
 
size_t NumberOfHCIOmanager ()
 
G4VPHitsCollectionIOGetHCIOmanager (int n)
 

Static Public Member Functions

static G4HCIOcatalogGetHCIOcatalog ()
 

Private Attributes

int m_verbose
 
HCIOmap theCatalog
 
HCIOstore theStore
 

Static Private Attributes

static G4ThreadLocal G4HCIOcatalogf_thePointer = 0
 

Detailed Description

Definition at line 47 of file G4HCIOcatalog.hh.

Constructor & Destructor Documentation

◆ G4HCIOcatalog()

G4HCIOcatalog::G4HCIOcatalog ( )

Definition at line 39 of file G4HCIOcatalog.cc.

40  : m_verbose(0)
41 {}
Here is the caller graph for this function:

◆ ~G4HCIOcatalog()

virtual G4HCIOcatalog::~G4HCIOcatalog ( )
inlinevirtual

Definition at line 53 of file G4HCIOcatalog.hh.

53 {};
Here is the call graph for this function:

Member Function Documentation

◆ CurrentHCIOmanager()

std::string G4HCIOcatalog::CurrentHCIOmanager ( )

Definition at line 116 of file G4HCIOcatalog.cc.

117 {
118  std::string list = "";
119  HCIOstore::const_iterator it;
120  for ( it=theStore.begin(); it != theStore.end(); it++ ) {
121  list += (*it).first + " ";
122  }
123  return list;
124 }
HCIOstore theStore
Here is the caller graph for this function:

◆ GetEntry()

G4VHCIOentry * G4HCIOcatalog::GetEntry ( std::string  name)

Definition at line 79 of file G4HCIOcatalog.cc.

80 {
81  if ( theCatalog.find(name) == theCatalog.end() ) {
82  G4cout << "Hit Collection I/O manager entry \"" << name
83  << "\" not found!" << std::endl;
84  return 0;
85  } else {
87  return ds;
88  }
89 }
G4String name
Definition: TRTMaterials.hh:40
G4GLOB_DLL std::ostream G4cout
HCIOmap theCatalog
Here is the caller graph for this function:

◆ GetHCIOcatalog()

G4HCIOcatalog * G4HCIOcatalog::GetHCIOcatalog ( )
static

Definition at line 44 of file G4HCIOcatalog.cc.

45 {
46  if ( f_thePointer == 0 ) f_thePointer = new G4HCIOcatalog;
47  return f_thePointer;
48 }
static G4ThreadLocal G4HCIOcatalog * f_thePointer
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetHCIOmanager() [1/2]

G4VPHitsCollectionIO * G4HCIOcatalog::GetHCIOmanager ( std::string  name)

Definition at line 92 of file G4HCIOcatalog.cc.

93 {
94  if ( theStore.find(name) == theStore.end() ) {
95  G4cout << "Hit Collection I/O manager \"" << name
96  << "\" not found!" << G4endl;
97  return 0;
98  } else {
100  return ds;
101  }
102 }
G4String name
Definition: TRTMaterials.hh:40
HCIOstore theStore
G4GLOB_DLL std::ostream G4cout
#define G4endl
Definition: G4ios.hh:61
Here is the caller graph for this function:

◆ GetHCIOmanager() [2/2]

G4VPHitsCollectionIO * G4HCIOcatalog::GetHCIOmanager ( int  n)

Definition at line 139 of file G4HCIOcatalog.cc.

140 {
141  int i = 0;
142  HCIOstore::const_iterator it;
143  for ( it=theStore.begin(); it != theStore.end(); it++ ) {
144  if (i++ == n) return (*it).second;
145  }
146  return 0;
147 }
HCIOstore theStore
Char_t n[5]

◆ NumberOfHCIOmanager()

size_t G4HCIOcatalog::NumberOfHCIOmanager ( )
inline

Definition at line 84 of file G4HCIOcatalog.hh.

84 { return theStore.size(); };
HCIOstore theStore
Here is the call graph for this function:
Here is the caller graph for this function:

◆ PrintEntries()

void G4HCIOcatalog::PrintEntries ( )

Definition at line 105 of file G4HCIOcatalog.cc.

106 {
107  G4cout << "I/O manager entries: ";
108  G4cout << theCatalog.size() << G4endl;
109  HCIOmap::const_iterator it;
110  for ( it=theCatalog.begin(); it != theCatalog.end(); it++ ) {
111  G4cout << " --- " << (*it).first << G4endl;
112  }
113 }
G4GLOB_DLL std::ostream G4cout
HCIOmap theCatalog
#define G4endl
Definition: G4ios.hh:61
Here is the caller graph for this function:

◆ PrintHCIOmanager()

void G4HCIOcatalog::PrintHCIOmanager ( )

Definition at line 127 of file G4HCIOcatalog.cc.

128 {
129  G4cout << "I/O managers: ";
130  G4cout << theStore.size() << G4endl;
131  HCIOstore::const_iterator it;
132  for ( it=theStore.begin(); it != theStore.end(); it++ ) {
133  G4cout << " --- " << (*it).first
134  << ", " << (*it).second << "." << G4endl;
135  }
136 }
HCIOstore theStore
G4GLOB_DLL std::ostream G4cout
#define G4endl
Definition: G4ios.hh:61
Here is the caller graph for this function:

◆ RegisterEntry()

void G4HCIOcatalog::RegisterEntry ( G4VHCIOentry d)

Definition at line 51 of file G4HCIOcatalog.cc.

52 {
53  if ( m_verbose > 0 ) {
54  G4cout << "registering I/O manager entry \"" << d->GetName()
55  << "\" " << d << "." << G4endl;
56  }
57  if ( theCatalog.find(d->GetName()) != theCatalog.end() ) {
58  G4cout << "Redefining I/O Managers list " << d->GetName() << G4endl;
59  } else {
60  theCatalog[d->GetName()] = d;
61  }
62 }
std::string GetName()
Definition: G4VHCIOentry.hh:54
Float_t d
G4GLOB_DLL std::ostream G4cout
HCIOmap theCatalog
#define G4endl
Definition: G4ios.hh:61
Here is the call graph for this function:
Here is the caller graph for this function:

◆ RegisterHCIOmanager()

void G4HCIOcatalog::RegisterHCIOmanager ( G4VPHitsCollectionIO d)

Definition at line 65 of file G4HCIOcatalog.cc.

66 {
67  if ( m_verbose > 0 ) {
68  G4cout << "registering I/O manager \"" << d->SDname()
69  << "\" " << d << "." << G4endl;
70  }
71  if ( theStore.find(d->SDname()) != theStore.end() ) {
72  G4cout << "Redefining I/O Manager " << d->SDname() << G4endl;
73  } else {
74  theStore[d->SDname()] = d;
75  }
76 }
Float_t d
HCIOstore theStore
G4GLOB_DLL std::ostream G4cout
#define G4endl
Definition: G4ios.hh:61
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetVerboseLevel()

void G4HCIOcatalog::SetVerboseLevel ( int  v)
inline

Definition at line 60 of file G4HCIOcatalog.hh.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ f_thePointer

G4ThreadLocal G4HCIOcatalog * G4HCIOcatalog::f_thePointer = 0
staticprivate

Definition at line 92 of file G4HCIOcatalog.hh.

◆ m_verbose

int G4HCIOcatalog::m_verbose
private

Definition at line 91 of file G4HCIOcatalog.hh.

◆ theCatalog

HCIOmap G4HCIOcatalog::theCatalog
private

Definition at line 93 of file G4HCIOcatalog.hh.

◆ theStore

HCIOstore G4HCIOcatalog::theStore
private

Definition at line 94 of file G4HCIOcatalog.hh.


The documentation for this class was generated from the following files: