source: sources/src/signal_dependency.h @ 65

Last change on this file since 65 was 52, checked in by meunier, 12 years ago

Code formatting in all source files.

File size: 1.9 KB
Line 
1/*------------------------------------------------------------\
2|                                                             |
3| Tool    :                  systemcass                       |
4|                                                             |
5| File    :                  signal_dependancy.h              |
6|                                                             |
7| Author  :                 Buchmann Richard                  |
8|                                                             |
9| Date    :                   09_07_2004                      |
10|                                                             |
11\------------------------------------------------------------*/
12
13#ifndef SIGNAL_DEPENDENCY_H
14#define SIGNAL_DEPENDENCY_H
15
16#include <set>
17
18#include "sc_fwd.h"
19#include "entity.h" // equi_t
20#include "graph.h"
21#include "port_dependency.h"
22
23namespace sc_core {
24
25
26// Signal Dependency Graph
27struct SignalDependency {
28  const method_process_t * method;
29  const equi_t * source;
30  const equi_t * destination;
31  bool operator < (const SignalDependency & a) const;
32};
33
34
35typedef std::set<SignalDependency> SignalDependencyGraph;
36
37
38// Convert Port Dependency Graph to Signal Dependency Graph
39extern SignalDependencyGraph * MakeSignalDependencyGraph(const PortDependencyGraph & = get_port_dependency_graph());
40
41// Checking
42extern bool Check(const SignalDependencyGraph &);
43extern bool Check(const method_process_list_t &, const SignalDependencyGraph &);
44
45// Dump
46extern bool SignalDependencyGraph2dot(const char * name, const SignalDependencyGraph &);
47extern bool SignalDependencyOrder2txt(const char * name, const strong_component_list_t &);
48
49} // end of sc_core namespace
50
51#endif
52
53/*
54# Local Variables:
55# tab-width: 4;
56# c-basic-offset: 4;
57# c-file-offsets:((innamespace . 0)(inline-open . 0));
58# indent-tabs-mode: nil;
59# End:
60#
61# vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=4:softtabstop=4
62*/
63
Note: See TracBrowser for help on using the repository browser.