anim filter is used to filter animation data that the user wants to see or work with.
The current implementation creates a linked list and sometimes uses more temp linked list internally. This list contains a wrapper around the items they want to see.
This is also done during drawing of the action editor.
- Current implementation has a linked list parameter. When traversing the animation data a bAnimListElem is added containing the data.
- Use a callback function and an already allocated bAnimListElem template that can be reused. The callback function can then be used to add it to the requested data structure.
- For drawing we could use an array as we need to loop over the items three times. This callback can also break the iteration when it needs to.
- Add a default callback that is similar to the current behavior as the function is used many times.