18 template <
typename LOAD,
typename std::enable_if<
19 std::is_base_of<iLoader,LOAD>::value>::type* =
nullptr>
23 auto nodes = in.nodes();
25 for (
const cortenn::Node& node : nodes)
28 if (node.has_source())
30 const cortenn::Source& source = node.source();
31 auto& slist = source.shape();
32 teq::Shape shape(std::vector<teq::DimT>(slist.begin(), slist.end()));
33 std::string data = source.data();
35 shape, source.typelabel(), node.label(), source.is_const());
36 invec.push_back(leaf);
41 cortenn::Functor func = node.functor();
42 auto nodeargs = func.args();
43 std::string opname = func.opname();
45 for (
auto nodearg : nodeargs)
48 auto shaper_pb = nodearg.shaper();
49 auto coorder_pb = nodearg.coord();
50 std::vector<double> shaper_vec(shaper_pb.begin(), shaper_pb.end());
51 std::vector<double> coord_vec(coorder_pb.begin(), coorder_pb.end());
56 out.erase(invec[nodearg.idx()]);
62 auto& pb_tags = node.tags();
63 for (
auto& tagpair : pb_tags)
65 const std::string& tagkey = tagpair.first;
66 auto& taglabels = tagpair.second.labels();
68 for (std::string taglabel : taglabels)
79 #endif // PBM_GRAPH_HPP args
Definition: csv_to_png.py:105
std::unordered_set< teq::TensptrT > TensptrSetT
Hash set of tensor smart pointers.
Definition: itensor.hpp:66
std::vector< FuncArg > ArgsT
Type of functor arguments.
Definition: funcarg.hpp:101
std::shared_ptr< iCoordMap > CoordptrT
Type of iCoordMap smartpointer.
Definition: coord.hpp:106
Coordinate mapper and tensor pair.
Definition: funcarg.hpp:21
void load_graph(teq::TensptrSetT &out, const cortenn::Graph &in)
Return graph info through out available from in graph.
Definition: load.hpp:20
std::shared_ptr< iTensor > TensptrT
Tensor smart pointer.
Definition: itensor.hpp:51
TagrF tagr_by_key(std::string tag_key)
Return tagger associated to TagRepsT key.
Definition: tag.hpp:224
TagRegistry & get_reg(void)
Return reference to global tag registry.
std::vector< teq::TensptrT > TensptrsT
Tensptr vector type.
Definition: data.hpp:24