Logikai szimulátor
|
#include <logic_vm.hpp>
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().