jubatus_core  0.1.2
Jubatus: Online machine learning framework for distributed environment
Public Member Functions | Private Attributes | List of all members
jubatus::core::driver::graph Class Reference

#include <graph.hpp>

Inheritance diagram for jubatus::core::driver::graph:
Inheritance graph
Collaboration diagram for jubatus::core::driver::graph:
Collaboration graph

Public Member Functions

void add_centrality_query (const jubatus::core::graph::preset_query &q)
 
void add_shortest_path_query (const jubatus::core::graph::preset_query &q)
 
void clear ()
 
void create_edge (jubatus::core::graph::edge_id_t eid, jubatus::core::graph::node_id_t src, jubatus::core::graph::node_id_t target, const jubatus::core::graph::property &p)
 
void create_edge_here (jubatus::core::graph::edge_id_t eid, jubatus::core::graph::node_id_t src, jubatus::core::graph::node_id_t target, const jubatus::core::graph::property &p)
 
void create_node (jubatus::core::graph::node_id_t id)
 
void create_node_here (jubatus::core::graph::node_id_t id)
 
double get_centrality (jubatus::core::graph::node_id_t nid, jubatus::core::graph::centrality_type ct, const jubatus::core::graph::preset_query &q) const
 
jubatus::core::graph::edge_info get_edge (jubatus::core::graph::edge_id_t eid) const
 
jubatus::core::graph::graph_wo_indexget_model () const
 
jubatus::core::graph::node_info get_node (jubatus::core::graph::node_id_t nid) const
 
std::vector< jubatus::core::graph::node_id_tget_shortest_path (jubatus::core::graph::node_id_t src, jubatus::core::graph::node_id_t target, uint64_t max_hop, const jubatus::core::graph::preset_query &q) const
 
 graph (jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_method)
 
void pack (framework::packer &pk) const
 
void remove_centrality_query (const jubatus::core::graph::preset_query &q)
 
void remove_edge (jubatus::core::graph::edge_id_t eid)
 
void remove_global_node (jubatus::core::graph::node_id_t nid)
 
void remove_node (jubatus::core::graph::node_id_t id)
 
void remove_shortest_path_query (const jubatus::core::graph::preset_query &q)
 
void unpack (msgpack::object o)
 
void update_edge (jubatus::core::graph::edge_id_t eid, const jubatus::core::graph::property &p)
 
void update_index ()
 
void update_node (jubatus::core::graph::node_id_t id, const jubatus::core::graph::property &p)
 
virtual ~graph ()
 
- Public Member Functions inherited from jubatus::core::driver::driver_base
 driver_base ()
 
virtual framework::mixableget_mixable ()
 
std::vector< storage::versionget_versions () const
 
virtual ~driver_base ()
 

Private Attributes

jubatus::util::lang::shared_ptr< core::graph::graph_wo_indexgraph_
 
jubatus::core::graph::mixable_graph_wo_index mixable_
 

Additional Inherited Members

- Protected Member Functions inherited from jubatus::core::driver::driver_base
void register_mixable (framework::mixable *mixable)
 
- Protected Attributes inherited from jubatus::core::driver::driver_base
mixable_holder holder_
 

Detailed Description

Definition at line 33 of file graph.hpp.

Constructor & Destructor Documentation

jubatus::core::driver::graph::graph ( jubatus::util::lang::shared_ptr< core::graph::graph_wo_index graph_method)
explicit

Definition at line 42 of file graph.cpp.

References mixable_, and jubatus::core::driver::driver_base::register_mixable().

