|
Logikai szimulátor
|
#include <logic_vm.hpp>
A logic_vm osztály együttműködési diagramja:Osztályok | |
| class | block |
Publikus tagfüggvények | |
| logic_vm (std::string const &vm_name="Default-VM") | |
| void | add (block *element) |
| block & | element (std::string const &id) |
| std::string | get_name () |
| unsigned | get_time () |
| void | info () |
| void | run (unsigned end) |
| void | list_queue () |
| ~logic_vm () | |
Publikus attribútumok | |
| std::list< block * > | elements |
Védett attribútumok | |
| std::list< std::pair< unsigned, std::function< void()> > > | queue |
| std::ofstream | dot_file |
Privát attribútumok | |
| unsigned | time_stamp = 0 |
| std::string | vm_name |
Ez az osztály valósítja meg a logikai szimulátort. Ezt példányosítva tudunk "kapcsolásokat" létrehozni. A példányokba kell beregisztrálnunk az áramkörünk elemeit, valamint azokat összekötni.
Definíció a(z) logic_vm.hpp fájl 16. sorában.
|
inline |
|
inline |
|
inline |
Áramköri elem hozzáadása.
| element | az áramkörre mutató pointer |
Definíció a(z) logic_vm.hpp fájl 269. sorában.
Hivatkozások dot_file, elements, logic_vm::block::get_id() és logic_vm::block::set_parent().
Hivatkozások: main().
|
inline |
Áramköri elem keresése azonosító alapján.
| id | azonosító |
Definíció a(z) logic_vm.hpp fájl 281. sorában.
Hivatkozások elements és logic_vm::block::get_id().
Hivatkozások: main().
|
inline |
Logikai szimulátor nevének lekérdezése.
Definíció a(z) logic_vm.hpp fájl 289. sorában.
Hivatkozások vm_name.
Hivatkozások: logic_vm::block::connect(), logic_vm::block::print() és logic_vm::block::port::set_state().
|
inline |
Logikai szimulátor aktuális idejének lekérdezése.
Definíció a(z) logic_vm.hpp fájl 291. sorában.
Hivatkozások time_stamp.
Hivatkozások: logic_vm::block::port::set_state().
|
inline |
Statisztikák kiírása.
Definíció a(z) logic_vm.hpp fájl 293. sorában.
Hivatkozások elements, queue, time_stamp és vm_name.
Hivatkozások: main().
|
inline |
|
inline |
Szimuláció futtatása. A szimuláció előre definiált ideig fut.
| end | a kívánt időlépések száma |
Definíció a(z) logic_vm.hpp fájl 306. sorában.
Hivatkozások queue és time_stamp.
Hivatkozások: main().
|
protected |
Dot file.
Definíció a(z) logic_vm.hpp fájl 255. sorában.
Hivatkozások: add(), logic_vm::block::port::add_driven(), logic_vm::block::add_port(), logic_vm() és ~logic_vm().
| std::list<block*> logic_vm::elements |
A szimulátorhoz adott áramköri elemek pointerei.
Definíció a(z) logic_vm.hpp fájl 258. sorában.
|
protected |
Feladatlista. Tartalmazza a végrehajtandó eseményt és annak az időpontját.
Definíció a(z) logic_vm.hpp fájl 253. sorában.
Hivatkozások: info(), list_queue(), run() és logic_vm::block::port::set_state().
|
private |
A logikai szimulátor aktuális idejét tartalmazó változó.
Definíció a(z) logic_vm.hpp fájl 245. sorában.
Hivatkozások: get_time(), info() és run().
|
private |
A szimulátor példány neve.
Definíció a(z) logic_vm.hpp fájl 247. sorában.
Hivatkozások: get_name(), info(), logic_vm() és ~logic_vm().