|
ETISS 0.11.2
ExtendableTranslatingInstructionSetSimulator(version0.11.2)
|
#include <Dot.h>

Classes | |
| class | Link |
| class | Node |
Public Member Functions | |
| ValueOperationTraceGraphStreamer (const std::string &file, const std::string &depfile) | |
| ~ValueOperationTraceGraphStreamer () | |
| void | defineNode (const void *id, const std::string &name) |
| void | undefineNode (const void *id) |
| void | link (const void *dst, std::initializer_list< const void * > sources, const char *label=0) |
| void | close () |
| void | flush () |
| const std::unordered_set< std::pair< const void *, const void * > > & | staticDependencies () const |
Public Attributes | |
| bool | enable_default_graph_streaming_ |
| set to false to disable the streaming of variable dependencies over time. | |
| std::function< void(Node *)> | setCurrentNodeAttr |
| std::function< void(Link *, Node *, Node *const *, size_t, std::initializer_list< const void * > &, const char *)> | setCurrentLinkAttr |
| std::function< void(Link *, const etiss::ExpandingNativeStack< Link *, 1000 > &)> | setMetaLinkAttr |
| std::function< void(const etiss::ExpandingNativeStack< Link *, 1000 > &)> | custWritePath |
| std::function< bool(const etiss::ExpandingNativeStack< Link *, 1000 > &)> | hidePath |
Private Member Functions | |
| void | writePath () |
| void | traverse (Node *n) |
| Node * | openDestNode (const void *const dst, Node *&cleanup) |
| Node * | openSourceNode (const void *const src) |
Private Attributes | |
| etiss::ExpandingNativeStack< Link *, 1000 > | path |
| uint64_t | nnodeid_ |
| etiss::FixedSizeHashMap< Node *, uint64_t, etiss::pointerHash< const void > > | nodeToTmpId_ |
| etiss::FixedSizeHashMap< const void *, Node *, etiss::pointerHash< const void > > | currentnodes_ |
| etiss::FixedSizeHashMap< const void *, std::string, etiss::pointerHash< const void > > | nodes_ |
| std::unordered_set< std::pair< const void *, const void * > > | dependencies_ |
| std::ofstream | out |
| std::ofstream | depout |
| etiss::ObjectPool< Node > | node_alloc_ |
| etiss::ObjectPool< Link > | link_alloc_ |
| char | out_buf [256 *256] |
| char | depout_buf [256 *256] |
| bool | closed_ |
| etiss::interfaces::dot::ValueOperationTraceGraphStreamer::ValueOperationTraceGraphStreamer | ( | const std::string & | file, |
| const std::string & | depfile | ||
| ) |
Definition at line 295 of file Dot.cpp.
References closed_, dependencies_, depout, depout_buf, enable_default_graph_streaming_, out, and out_buf.
| etiss::interfaces::dot::ValueOperationTraceGraphStreamer::~ValueOperationTraceGraphStreamer | ( | ) |
| void etiss::interfaces::dot::ValueOperationTraceGraphStreamer::close | ( | ) |
| void etiss::interfaces::dot::ValueOperationTraceGraphStreamer::defineNode | ( | const void * | id, |
| const std::string & | name | ||
| ) |
| void etiss::interfaces::dot::ValueOperationTraceGraphStreamer::flush | ( | ) |
| void etiss::interfaces::dot::ValueOperationTraceGraphStreamer::link | ( | const void * | dst, |
| std::initializer_list< const void * > | sources, | ||
| const char * | label = 0 |
||
| ) |
Definition at line 408 of file Dot.cpp.
References closed_, etiss::FixedSizeHashMap< K, V, hashFunc, log2_buckets >::find(), likely, link_alloc_, etiss::interfaces::dot::ValueOperationTraceGraphStreamer::Node::links_in, etiss::interfaces::dot::ValueOperationTraceGraphStreamer::Node::links_out, nodes_, openDestNode(), openSourceNode(), setCurrentLinkAttr, etiss::interfaces::dot::ValueOperationTraceGraphStreamer::Link::setLabel(), traverse(), and unlikely.

|
private |
Definition at line 374 of file Dot.cpp.
References currentnodes_, node_alloc_, and setCurrentNodeAttr.
Referenced by link().

|
private |
Definition at line 355 of file Dot.cpp.
References currentnodes_, node_alloc_, and setCurrentNodeAttr.
Referenced by link().

