|struct ast_cc_monitor *||first|
|struct ast_cc_monitor *||last|
Though this is a linked list, it is logically treated as a tree of monitors. Each monitor has an id and a parent_id associated with it. The id is a unique ID for that monitor, and the parent_id is the unique ID of the monitor's parent in the tree. The tree is structured such that all of a parent's children will appear after the parent in the tree. However, it cannot be guaranteed exactly where after the parent the children are.
The tree is reference counted since several threads may need to use it, and it may last beyond the lifetime of a single thread.