public abstract class ModuleProcess extends Statement
Modifier | Constructor and Description |
---|---|
protected |
ModuleProcess()
Default constructor.
|
protected |
ModuleProcess(boolean initial)
Constructs the process object with the specified value of initial flag.
|
protected |
ModuleProcess(EventList events)
Constructs the process object with the specified sensitivity list of events.
|
protected |
ModuleProcess(EventList events,
boolean initial)
Constructs the process object with the specified parameters.
|
protected |
ModuleProcess(ModuleProcess process)
Constructs object as a copy of the specified process.
|
protected |
ModuleProcess(java.lang.String name)
Constructs process object with the specified name.
|
protected |
ModuleProcess(java.lang.String name,
EventList events,
boolean initial)
Constructs the process object with the specified parameters.
|
Modifier and Type | Method and Description |
---|---|
void |
addEvent(Event event)
Add the specified event which this process is sensible to.
|
void |
addProperty(ru.ispras.fortress.expression.Node property)
Adds the specified process-level property.
|
protected void |
clearEvents(java.util.Collection<ru.ispras.fortress.expression.NodeVariable> variables)
Removes all the events that are related on the variables from the specified collection.
|
java.lang.String |
getDescription(ru.ispras.fortress.expression.printer.ExprTreePrinter printer)
Returns a string description in the format of the specified printer.
|
EventList |
getEventList()
Returns
EventList sensitivity list. |
java.lang.String |
getName()
Returns the process name.
|
java.util.List<ru.ispras.fortress.expression.Node> |
getProperties()
Returns process-level properties' list.
|
StatementType |
getType()
Returns the statement type.
|
boolean |
hasEvent(ru.ispras.fortress.expression.NodeVariable variable)
Checks whether this object is sensitive to event for the specified variable.
|
boolean |
isInitial()
Checks whether process is of initial kind.
|
boolean |
isSequential()
Checks whether statement is of sequential kind.
|
void |
setEventList(EventList eventList)
Sets new
EventList sensitivity list. |
void |
setParent(Statement parent)
Sets the specified statement as parent.
|
add, add, addAll, apply, contains, containStatements, deepCopy, equals, getDefines, getDescription, getId, getParent, getStatement, getStatementNum, getUses, hashCode, indexOf, isType, remove, removeAll, removeParent
addMetaInfo, addMetaInfo, addMetaInfo, addMetaInfo, getAllMetaInfo, getMetaInfo, getMetaInfo, getStringMetaInfo, getStringMetaInfo, hasMetaInfo, hasMetaInfo
protected ModuleProcess()
protected ModuleProcess(EventList events)
events
- The process list of events.protected ModuleProcess(boolean initial)
initial
- The initial flag.protected ModuleProcess(EventList events, boolean initial)
events
- The sensitivity list events.initial
- The initial flag.protected ModuleProcess(java.lang.String name, EventList events, boolean initial)
name
- The process name.events
- The process sensitivity list.initial
- The initial flag.protected ModuleProcess(java.lang.String name)
name
- The name of the constructed object.protected ModuleProcess(ModuleProcess process)
process
- The object to be an original for being copied.public java.lang.String getName()
public boolean isInitial()
true
if process is initial, false
otherwise.public EventList getEventList()
EventList
sensitivity list.public void setEventList(EventList eventList)
EventList
sensitivity list.eventList
- The event list.RetrascopeException
- when object is initial and argument is non-empty.public void addEvent(Event event)
event
- The event to be added.java.lang.IllegalArgumentException
- when argument is null
.RetrascopeException
- when this process is initial.protected void clearEvents(java.util.Collection<ru.ispras.fortress.expression.NodeVariable> variables)
variables
- The variables the events to be removed are related to.public boolean hasEvent(ru.ispras.fortress.expression.NodeVariable variable)
variable
- The variable that may be used in the object events.true
when this object is sensitive to an event for the specified variable,
false
otherwise.public java.util.List<ru.ispras.fortress.expression.Node> getProperties()
public void addProperty(ru.ispras.fortress.expression.Node property)
property
- The property to be added.public boolean isSequential()
Statement
isSequential
in class Statement
true
if it's sub-statements are treated as sequential,
false
otherwise.public StatementType getType()
Statement
public void setParent(Statement parent)
Statement
public java.lang.String getDescription(ru.ispras.fortress.expression.printer.ExprTreePrinter printer)
Identifiable
printer
- Printer that provides an output string format.