public class SoftwareUtil
extends Object
| Constructor and Description |
|---|
SoftwareUtil() |
| Modifier and Type | Method and Description |
|---|---|
static EList<CallSequenceItem> |
collectCalls(Process process)
Traverse the call graph of a process and collect all items of the call sequences.
|
static EList<CallSequenceItem> |
collectCalls(Process process,
EMap<ModeLabel,String> modes)
Traverse the call graph of a process and collect all items of the call sequences.
|
static <T extends CallSequenceItem> |
collectCalls(Process process,
EMap<ModeLabel,String> modes,
Class<T> targetClass)
Traverse the call graph of a process and collect all items of the call sequences.
|
static <T extends CallSequenceItem> |
collectCalls(Process process,
EMap<ModeLabel,String> modes,
Class<T> targetClass,
Function<T,Boolean> filter)
Traverse the call graph of a process and collect all items of the call sequences.
|
static EList<CallSequenceItem> |
collectCalls(Process process,
EMap<ModeLabel,String> modes,
Function<CallSequenceItem,Boolean> filter)
Traverse the call graph of a process and collect all items of the call sequences.
|
static List<ClearEvent> |
collectClearEvents(Process process,
EMap<ModeLabel,String> modes)
Collects a list of clear event calls for a process
|
static List<CallSequenceItem> |
collectEventsOfProcess(Process process,
EMap<ModeLabel,String> modes)
Collects a list of event calls (clear, set or wait) of a process
|
static EList<RunnableItem> |
collectRunnableItems(Runnable runnable)
Traverse the runnable items graph of a runnable and collect all items.
|
static EList<RunnableItem> |
collectRunnableItems(Runnable runnable,
EMap<ModeLabel,String> modes)
Traverse the runnable items graph of a runnable and collect all items.
|
static <T extends RunnableItem> |
collectRunnableItems(Runnable runnable,
EMap<ModeLabel,String> modes,
Class<T> targetClass)
Traverse the runnable items graph of a runnable and collect all items.
|
static <T extends RunnableItem> |
collectRunnableItems(Runnable runnable,
EMap<ModeLabel,String> modes,
Class<T> targetClass,
Function<T,Boolean> filter)
Traverse the runnable items graph of a runnable and collect all items.
|
static EList<RunnableItem> |
collectRunnableItems(Runnable runnable,
EMap<ModeLabel,String> modes,
Function<RunnableItem,Boolean> filter)
Traverse the runnable items graph of a runnable and collect all items.
|
static List<SetEvent> |
collectSetEvents(Process process,
EMap<ModeLabel,String> modes)
Collects a list of set events calls for a process
|
static List<WaitEvent> |
collectWaitEvents(Process process,
EMap<ModeLabel,String> modes)
Collects a list of wait event calls for a process
|
static Set<Label> |
getAccessedLabelSet(Process process,
EMap<ModeLabel,String> modes)
Returns a set of labels accessed by the process
|
static Set<Label> |
getAccessedLabelSet(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a set of labels accessed from the runnable
|
static List<Runnable> |
getCalledRunnables(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a list of runnables directly called by the runnable
|
static List<ExecutionNeed> |
getExecutionNeeds(Process process,
EMap<ModeLabel,String> modes)
Returns a list of all execution needs for a given process
|
static List<ExecutionNeed> |
getExecutionNeeds(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a list of all execution needs for a given runnable
|
static List<Label> |
getInterTaskCommunication(Process sender,
Process receiver,
EMap<ModeLabel,String> modes)
Returns a list of all exchanged labels that are written by the sender process and read by the receiver process
|
static float |
getLabelAccessCountFromStatistics(LabelAccess labelAcc,
RuntimeUtil.TimeType accType)
Returns the number of label accesses from a statistic.
|
static List<LabelAccess> |
getLabelAccessList(Process process,
EMap<ModeLabel,String> modes)
Returns a list of all label accesses of the process
|
static List<LabelAccess> |
getLabelAccessList(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a list of all label accesses of the runnable
|
static Map<Label,List<LabelAccessStatistic>> |
getLabelAccessStatisticsMap(Process process,
EMap<ModeLabel,String> modes)
Returns a map: labels accessed by the process -> the corresponding label access statistics
|
static Map<Label,List<LabelAccessStatistic>> |
getLabelAccessStatisticsMap(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a map: labels accessed by the runnable -> the corresponding LabelAccessStatistics
|
static float |
getLabelReadCount(Label label,
Process process,
EMap<ModeLabel,String> modes,
RuntimeUtil.TimeType timeType)
Returns the reads from a process to a certain label.
|
static Map<Label,List<LabelAccess>> |
getLabelToLabelAccessMap(Process process,
EMap<ModeLabel,String> modes)
Returns a map: accessed labels of the process -> the corresponding label accesses
|
static Map<Label,List<LabelAccess>> |
getLabelToLabelAccessMap(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a map: labels accessed from runnable -> the corresponding label accesses
|
static float |
getLabelWriteCount(Label label,
Process process,
EMap<ModeLabel,String> modes,
RuntimeUtil.TimeType timeType)
Returns the writes from a process to a certain label.
|
static List<Process> |
getProcesses(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a list of processes calling the runnable
|
static List<Runnable> |
getReaderListOfLabel(Label label,
EMap<ModeLabel,String> modes)
Returns a list of runnables reading the label
|
static Set<Runnable> |
getReadersSetOfLabel(Label label,
EMap<ModeLabel,String> modes)
Returns a set of runnables reading the label
|
static List<LabelAccess> |
getReadLabelAccessList(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a list of read label accesses of the runnable
|
static Map<Label,List<LabelAccessStatistic>> |
getReadLabelAccessStatisticsMap(Process process,
EMap<ModeLabel,String> modes)
Returns a map: labels read the process -> the corresponding label access statistics
|
static Map<Label,List<LabelAccessStatistic>> |
getReadLabelAccessStatisticsMap(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a map: labels read by the runnable -> the corresponding LabelAccessStatistics
|
static Set<Label> |
getReadLabelSet(Process process,
EMap<ModeLabel,String> modes)
Returns a set of labels read by the process
|
static Set<Label> |
getReadLabelSet(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a set of labels read by the runnable
|
static List<Runnable> |
getRunnableCallParents(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a list of runnables directly calling the runnable
|
static List<Runnable> |
getRunnableList(Process process,
EMap<ModeLabel,String> modes)
Returns a list of runnables called by the process
|
static Set<Runnable> |
getRunnableSet(Process process,
EMap<ModeLabel,String> modes)
Returns a set of runnables called by the process - no duplicates
|
static Set<ServerCall> |
getServerCallSet(Process process,
EMap<ModeLabel,String> modes)
Returns a set of server calls for a process
|
static Set<ServerCall> |
getServerCallSet(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a set of server calls for a runnable
|
static List<Ticks> |
getTicks(Process process,
EMap<ModeLabel,String> modes)
Returns a list of all ticks for a given process
|
static List<Ticks> |
getTicks(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a list of all ticks for a given runnable
|
static List<LabelAccess> |
getWriteLabelAccessList(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a list of write label accesses of the runnable
|
static Map<Label,List<LabelAccessStatistic>> |
getWriteLabelAccessStatisticsMap(Process process,
EMap<ModeLabel,String> modes)
Returns a map: labels written by the process -> the corresponding label access statistics
|
static Map<Label,List<LabelAccessStatistic>> |
getWriteLabelAccessStatisticsMap(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a map: labels written by the runnable -> the corresponding LabelAccessStatistics
|
static Set<Label> |
getWriteLabelSet(Process process,
EMap<ModeLabel,String> modes)
Returns a set of labels written by the process
|
static Set<Label> |
getWriteLabelSet(Runnable runnable,
EMap<ModeLabel,String> modes)
Returns a set of labels written by the runnable
|
static List<Runnable> |
getWriterListOfLabel(Label label,
EMap<ModeLabel,String> modes)
Returns a list of runnables writing the label
|
static Set<Runnable> |
getWriterSetOfLabel(Label label,
EMap<ModeLabel,String> modes)
Returns a set of runnables writing the label
|
public static EList<CallSequenceItem> collectCalls(Process process)
process - process (Task or ISR)public static EList<CallSequenceItem> collectCalls(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - list of mode literals that should be consideredpublic static EList<CallSequenceItem> collectCalls(Process process,
EMap<ModeLabel,String> modes,
Function<CallSequenceItem,Boolean> filter)
process - process (Task or ISR)modes - list of mode literals that should be consideredfilter - lambda expression (e.g. "a -> a instanceof TaskRunnableCall")public static <T extends CallSequenceItem> EList<T> collectCalls(Process process,
EMap<ModeLabel,String> modes,
Class<T> targetClass)
process - Process (Task or ISR)modes - list of mode literals that should be consideredtargetClass - subclass of CallSequenceItem that restricts the resultpublic static <T extends CallSequenceItem> EList<T> collectCalls(Process process,
EMap<ModeLabel,String> modes,
Class<T> targetClass,
Function<T,Boolean> filter)
process - process (Task or ISR)modes - list of mode literals that should be consideredtargetClass - subclass of CallSequenceItem that restricts the resultfilter - lambda expression (e.g. "a -> a instanceof TaskRunnableCall")public static EList<RunnableItem> collectRunnableItems(Runnable runnable)
runnable - runnablepublic static EList<RunnableItem> collectRunnableItems(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - list of mode literals that should be consideredpublic static EList<RunnableItem> collectRunnableItems(Runnable runnable,
EMap<ModeLabel,String> modes,
Function<RunnableItem,Boolean> filter)
runnable - runnablemodes - list of mode literals that should be consideredfilter - lambda expression (e.g. "a -> a instanceof LabelAccess")public static <T extends RunnableItem> EList<T> collectRunnableItems(Runnable runnable,
EMap<ModeLabel,String> modes,
Class<T> targetClass)
runnable - runnablemodes - list of mode literals that should be consideredtargetClass - subclass of RunnableItem that restricts the resultpublic static <T extends RunnableItem> EList<T> collectRunnableItems(Runnable runnable,
EMap<ModeLabel,String> modes,
Class<T> targetClass,
Function<T,Boolean> filter)
runnable - runnablemodes - list of mode literals that should be consideredtargetClass - subclass of RunnableItem that restricts the resultfilter - lambda expression (e.g. "a -> a instanceof LabelAccess")public static Set<Label> getAccessedLabelSet(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static Set<Label> getReadLabelSet(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static Set<Label> getWriteLabelSet(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static List<LabelAccess> getLabelAccessList(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static List<LabelAccess> getReadLabelAccessList(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static List<LabelAccess> getWriteLabelAccessList(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static Map<Label,List<LabelAccess>> getLabelToLabelAccessMap(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static Map<Label,List<LabelAccessStatistic>> getLabelAccessStatisticsMap(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static Map<Label,List<LabelAccessStatistic>> getReadLabelAccessStatisticsMap(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static Map<Label,List<LabelAccessStatistic>> getWriteLabelAccessStatisticsMap(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static Set<Label> getAccessedLabelSet(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static Set<Label> getReadLabelSet(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static Set<Label> getWriteLabelSet(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static List<LabelAccess> getLabelAccessList(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static Map<Label,List<LabelAccess>> getLabelToLabelAccessMap(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static Map<Label,List<LabelAccessStatistic>> getLabelAccessStatisticsMap(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static Map<Label,List<LabelAccessStatistic>> getReadLabelAccessStatisticsMap(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static Map<Label,List<LabelAccessStatistic>> getWriteLabelAccessStatisticsMap(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static float getLabelReadCount(Label label,
Process process,
EMap<ModeLabel,String> modes,
RuntimeUtil.TimeType timeType)
public static float getLabelWriteCount(Label label,
Process process,
EMap<ModeLabel,String> modes,
RuntimeUtil.TimeType timeType)
public static List<Runnable> getRunnableList(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static Set<Runnable> getRunnableSet(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static float getLabelAccessCountFromStatistics(LabelAccess labelAcc,
RuntimeUtil.TimeType accType)
public static List<Runnable> getReaderListOfLabel(Label label,
EMap<ModeLabel,String> modes)
label - labelmodes - (optional) - null workspublic static Set<Runnable> getReadersSetOfLabel(Label label,
EMap<ModeLabel,String> modes)
label - labelmodes - (optional) - null workspublic static List<Runnable> getWriterListOfLabel(Label label,
EMap<ModeLabel,String> modes)
label - labelmodes - (optional) - null workspublic static Set<Runnable> getWriterSetOfLabel(Label label,
EMap<ModeLabel,String> modes)
label - labelmodes - (optional) - null workspublic static List<SetEvent> collectSetEvents(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static List<ClearEvent> collectClearEvents(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static List<WaitEvent> collectWaitEvents(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static List<CallSequenceItem> collectEventsOfProcess(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static List<Label> getInterTaskCommunication(Process sender,
Process receiver,
EMap<ModeLabel,String> modes)
sender - process (Task or ISR)receiver - process (Task or ISR)modes - (optional) - null workspublic static List<Process> getProcesses(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static List<Runnable> getRunnableCallParents(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static List<Runnable> getCalledRunnables(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static List<ExecutionNeed> getExecutionNeeds(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static List<ExecutionNeed> getExecutionNeeds(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static List<Ticks> getTicks(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static List<Ticks> getTicks(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null workspublic static Set<ServerCall> getServerCallSet(Runnable runnable,
EMap<ModeLabel,String> modes)
runnable - runnablemodes - (optional) - null workspublic static Set<ServerCall> getServerCallSet(Process process,
EMap<ModeLabel,String> modes)
process - process (Task or ISR)modes - (optional) - null works