61 template <
class Po
intT>
78 template<
typename Po
intT>
81 selected_(_other.selected_),
89 template <
class Po
intT>
102 template <
class Po
intT>
110 template <
class Po
intT>
127 template <
class Po
intT>
134 if (parent ==
this) {
135 std::cerr <<
"Illegal setParent operation (joint " << _newParent->
id() <<
" cannot be parent of " << this->
id() <<
" because this would lead to a cycle. Cancelling." << std::endl;
138 parent = parent->
parent();
147 if ( _newParent != 0)
161 template <
class Po
intT>
169 template <
class Po
intT>
180 template <
class Po
intT>
191 template <
class Po
intT>
202 template<
typename Po
intT>
216 template<
typename Po
intT>
232 template <
class Po
intT>
244 template <
class Po
intT>
247 selected_ = _selected;
252 template<
typename Po
intT>
259 template<
typename Po
intT>
unsigned int id_
An unique identifier, guaranteed to be part of a continuous sequence starting from 0...
Represents a single joint in the skeleton.
Joint * child(size_t _index)
Returns the child joint with the given index.
std::string name_
the name of the joint
void setParent(Joint *_newParent, SkeletonT< PointT > &_skeleton)
access parent of the joint
ChildIter begin()
Returns an iterator on the joints children.
bool selected()
Returns the joint's selection state.
void setSelected(bool _selected)
Set the joint's selction state.
unsigned int id()
returns the joint id
std::string name()
Access the name of the joint.
std::vector< Joint * > children_
The joints children, use the JointT::getChild method to access them.
Joint * parent_
The parent joint; this joint is in its parents JointT::children_ vector. It's 0 for the root node...
Joint * parent()
Returns the parent joint.
ChildIter end()
Returns the end iterator for the joints children.
void updateFromGlobal(unsigned int _idJoint)
update the structure when parent changes for a joint
size_t size()
Returns the number of children.
JointT(const Joint &_other)
Constructor.