|
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) |