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