36#ifndef G4NAVIGATIONHISTORYPOOL_HH
37#define G4NAVIGATIONHISTORYPOOL_HH
53 inline std::vector<G4NavigationLevel> *
GetLevels();
57 inline void DeRegister(std::vector<G4NavigationLevel> * pLevels);
74 inline void Register(std::vector<G4NavigationLevel> * pLevels);
84 std::vector<std::vector<G4NavigationLevel> *> fPool;
85 std::vector<std::vector<G4NavigationLevel> *> fFree;
92inline void G4NavigationHistoryPool::
93Register(std::vector<G4NavigationLevel> * pLevels)
95 fPool.push_back(pLevels);
103DeRegister(std::vector<G4NavigationLevel> * pLevels)
105 fFree.push_back(pLevels);
114 std::vector<G4NavigationLevel> * aLevelVec =
115 new std::vector<G4NavigationLevel>(kHistoryMax);
128 std::vector<G4NavigationLevel> * levels = 0;
130 if (fFree.size() !=0)
132 levels = fFree.back();
std::vector< G4NavigationLevel > * GetNewLevels()
static G4NavigationHistoryPool * GetInstance()
void DeRegister(std::vector< G4NavigationLevel > *pLevels)
~G4NavigationHistoryPool()
std::vector< G4NavigationLevel > * GetLevels()