diff --git a/src/QMCWaveFunctions/SPOSetT.h b/src/QMCWaveFunctions/SPOSetT.h index 9da3df7e03..a985df0183 100644 --- a/src/QMCWaveFunctions/SPOSetT.h +++ b/src/QMCWaveFunctions/SPOSetT.h @@ -33,11 +33,15 @@ namespace qmcplusplus { class ResourceCollection; -class SPOSet; +template +class SPOSetT; namespace testing { -opt_variables_type& getMyVars(SPOSet& spo); -} +opt_variables_type& getMyVars(SPOSetT& spo); +opt_variables_type& getMyVars(SPOSetT& spo); +opt_variables_type& getMyVars(SPOSetT>& spo); +opt_variables_type& getMyVars(SPOSetT>& spo); +} // namespace testing /** base class for Single-particle orbital sets @@ -520,11 +524,11 @@ class SPOSetT : public QMCTraits /** acquire a shared resource from collection */ - virtual void acquireResource(ResourceCollection& collection, const RefVectorWithLeader& spo_list) const {} + virtual void acquireResource(ResourceCollection& collection, const RefVectorWithLeader>& spo_list) const {} /** return a shared resource to collection */ - virtual void releaseResource(ResourceCollection& collection, const RefVectorWithLeader& spo_list) const {} + virtual void releaseResource(ResourceCollection& collection, const RefVectorWithLeader>& spo_list) const {} /** make a clone of itself * every derived class must implement this to have threading working correctly. @@ -564,7 +568,8 @@ class SPOSetT : public QMCTraits friend opt_variables_type& testing::getMyVars(SPOSetT>& spo); }; -using SPOSetPtr = SPOSet*; +template +using SPOSetTPtr = SPOSetT*; } // namespace qmcplusplus #endif