|
Public Methods |
| | search_graph (model &root_model, gptr< vdbl::database > &_db) |
| | search_graph (model &root_model, gptr< vdbl::database > &_db, const std::vector< annotation > &_a) |
| | ~search_graph () |
| search_node_id | get_node_id () |
| search_focus & | new_focus (const search_inspector &_si) |
| void | destroy_focus (const search_focus &_sf) |
| search_focus & | set_focus (search_focus &_fc, const search_inspector &_si) |
| search_inspector & | new_inspector (const search_inspector &inspector_to_add) |
| search_inspector & | new_inspector () |
| void | destroy_inspector (const search_inspector &inspector_to_destroy) |
| work_node | extract (const search_inspector &where) |
| work_node | extract (const search_focus &where) |
| search_inspector & | insert (const search_focus &where, const search_node &what) |
| search_inspector & | replace (search_focus &where, const search_node &what) |
| void | remove (search_focus &_sf) |
| void | remove_upwards (search_focus &_sf, bool relaxation_kills) |
| search_focus & | promote (search_focus &_sf) |
| search_inspector | child (search_inspector &n, unsigned int i) |
| search_inspector | parent (search_inspector &n, unsigned int i) |
| bool | check_acyclicity (const walker &__parent, const walker &__child) |
| void | clear () |
| walker | between (const walker &__parent, const children_iterator &__cit, const walker &__child, const parents_iterator &__pit, const search_node *&__x) |
| walker | between (const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children, const search_node *&__x) |
| walker | between (const walker &__parent, const children_iterator &__cit, const __SequenceCtr< walker, _Allocator > &__children, const search_node *&__x) |
| walker | between (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const parents_iterator &__pit, const search_node *&__x) |
| walker | between (const walker &__parent, const children_iterator &__cit, const walker &__child, const parents_iterator &__pit, const _Tp &__x) |
| walker | between (const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children, const _Tp &__x) |
| walker | between (const walker &__parent, const children_iterator &__cit, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
| walker | between (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const parents_iterator &__pit, const _Tp &__x) |
| walker | split (const walker &__parent, const children_iterator &__ch_it, const walker &__child, const parents_iterator &__pa_it, const search_node *&__x) |
| void | split (const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children, const search_node *&__x) |
| walker | split (const walker &__parent, const children_iterator &__ch_it, const __SequenceCtr< walker, _Allocator > &__children, const search_node *&__x) |
| walker | split (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const parents_iterator &__pr_it, const search_node *&__x) |
| walker | split (const walker &__parent, const children_iterator &__ch_it, const walker &__child, const parents_iterator &__pa_it, const _Tp &__x) |
| void | split (const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children, const _Tp &__x) |
| walker | split (const walker &__parent, const children_iterator &__ch_it, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
| walker | split (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const parents_iterator &__pr_it, const _Tp &__x) |
| walker | between_back (const walker &__parent, const walker &__child, const search_node *&__x) |
| walker | between_back (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const search_node *&__x) |
| walker | between_back (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const search_node *&__x) |
| walker | between_back (const walker &__parent, const walker &__child, const _Tp &__x) |
| walker | between_back (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
| walker | between_back (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const _Tp &__x) |
| walker | split_back (const walker &__parent, const walker &__child, const search_node *&__x) |
| walker | split_back (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const search_node *&__x) |
| walker | split_back (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const search_node *&__x) |
| walker | split_back (const walker &__parent, const walker &__child, const _Tp &__x) |
| walker | split_back (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
| walker | split_back (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const _Tp &__x) |
| walker | between_front (const walker &__parent, const walker &__child, const search_node *&__x) |
| walker | between_front (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const search_node *&__x) |
| walker | between_front (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const search_node *&__x) |
| walker | between_front (const walker &__parent, const walker &__child, const _Tp &__x) |
| walker | between_front (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
| walker | between_front (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const _Tp &__x) |
| walker | split_front (const walker &__parent, const walker &__child, const search_node *&__x) |
| walker | split_front (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const search_node *&__x) |
| walker | split_front (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const search_node *&__x) |
| walker | split_front (const walker &__parent, const walker &__child, const _Tp &__x) |
| walker | split_front (const walker &__parent, const __SequenceCtr< walker, _Allocator > &__children, const _Tp &__x) |
| walker | split_front (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const _Tp &__x) |
| void | insert_subgraph (_Self &__subgraph, const walker &__parent, const children_iterator &__ch_it, const walker &__child, const parents_iterator &__pa_it) |
| void | insert_subgraph (_Self &__subgraph, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
| void | insert_subgraph (_Self &__subgraph, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
| void | insert_back_subgraph (_Self &__subgraph, const walker &__parent, const walker &__child) |
| void | insert_front_subgraph (_Self &__subgraph, const walker &__parent, const walker &__child) |
| void | add_edge (const walker &__parent, const children_iterator &__ch_it, const walker &__child, const parents_iterator &__pa_it) |
| void | add_edge (const edge &__edge, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
| void | add_edge (const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
| void | add_edge_back (const walker &__parent, const walker &__child) |
| void | add_edge_front (const walker &__parent, const walker &__child) |
| allocator_type | get_allocator () const |
| walker | ground () |
| const_walker | ground () const |
| walker | sky () |
| const_walker | sky () const |
| children_iterator | root_begin () |
| children_iterator | root_end () |
| parents_iterator | leaf_begin () |
| parents_iterator | leaf_end () |
| bool | empty () const |
| size_type | size () const |
| size_type | max_size () const |
| void | swap (_Self &__x) |
| walker | insert_node_in_graph (_Node *__n, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
| walker | insert_node_in_graph (_Node *__node, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
| walker | insert_node_in_graph (_Node *__node, const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
| walker | insert_node_in_graph (_Node *__node, const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
| walker | insert_in_graph (const search_node *&__x, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
| walker | insert_in_graph (const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
| walker | insert_in_graph (const search_node *&__x, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
| walker | insert_in_graph (const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
| walker | insert_in_graph (const search_node *&__x, const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
| walker | insert_in_graph (const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
| walker | insert_in_graph (const search_node *&__x, const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
| walker | insert_in_graph (const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
| walker | insert_in_graph (const _Tp &__x, const walker &__parent, const walker &__child, const container_insert_arg &__Itc, const container_insert_arg &__Itp) |
| walker | insert_in_graph (const _Tp &__x, const __SequenceCtr1< walker, _Allocator1 > &__parents, const __SequenceCtr2< walker, _Allocator2 > &__children) |
| walker | insert_in_graph (const _Tp &__x, const walker &__parent, const container_insert_arg &__pref, const __SequenceCtr< walker, _Allocator > &__children) |
| walker | insert_in_graph (const _Tp &__x, const __SequenceCtr< walker, _Allocator > &__parents, const walker &__child, const container_insert_arg &__cref) |
| void | replace_edge_to_child (const walker &__parent, const walker &__child_old, const walker &__child_new) |
| void | replace_edge_to_parent (const walker &__parent_old, const walker &__parent_new, const walker &__child) |
| void | remove_edge (const edge &__edge) |
| void | remove_edge (const walker &__parent, const walker &__child) |
| void | remove_edge_and_deattach (const walker &__parent, const walker &__child) |
| void | sort_child_edges (walker __position, children_iterator first, children_iterator last, Compare comp) |
| void | sort_child_edges (walker __position, Compare comp) |
| void | sort_parent_edges (walker __position, parents_iterator first, parents_iterator last, Compare comp) |
| void | sort_parent_edges (walker __position, Compare comp) |
| walker | insert_node (_Node *_node, const walker &__position, const container_insert_arg &__It) |
| walker | insert_node (const search_node *&__x, const walker &__position, const container_insert_arg &__It) |
| walker | insert_node (const walker &__position, const container_insert_arg &__It) |
| walker | insert_node (const _Tp &__x, const walker &__position, const container_insert_arg &__It) |
| walker | insert_node_before (_Node *_node, const walker &__position, const container_insert_arg &__It) |
| void | insert_node_before (const search_node *&__x, const walker &__position, const container_insert_arg &__It) |
| void | insert_node_before (const walker &__position, const container_insert_arg &__It) |
| void | insert_node_before (const _Tp &__x, const walker &__position, const container_insert_arg &__It) |
| void | merge (const walker &__position, const walker &__second, bool merge_parent_edges=true, bool merge_child_edges=true) |
| void | erase (const walker &__position) |
| void | clear_erased_part (erased_part &_ep) |
| erased_part | erase_maximal_subgraph (const walker &__position) |
| erased_part | erase_maximal_subgraph (const __SequenceCtr< walker, _Allocator > &__positions) |
| erased_part | erase_minimal_subgraph (const walker &__position) |
| erased_part | erase_minimal_subgraph (const __SequenceCtr< walker, _Allocator > &__positions) |
| erased_part | erase_maximal_pregraph (const walker &__position) |
| erased_part | erase_maximal_pregraph (const __SequenceCtr< walker, _Allocator > &__positions) |
| erased_part | erase_minimal_pregraph (const walker &__position) |
| erased_part | erase_minimal_pregraph (const __SequenceCtr< walker, _Allocator > &__positions) |
| bool | erase_child (const walker &__position, const children_iterator &__It) |
| bool | erase_parent (const walker &__position, const parents_iterator &__It) |
| void | clear_children () |
| void | clear_parents () |
| void | add_all_children (_Output_Iterator fi, _DG_node< search_node *, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *_parent) |
| void | add_all_children (_Output_Iterator fi, _DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *_parent) |
| void | add_all_children (_Output_Iterator fi, _DG_node< _Tp, _Ctr, _Iterator > *_parent) |
| void | add_all_parents (_Output_Iterator fi, _DG_node< search_node *, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *_child) |
| void | add_all_parents (_Output_Iterator fi, _DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *_child) |
| void | add_all_parents (_Output_Iterator fi, _DG_node< _Tp, _Ctr, _Iterator > *_child) |
| _Node * | _C_create_node (const search_node *&__x) |
| _Node * | _C_create_node () |
| _Node * | _C_create_node (const _Tp &__x) |
| void | clear_graph (_DG_node< search_node *, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *_node) |
| void | clear_graph (_DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *_node) |
| void | clear_graph (_DG_node< _Tp, _Ctr, _Iterator > *_node) |
_DG_node< search_node *, _SequenceCtr<
void *, _PtrAlloc >, _SequenceCtr<
void *, _PtrAlloc >::iterator > * | _C_get_node () |
| void | _C_put_node (_DG_node< search_node *, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *__p) |
| void | _C_put_node (_DG_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > *__p) |
| void | _C_put_node (_DG_node< _Tp, _Ctr, _Iterator > *__p) |
Public Attributes |
| std::list< walker > | focus |
| std::list< const_walker > | inspector |
| search_node * | root |
| search_inspector | inspector_for_root |
| ptr< search_node > | ptr_ground |
| ptr< model > | ptr_root_model |
| list< search_node * > | search_nodes_to_deallocate |
| list< delta_id > | db_deltas_to_remove |
| gptr< vdbl::database > * | __dbase |
| vdbl::userid | __dbuser |
| _Base::walker | walker |
| _Base::const_walker | const_walker |
| _Base::children_iterator | children_iterator |
| _Base::parents_iterator | parents_iterator |
| _Base::erased_part | erased_part |
| _SequenceCtr< void *, _PtrAlloc > | container_type |
| search_node * | value_type |
_DG_iterator< search_node *,
search_node *&, search_node **,
container_type, children_iterator > | iterator |
_DG_iterator< search_node *,
const search_node *&, const
search_node **, container_type,
children_iterator > | const_iterator |
| std::reverse_iterator< const_iterator > | const_reverse_iterator |
| std::reverse_iterator< iterator > | reverse_iterator |
| std::pair< walker, walker > | edge |
| std::pair< edge, bool > | enhanced_edge |
| _Base::allocator_type | allocator_type |
_DG_node< search_node *, _SequenceCtr<
void *, _PtrAlloc >, _SequenceCtr<
void *, _PtrAlloc >::iterator > * | _C_ground |
_DG_node< search_node *, _SequenceCtr<
void *, _PtrAlloc >, _SequenceCtr<
void *, _PtrAlloc >::iterator > * | _C_sky |
| int | _C_mark |
| _Node | node_type |
| value_type * | pointer |
| const value_type * | const_pointer |
| value_type & | reference |
| const value_type & | const_reference |
| size_t | size_type |
| ptrdiff_t | difference_type |
Friends |
| bool | operator==__VGTL_NULL_TMPL_ARGS (const __DG &__x, const __DG &__y) |