Please, help us to better know about our user community by answering the following short survey: https://forms.gle/wpyrxWi18ox9Z5ae9
scGatesSimulator.h
Go to the documentation of this file.
1 
5  /* @author János Végh (jvegh)
6  * @bug No known bugs.
7  */
8 
9 #ifndef scGatesSimulator_h
10 #define scGatesSimulator_h
11 #include "scqSimulator.h"
12 class scGatesProcessor;
13 class scGate2Input;
14 using namespace sc_core; using namespace std;
15 
16 
17 //Submodule forward class declarations
18 
25 //SC_MODULE(scSimulator) {
27  //Port declarations
28  // channels
29  protected:
30 // sc_clock C1 {"clk", 100, SC_PS};
31  //
32  //Channel/Submodule* definitions
33 /* simple_bus_master_blocking *master_b;
34  simple_bus_master_non_blocking *master_nb;
35  simple_bus_master_direct *master_d;
36  simple_bus_slow_mem *mem_slow;
37 */
38  /* scClusterBus *msClusterBus;
39 // simple_bus_fast_mem *mem_fast;
40  scClusterBusArbiter *msClusterBusArbiter;
41 */
42  public:
43  // Constructor declaration:
44  scGatesSimulator(sc_core::sc_module_name nm, int argc, char* argv[], bool StandAlone=true);
45  SC_HAS_PROCESS(scGatesSimulator); // Contructor implemented in .cpp
46  virtual
48  void
49  SInitialize_method(void);
50  void Setup(void); // Belongs to the constructor
51 #if 0
52  string
53  PrologText_Get(void);
54 
55  void writeSettings(void); // Write settings to the project directory
56 /* void
57  SetupSystemDirectories(QWidget* parent);
58  void
59  SetupSettings(void);*/
60  void
61  SSTART_thread(void);
62  void
63  SSTOP_thread(void);
64  void
65  SHALT_thread(void);
66  struct{
67  sc_core::sc_event
68  START,
69  STOP,
70  HALT,
71  SUSPEND,
72  RESUME;
73  }EVENT_SIMULATOR;
74  //virtual
76  Processor_Get(){ return msProcessor;}
77  //scqTreeModel* mModuleTree;
78  //scqTreeModel* mClusterTree;
79 // scqTreeItem *rootItem;
80 
81  protected:
82  void SetupHierarchies(void);
83  /*
84  void
85  PrintFinalReport(scProcessor *Proc);
86  */
87  std::map<string,int32_t>
88  mAliases;
89 #endif //0
90  void
91  HandleSpecials(void);
92  vector<scGridPoint*>
94 }; // of scSimulator
95 
96 #endif // scSimulator_h
scGatesProcessor
This is a processor class comprising communicating scGridPoint classes. Comprises and handles the scG...
Definition: scGatesProcessor.h:108
scProcessor
Implements a module-name alias facility (i.e., user-provided names. Given that the basic units is scH...
Definition: scProcessor.h:130
scGatesSimulator
The anchestor of all ScQt-based simulators, using EMPA bus The simulator manipulates scGridPoints,...
Definition: scGatesSimulator.h:26
scGate2Input
This class implements a 2-input gate object, mainly to demonstrate how tho use the system for electro...
Definition: scGate2Input.h:52
scqSimulator
The anchestor of all ScQt-based simulators The simulator manipulates scModules etc....
Definition: scqSimulator.h:58
scGatesSimulator::mSpecials
vector< scGridPoint * > mSpecials
Handle the exceptional points.
Definition: scGatesSimulator.h:93