QMCPACK
UniqueOptObjRefs Class Reference
+ Inheritance diagram for UniqueOptObjRefs:
+ Collaboration diagram for UniqueOptObjRefs:

Public Member Functions

OptimizableObjectoperator[] (size_t i) const
 
void push_back (OptimizableObject &obj)
 

Detailed Description

Definition at line 98 of file OptimizableObject.h.

Member Function Documentation

◆ operator[]()

OptimizableObject& operator[] ( size_t  i) const
inline

Definition at line 101 of file OptimizableObject.h.

101 { return RefVector<OptimizableObject>::operator[](i); }

◆ push_back()

void push_back ( OptimizableObject obj)
inline

Definition at line 103 of file OptimizableObject.h.

References OptimizableObject::getName().

Referenced by ExampleHeComponent::extractOptimizableObjectRefs(), SlaterDetWithBackflow::extractOptimizableObjectRefs(), RPAJastrow::extractOptimizableObjectRefs(), MultiSlaterDetTableMethod::extractOptimizableObjectRefs(), CountingJastrow< RegionType >::extractOptimizableObjectRefs(), kSpaceJastrow::extractOptimizableObjectRefs(), TwoBodyJastrow< FT >::extractOptimizableObjectRefs(), RotatedSPOs::extractOptimizableObjectRefs(), JeeIOrbitalSoA< FT >::extractOptimizableObjectRefs(), J1Spin< FT >::extractOptimizableObjectRefs(), J1OrbitalSoA< FT >::extractOptimizableObjectRefs(), and qmcplusplus::TEST_CASE().

104  {
105  if (obj.getName().empty())
106  throw std::logic_error("BUG!! Only named OptimizableObject object can be added to UniqueOptObjRefs!");
107  auto result =
108  std::find_if(begin(), end(), [&](OptimizableObject& element) { return element.getName() == obj.getName(); });
109  if (result == end())
110  RefVector<OptimizableObject>::push_back(obj);
111  }

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