65 <<
"Failed to create output file: " << cfg().dotfile();
87 os <<
"\"b" << pid <<
'\"';
99 std::string
const& pin,
102 os <<
" [label = \"" << fcn;
105 os <<
"\" shape = box];\n";
114 os <<
"# write_product_node for provenance: " << &p <<
'\n';
129 static std::vector<std::string> names_seen;
130 auto it = std::find(
begin(names_seen),
end(names_seen), procname);
131 if (it ==
end(names_seen)) {
132 names_seen.push_back(procname);
133 return names_seen.size();
135 return std::distance(
begin(names_seen), it) + 1;
140 std::string
const& colorscheme,
143 os <<
" [ colorscheme=" << colorscheme <<
" color=" <<
color(p.
processName())
144 <<
" style=filled ];\n";
149 std::string
const& colorscheme,
154 os <<
"# write_creator_line for provenance: " << &p <<
'\n';
177 os <<
"# write_parentage_line for provenance: " << &p <<
" parent " fhicl::Atom< std::string > dotfile
void write_module_node(art::Provenance const &p, std::string const &colorscheme, std::ostream &os)
std::vector< ProductID > const & parents() const
ProductID productID() const noexcept
std::string const & productInstanceName() const noexcept
fhicl::Atom< std::string > colorscheme
void write_module_id(art::Provenance const &p, std::ostream &os)
std::string const & moduleLabel() const noexcept
void processEventProvenance(art::Provenance const &prov)
void write_product_node(art::Provenance const &p, std::ostream &os, int debug)
decltype(auto) constexpr end(T &&obj)
ADL-aware version of std::end.
void write_creator_line(art::Provenance const &p, std::string const &colorscheme, std::ostream &os, int debug)
#define DEFINE_ART_MODULE(klass)
void write_parentage_line(art::Provenance const &p, art::ProductID const parent, std::ostream &os, int debug)
DataFlow(fhicl::TableFragment< Config > const &cfg)
fhicl::Atom< int > debuglevel
std::string const & processName() const noexcept
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
std::size_t color(std::string const &procname)
std::string const & friendlyClassName() const noexcept
void write_id(art::ProductID const pid, std::ostream &os)
decltype(auto) constexpr begin(T &&obj)
ADL-aware version of std::begin.
void write_parent_id(art::ProductID const parent, std::ostream &os)
void format_product_node(std::string const &fcn, std::string const &pin, std::ostream &os)