7 #ifndef BALL_MOLMEC_COMMON_ATOMVECTOR_H
8 #define BALL_MOLMEC_COMMON_ATOMVECTOR_H
14 #ifndef BALL_MATHS_VECTOR3_H
30 :
private std::vector<Atom*>
76 using std::vector<
Atom*>::clear;
85 const AtomVector& operator = (const AtomVector& rhs);
89 void set(const AtomVector& atoms);
97 const AtomVector& operator = (const
Composite& rhs);
103 void set(const
Composite& composite,
bool selected_only = false);
112 using std::vector<
Atom*>::size;
115 Atom* & operator [] (
int i) {
return std::vector<Atom*>::operator [] (i); }
116 Atom*
const & operator [] (
int i)
const {
return std::vector<Atom*>::operator [] (i); }
122 void savePositions();
129 void resetPositions();
139 void moveTo(
const Gradient& direction,
double step = 1.0);
153 using std::vector<Atom*>::push_back;
159 void resize(
Size new_size);
169 iterator
begin() {
return std::vector<Atom*>::begin(); }
170 const_iterator
begin()
const {
return std::vector<Atom*>::begin(); }
175 iterator
end() {
return std::vector<Atom*>::end(); }
176 const_iterator
end()
const {
return std::vector<Atom*>::end(); }
188 #endif // BALL_MOLMEC_MINIMIZATION_GRADIENT_H