54 template <
class Po
intT>
71 template<
typename Po
intT>
74 selected_(_other.selected_),
82 template <
class Po
intT>
95 template <
class Po
intT>
103 template <
class Po
intT>
120 template <
class Po
intT>
124 Joint *parent = _newParent;
127 if (parent ==
this) {
128 std::cerr <<
"Illegal setParent operation (joint " << _newParent->
id() <<
" cannot be parent of " << this->id() <<
" because this would lead to a cycle. Cancelling." << std::endl;
131 parent = parent->
parent();
135 if(std::remove(parent_->children_.begin(), parent_->children_.end(),
this) != parent_->children_.end())
136 parent_->
children_.resize(parent_->children_.size() - 1);
138 parent_ = _newParent;
140 if ( _newParent != 0)
154 template <
class Po
intT>
162 template <
class Po
intT>
165 return parent_ == NULL;
173 template <
class Po
intT>
176 return children_.begin();
184 template <
class Po
intT>
187 return children_.end();
195 template<
typename Po
intT>
198 return children_.size();
209 template<
typename Po
intT>
212 assert( _index < children_.size() );
214 if(_index >= children_.size())
216 return children_[_index];
225 template <
class Po
intT>
237 template <
class Po
intT>
240 selected_ = _selected;
245 template<
typename Po
intT>
252 template<
typename Po
intT>