![]() |
QMCPACK
|
Public Member Functions | |
ResourceCollection (const std::string &name) | |
ResourceCollection (const ResourceCollection &) | |
const std::string & | getName () const |
size_t | size () const |
bool | empty () const |
size_t | addResource (std::unique_ptr< Resource > &&res, bool noprint=false) |
void | printResources () const |
template<class RS > | |
ResourceHandle< RS > | lendResource () |
template<class RS > | |
void | takebackResource (ResourceHandle< RS > &res_handle) |
void | rewind (size_t cursor=0) |
Private Member Functions | |
Resource & | lendResourceImpl () |
void | takebackResourceImpl (Resource &res) |
Private Attributes | |
const std::string | name_ |
size_t | cursor_index_ |
std::vector< std::unique_ptr< Resource > > | collection_ |
Definition at line 25 of file ResourceCollection.h.
ResourceCollection | ( | const std::string & | name | ) |
Definition at line 18 of file ResourceCollection.cpp.
ResourceCollection | ( | const ResourceCollection & | ref | ) |
Definition at line 20 of file ResourceCollection.cpp.
References ResourceCollection::addResource(), and ResourceCollection::collection_.
size_t addResource | ( | std::unique_ptr< Resource > && | res, |
bool | noprint = false |
||
) |
Definition at line 36 of file ResourceCollection.cpp.
References qmcplusplus::app_debug_stream(), ResourceCollection::collection_, and ResourceCollection::name_.
Referenced by WFCResourceConsumer::createResource(), SOECPotential::createResource(), VirtualParticleSet::createResource(), SoaDistanceTableAAOMPTarget< T, D, SC >::createResource(), SplineC2COMPTarget< ST >::createResource(), SplineC2ROMPTarget< ST >::createResource(), NonLocalECPotential::createResource(), SoaDistanceTableABOMPTarget< T, D, SC >::createResource(), BareKineticEnergy::createResource(), TwoBodyJastrow< FT >::createResource(), RealSpacePositionsOMPTarget::createResource(), MultiSlaterDetTableMethod::createResource(), SpinorSet::createResource(), SoaLocalizedBasisSet< COT, ORBT >::createResource(), CoulombPBCAB::createResource(), MultiDiracDeterminant::createResource(), LCAOrbitalSet::createResource(), J1OrbitalSoA< FT >::createResource(), DiracDeterminantBatched< PL, VT, FPVT >::createResource(), QMCHamiltonian::createResource(), ParticleSet::createResource(), SoaAtomicBasisSet< ROT, SH >::createResource(), and ResourceCollection::ResourceCollection().
|
inline |
Definition at line 34 of file ResourceCollection.h.
References ResourceCollection::collection_.
|
inline |
Definition at line 31 of file ResourceCollection.h.
References ResourceCollection::name_.
Referenced by ResourceCollection::printResources().
|
inline |
Definition at line 40 of file ResourceCollection.h.
References ResourceCollection::lendResourceImpl().
Referenced by WFCResourceConsumer::acquireResource(), SOECPotential::acquireResource(), VirtualParticleSet::acquireResource(), SoaDistanceTableAAOMPTarget< T, D, SC >::acquireResource(), SplineC2COMPTarget< ST >::acquireResource(), SplineC2ROMPTarget< ST >::acquireResource(), NonLocalECPotential::acquireResource(), SoaDistanceTableABOMPTarget< T, D, SC >::acquireResource(), BareKineticEnergy::acquireResource(), TwoBodyJastrow< FT >::acquireResource(), MultiSlaterDetTableMethod::acquireResource(), RealSpacePositionsOMPTarget::acquireResource(), SpinorSet::acquireResource(), SoaLocalizedBasisSet< COT, ORBT >::acquireResource(), CoulombPBCAB::acquireResource(), MultiDiracDeterminant::acquireResource(), LCAOrbitalSet::acquireResource(), J1OrbitalSoA< FT >::acquireResource(), DiracDeterminantBatched< PL, VT, FPVT >::acquireResource(), QMCHamiltonian::acquireResource(), ParticleSet::acquireResource(), and SoaAtomicBasisSet< ROT, SH >::acquireResource().
|
private |
Definition at line 47 of file ResourceCollection.cpp.
References ResourceCollection::collection_, and ResourceCollection::cursor_index_.
Referenced by ResourceCollection::lendResource().
void printResources | ( | ) | const |
Definition at line 26 of file ResourceCollection.cpp.
References ResourceCollection::collection_, and ResourceCollection::getName().
|
inline |
Definition at line 45 of file ResourceCollection.h.
References ResourceCollection::cursor_index_.
Referenced by ResourceCollectionTeamLock< CONSUMER >::ResourceCollectionTeamLock(), and ResourceCollectionTeamLock< CONSUMER >::~ResourceCollectionTeamLock().
|
inline |
Definition at line 33 of file ResourceCollection.h.
References ResourceCollection::collection_.
|
inline |
Definition at line 43 of file ResourceCollection.h.
References ResourceHandle< RS >::release(), and ResourceCollection::takebackResourceImpl().
Referenced by WFCResourceConsumer::releaseResource(), SOECPotential::releaseResource(), VirtualParticleSet::releaseResource(), SplineC2COMPTarget< ST >::releaseResource(), SplineC2ROMPTarget< ST >::releaseResource(), NonLocalECPotential::releaseResource(), BareKineticEnergy::releaseResource(), SoaDistanceTableAAOMPTarget< T, D, SC >::releaseResource(), SoaDistanceTableABOMPTarget< T, D, SC >::releaseResource(), TwoBodyJastrow< FT >::releaseResource(), MultiSlaterDetTableMethod::releaseResource(), SpinorSet::releaseResource(), SoaLocalizedBasisSet< COT, ORBT >::releaseResource(), RealSpacePositionsOMPTarget::releaseResource(), CoulombPBCAB::releaseResource(), MultiDiracDeterminant::releaseResource(), LCAOrbitalSet::releaseResource(), J1OrbitalSoA< FT >::releaseResource(), DiracDeterminantBatched< PL, VT, FPVT >::releaseResource(), QMCHamiltonian::releaseResource(), ParticleSet::releaseResource(), and SoaAtomicBasisSet< ROT, SH >::releaseResource().
|
private |
Definition at line 57 of file ResourceCollection.cpp.
References ResourceCollection::collection_, ResourceCollection::cursor_index_, and Resource::index_in_collection_.
Referenced by ResourceCollection::takebackResource().
|
private |
Definition at line 52 of file ResourceCollection.h.
Referenced by ResourceCollection::addResource(), ResourceCollection::empty(), ResourceCollection::lendResourceImpl(), ResourceCollection::printResources(), ResourceCollection::ResourceCollection(), ResourceCollection::size(), and ResourceCollection::takebackResourceImpl().
|
private |
Definition at line 51 of file ResourceCollection.h.
Referenced by ResourceCollection::lendResourceImpl(), ResourceCollection::rewind(), and ResourceCollection::takebackResourceImpl().
|
private |
Definition at line 50 of file ResourceCollection.h.
Referenced by ResourceCollection::addResource(), and ResourceCollection::getName().