Project OpenGeode
class RelationshipsImpl
This class stores all the relations between a set of components. Each relationship links two components.
Members
cpp
protected unique_ptr graph_
protected unique_ptr graph_
cpp
protected UuidToIndex uuid2index_
protected UuidToIndex uuid2index_
cpp
protected shared_ptr ids_
protected shared_ptr ids_
Functions
nb_components_with_relations
cpp
public index_t nb_components_with_relations()
public index_t nb_components_with_relations()
nb_relations
cpp
public index_t nb_relations(const uuid & component_id)
public index_t nb_relations(const uuid & component_id)
begin_edge
cpp
public Iterator begin_edge(const uuid & component_id)
public Iterator begin_edge(const uuid & component_id)
end_edge
cpp
public Iterator end_edge(const uuid & component_id)
public Iterator end_edge(const uuid & component_id)
graph_component_id
cpp
public const ComponentID & graph_component_id(index_t graph_component)
public const ComponentID & graph_component_id(index_t graph_component)
graph_component_id
cpp
public const ComponentID & graph_component_id(const EdgeVertex & graph_edge_vertex)
public const ComponentID & graph_component_id(const EdgeVertex & graph_edge_vertex)
remove_component
cpp
public void remove_component(const uuid & component_id)
public void remove_component(const uuid & component_id)
add_relation_edge
cpp
public index_t add_relation_edge(const ComponentID & from, const ComponentID & to)
public index_t add_relation_edge(const ComponentID & from, const ComponentID & to)
remove_relation
cpp
public void remove_relation(const uuid & component_id1, const uuid & component_id2)
public void remove_relation(const uuid & component_id1, const uuid & component_id2)
component_attribute_manager
cpp
public AttributeManager & component_attribute_manager()
public AttributeManager & component_attribute_manager()
relation_attribute_manager
cpp
public AttributeManager & relation_attribute_manager()
public AttributeManager & relation_attribute_manager()
relation_edge_index
cpp
public optional relation_edge_index(const uuid & component_id1, const uuid & component_id2)
public optional relation_edge_index(const uuid & component_id1, const uuid & component_id2)
relation_components_from_index
cpp
public tuple relation_components_from_index(index_t id)
public tuple relation_components_from_index(index_t id)
copy
cpp
public void copy(const RelationshipsImpl & impl, const ModelCopyMapping & mapping)
public void copy(const RelationshipsImpl & impl, const ModelCopyMapping & mapping)
RelationshipsImpl
cpp
protected void RelationshipsImpl()
protected void RelationshipsImpl()
initialize_attributes
cpp
protected void initialize_attributes()
protected void initialize_attributes()
vertex_id
cpp
protected optional vertex_id(const uuid & component_id)
protected optional vertex_id(const uuid & component_id)
graph
cpp
protected const Graph & graph()
protected const Graph & graph()
delete_isolated_vertices
cpp
protected void delete_isolated_vertices()
protected void delete_isolated_vertices()