|
Public Member Functions |
| IOInterface (const char *_title, TimedAutomataSystem &ta) |
| Analyse the system and extract I/O information:.
|
virtual | ~IOInterface () |
| Nothing dynamic has been used, no string allocations, therefore no cleanup.
|
void | printForTron (std::ostream &os) |
| Print I/O information in TRON format into given output stream.
|
void | printForDot (std::ostream &os, bool ranked, bool erd, bool cEdged) |
| Print I/O information in DOT format into given output stream.
|
int32_t | visitEmptyStatement (EmptyStatement *stat) |
| System visitor pattern extracts read/write information from UCode.
|
int32_t | visitExprStatement (ExprStatement *stat) |
int32_t | visitForStatement (ForStatement *stat) |
int32_t | visitIterationStatement (IterationStatement *stat) |
int32_t | visitWhileStatement (WhileStatement *stat) |
int32_t | visitDoWhileStatement (DoWhileStatement *stat) |
int32_t | visitBlockStatement (BlockStatement *stat) |
int32_t | visitSwitchStatement (SwitchStatement *stat) |
int32_t | visitCaseStatement (CaseStatement *stat) |
int32_t | visitDefaultStatement (DefaultStatement *stat) |
int32_t | visitIfStatement (IfStatement *stat) |
int32_t | visitBreakStatement (BreakStatement *stat) |
int32_t | visitContinueStatement (ContinueStatement *stat) |
int32_t | visitReturnStatement (ReturnStatement *stat) |
Protected Types |
typedef std::set< const char *,
less_str > | strs_t |
typedef std::map< const iota_t *,
strs_t > | iota2strs_t |
typedef std::map< const char *,
strs_t > | str2strs_t |
typedef std::map< const char *,
std::set< iota_t * >, less_str > | str2tas_t |
Protected Member Functions |
bool | checkParams (const symbol_t &s) |
void | addChan (const symbol_t &, strs_t &, str2tas_t &) |
void | addVar (const symbol_t &, str2strs_t &, str2tas_t &) |
void | visitProcess (instance_t &) |
void | visitExpression (const expression_t &) |
void | pushIO () |
void | popIO () |
Protected Attributes |
const char * | title |
std::list< iota_t > | automata |
str2tas_t | receivers |
str2tas_t | transmiters |
strs_t | procs |
strs_t | channels |
strs_t | variables |
iota_t * | cTA |
instance_t * | cP |
const char * | cChan |
bool | inp |
bool | out |
bool | sync |
bool | paramsExpanded |
std::stack< std::pair< bool,
bool > > | ioStack |
Classes |
struct | iota_t |
struct | less_str |
Simply create using constructor and then use print* methods. The rest of methods are used internally by visitor pattern. Feel free to add new print* methods or inheriting classes.