28 #include <deps/sbg_graph/deps_graph.hpp>
44 MatrixConfig<S>(std::string cont, std::vector<std::string> n, std::vector<std::string> ac, std::vector<std::string> comp, S sel)
46 MatrixConfig<S>(std::string cont, std::vector<std::string> n, std::vector<std::string> ac, std::vector<std::string> comp,
49 MatrixConfig<S>(std::string cont, std::vector<std::string> n, std::vector<std::string> ac, std::vector<std::string> comp,
52 MatrixConfig<S>(std::string cont, std::vector<std::string> n, std::vector<std::string> ac, std::vector<std::string> comp,
57 std::vector<std::string>
names;
58 std::vector<std::string>
access;
72 struct ModelMatrixDef {
78 vector<std::string>
begin;
79 vector<std::string>
end;
80 vector<std::string>
code;
83 template <
typename NT,
typename N,
typename Config>
84 class ModelMatrixGenerator {
89 void init(SB::Deps::SetVertex vertex);
92 void visitF(SB::Deps::SetVertex vertex, SB::Deps::VariableDep var_dep);
93 void visitF(SB::Deps::SetVertex vertex, SB::Deps::VariableDep var_dep, SB::Deps::SetVertex gen_vertex);
94 void visitG(SB::Deps::SetVertex v_vertex, SB::Deps::SetVertex g_vertex, SB::Deps::VariableDep var_dep,
int index_shift);
95 void visitG(SB::Deps::SetVertex v_vertex, SB::Deps::SetVertex g_vertex, SB::PWLMap use_map, SB::Deps::LMapExp use_map_exp,
96 Expression use_exp, SB::PWLMap def_map, SB::Deps::LMapExp def_map_exp, SB::Set intersection);
97 void initG(SB::Deps::SetVertex vertex, SB::Deps::SetEdge edge);