| const std::unordered_set< std::pair< const void *, const void * > > & etiss::interfaces::dot::ValueOperationTraceGraphStreamer::staticDependencies | ( | ) | const |
Definition at line 682 of file Dot.cpp.
References dependencies_.
|
private |
Definition at line 566 of file Dot.cpp.
References currentnodes_, etiss::FixedSizeHashMap< K, V, hashFunc, log2_buckets >::find(), etiss::interfaces::dot::keepNode(), link_alloc_, etiss::interfaces::dot::ValueOperationTraceGraphStreamer::Node::links_in, etiss::interfaces::dot::ValueOperationTraceGraphStreamer::Node::links_out, node_alloc_, nodes_, nodeToTmpId_, path, traverse(), and writePath().
Referenced by link(), traverse(), and undefineNode().


| void etiss::interfaces::dot::ValueOperationTraceGraphStreamer::undefineNode | ( | const void * | id | ) |
Definition at line 335 of file Dot.cpp.
References closed_, currentnodes_, etiss::FixedSizeHashMap< K, V, hashFunc, log2_buckets >::erase(), nodes_, and traverse().

|
private |
Definition at line 470 of file Dot.cpp.
References etiss::interfaces::dot::ValueOperationTraceGraphStreamer::Link::attrToString(), custWritePath, dependencies_, depout, enable_default_graph_streaming_, etiss::FixedSizeHashMap< K, V, hashFunc, log2_buckets >::find(), hidePath, link_alloc_, nnodeid_, nodes_, nodeToTmpId_, out, path, and setMetaLinkAttr.
Referenced by traverse().


|
private |
Definition at line 368 of file Dot.h.
Referenced by close(), defineNode(), link(), undefineNode(), and ValueOperationTraceGraphStreamer().
|
private |
Definition at line 342 of file Dot.h.
Referenced by openDestNode(), openSourceNode(), traverse(), and undefineNode().
| std::function<void(const etiss::ExpandingNativeStack<Link *, 1000> &)> etiss::interfaces::dot::ValueOperationTraceGraphStreamer::custWritePath |
Definition at line 358 of file Dot.h.
Referenced by writePath().
|
private |
Definition at line 347 of file Dot.h.
Referenced by staticDependencies(), ValueOperationTraceGraphStreamer(), and writePath().
|
private |
Definition at line 350 of file Dot.h.
Referenced by close(), defineNode(), flush(), ValueOperationTraceGraphStreamer(), and writePath().
|
private |
Definition at line 366 of file Dot.h.
Referenced by ValueOperationTraceGraphStreamer().
| bool etiss::interfaces::dot::ValueOperationTraceGraphStreamer::enable_default_graph_streaming_ |
set to false to disable the streaming of variable dependencies over time.
in that case only the static dependencies are streamed and custWritePath is used
Definition at line 328 of file Dot.h.
Referenced by ValueOperationTraceGraphStreamer(), and writePath().
| std::function<bool(const etiss::ExpandingNativeStack<Link *, 1000> &)> etiss::interfaces::dot::ValueOperationTraceGraphStreamer::hidePath |
Definition at line 359 of file Dot.h.
Referenced by writePath().
|
private |
Definition at line 363 of file Dot.h.
Referenced by link(), traverse(), and writePath().
|
private |
Definition at line 340 of file Dot.h.
Referenced by writePath().
|
private |
Definition at line 362 of file Dot.h.
Referenced by openDestNode(), openSourceNode(), and traverse().
|
private |
Definition at line 345 of file Dot.h.
Referenced by defineNode(), link(), traverse(), undefineNode(), and writePath().
|
private |
Definition at line 341 of file Dot.h.
Referenced by traverse(), and writePath().
|
private |
Definition at line 349 of file Dot.h.
Referenced by close(), flush(), ValueOperationTraceGraphStreamer(), etiss::interfaces::dot::VariableDependencyGraph::write(), and writePath().
|
private |
Definition at line 365 of file Dot.h.
Referenced by ValueOperationTraceGraphStreamer().
|
private |
Definition at line 335 of file Dot.h.
Referenced by traverse(), and writePath().
| std::function<void(Node *)> etiss::interfaces::dot::ValueOperationTraceGraphStreamer::setCurrentNodeAttr |
Definition at line 353 of file Dot.h.
Referenced by openDestNode(), and openSourceNode().
| std::function<void(Link *, const etiss::ExpandingNativeStack<Link *, 1000> &)> etiss::interfaces::dot::ValueOperationTraceGraphStreamer::setMetaLinkAttr |
Definition at line 357 of file Dot.h.
Referenced by writePath().