43  : graph_(graph_method),
44  mixable_(graph_method) {
46 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
jubatus::core::graph::mixable_graph_wo_index mixable_
Definition: graph.hpp:91
void register_mixable(framework::mixable *mixable)
Definition: driver.cpp:242

Here is the call graph for this function:

jubatus::core::driver::graph::~graph ( )
virtual

Definition at line 48 of file graph.cpp.

48  {
49 }

Member Function Documentation

void jubatus::core::driver::graph::add_centrality_query ( const jubatus::core::graph::preset_query q)

Definition at line 98 of file graph.cpp.

References graph_.

98  {
99  graph_->add_centrality_query(q);
100 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::add_shortest_path_query ( const jubatus::core::graph::preset_query q)

Definition at line 102 of file graph.cpp.

References graph_.

102  {
103  graph_->add_shortest_path_query(q);
104 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::clear ( )
virtual

Implements jubatus::core::driver::driver_base.

Definition at line 130 of file graph.cpp.

References graph_.

130  {
131  graph_->clear();
132 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::create_edge ( jubatus::core::graph::edge_id_t  eid,
jubatus::core::graph::node_id_t  src,
jubatus::core::graph::node_id_t  target,
const jubatus::core::graph::property p 
)

Definition at line 64 of file graph.cpp.

References create_edge_here().

68  {
69  // TODO(kuenishi): assert id==ei.src
70  this->create_edge_here(eid, src, target, p);
71 }
void create_edge_here(jubatus::core::graph::edge_id_t eid, jubatus::core::graph::node_id_t src, jubatus::core::graph::node_id_t target, const jubatus::core::graph::property &p)
Definition: graph.cpp:155

Here is the call graph for this function:

void jubatus::core::driver::graph::create_edge_here ( jubatus::core::graph::edge_id_t  eid,
jubatus::core::graph::node_id_t  src,
jubatus::core::graph::node_id_t  target,
const jubatus::core::graph::property p 
)

Definition at line 155 of file graph.cpp.

References graph_.

Referenced by create_edge().

159  {
160  try {
161  graph_->create_edge(eid, src, target);
162  graph_->update_edge(eid, p);
163  } catch (const jubatus::core::graph::graph_exception& e) {
164  throw;
165  }
166 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90

Here is the caller graph for this function:

void jubatus::core::driver::graph::create_node ( jubatus::core::graph::node_id_t  id)

Definition at line 51 of file graph.cpp.

References create_node_here().

51  { /* no lock here */
52  this->create_node_here(id);
53 }
void create_node_here(jubatus::core::graph::node_id_t id)
Definition: graph.cpp:134

Here is the call graph for this function:

void jubatus::core::driver::graph::create_node_here ( jubatus::core::graph::node_id_t  id)

Definition at line 134 of file graph.cpp.

References graph_.

Referenced by create_node().

134  {
135  try {
136  graph_->create_node(nid);
137  graph_->create_global_node(nid);
138  } catch (const jubatus::core::graph::local_node_exists& e) { // pass through
139  } catch (const jubatus::core::graph::global_node_exists& e) { // pass through
140  } catch (const std::runtime_error& e) {
141  throw;
142  }
143 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90

Here is the caller graph for this function:

double jubatus::core::driver::graph::get_centrality ( jubatus::core::graph::node_id_t  nid,
jubatus::core::graph::centrality_type  ct,
const jubatus::core::graph::preset_query q 
) const

Definition at line 81 of file graph.cpp.

References graph_.

84  {
85  return graph_->centrality(nid, ct, q);
86 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
jubatus::core::graph::edge_info jubatus::core::driver::graph::get_edge ( jubatus::core::graph::edge_id_t  eid) const

Definition at line 120 of file graph.cpp.

References graph_.

120  {
122  graph_->get_edge(eid, info);
123  return info;
124 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
jubatus::core::graph::graph_wo_index* jubatus::core::driver::graph::get_model ( ) const
inline

Definition at line 40 of file graph.hpp.

References graph_.

40  {
41  return graph_.get();
42  }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
jubatus::core::graph::node_info jubatus::core::driver::graph::get_node ( jubatus::core::graph::node_id_t  nid) const

Definition at line 114 of file graph.cpp.

References graph_.

114  {
116  graph_->get_node(nid, info);
117  return info;
118 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
std::vector< node_id_t > jubatus::core::driver::graph::get_shortest_path ( jubatus::core::graph::node_id_t  src,
jubatus::core::graph::node_id_t  target,
uint64_t  max_hop,
const jubatus::core::graph::preset_query q 
) const

Definition at line 88 of file graph.cpp.

References graph_.

92  {
93  std::vector<jubatus::core::graph::node_id_t> ret;
94  graph_->shortest_path(src, target, max_hop, ret, q);
95  return ret;
96 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::pack ( framework::packer pk) const
virtual

Implements jubatus::core::driver::driver_base.

Definition at line 168 of file graph.cpp.

References graph_.

168  {
169  graph_->pack(pk);
170 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::remove_centrality_query ( const jubatus::core::graph::preset_query q)

Definition at line 106 of file graph.cpp.

References graph_.

106  {
107  graph_->remove_centrality_query(q);
108 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::remove_edge ( jubatus::core::graph::edge_id_t  eid)

Definition at line 77 of file graph.cpp.

References graph_.

77  {
78  graph_->remove_edge(eid);
79 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::remove_global_node ( jubatus::core::graph::node_id_t  nid)

Definition at line 145 of file graph.cpp.

References graph_.

145  {
146  try {
147  graph_->remove_global_node(nid);
148  } catch (const jubatus::core::graph::local_node_exists& e) {
149  } catch (const jubatus::core::graph::global_node_exists& e) {
150  } catch (const std::runtime_error& e) {
151  throw;
152  }
153 } // update internal
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::remove_node ( jubatus::core::graph::node_id_t  id)

Definition at line 59 of file graph.cpp.

References graph_.

59  {
60  graph_->remove_node(id);
61  graph_->remove_global_node(id);
62 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::remove_shortest_path_query ( const jubatus::core::graph::preset_query q)

Definition at line 110 of file graph.cpp.

References graph_.

110  {
111  graph_->remove_shortest_path_query(q);
112 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::unpack ( msgpack::object  o)
virtual

Implements jubatus::core::driver::driver_base.

Definition at line 172 of file graph.cpp.

References graph_.

172  {
173  graph_->unpack(o);
174 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::update_edge ( jubatus::core::graph::edge_id_t  eid,
const jubatus::core::graph::property p 
)

Definition at line 73 of file graph.cpp.

References graph_.

73  {
74  graph_->update_edge(eid, p);
75 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::update_index ( )

Definition at line 126 of file graph.cpp.

References graph_.

126  {
127  graph_->update_index();
128 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90
void jubatus::core::driver::graph::update_node ( jubatus::core::graph::node_id_t  id,
const jubatus::core::graph::property p 
)

Definition at line 55 of file graph.cpp.

References graph_.

55  {
56  graph_->update_node(id, p);
57 }
jubatus::util::lang::shared_ptr< core::graph::graph_wo_index > graph_
Definition: graph.hpp:90

Member Data Documentation

jubatus::util::lang::shared_ptr<core::graph::graph_wo_index> jubatus::core::driver::graph::graph_
private
jubatus::core::graph::mixable_graph_wo_index jubatus::core::driver::graph::mixable_
private

Definition at line 91 of file graph.hpp.

Referenced by graph().


The documentation for this class was generated from the following files: