std::set and std::map instead of std::list in wolf nodes
We may want to change the current child nodes list of the wolf nodes to shape better to our requirements.
Now, for all wolf nodes, a
std::list contains all the child nodes. For searching and ordering purposes it is not very useful.
Specifically, we need:
Trajectory: The list of frames is sorted by timestamp. This requires a number of functions to maintain this order. We could use an
std::map using the timestamp as the key. It would require a simple machinery just in case of changing the timestamp of a frame.
Rest of wolf nodes: removal/check existence of nodes is much faster in
std::set than in