Classes | |
class | BooleanCondition< T > |
class | ConditionFilter< T > |
class | ExistenceCondition< T > |
class | ForAllCondition< T > |
interface | ICondition< T > |
Public Member Functions | |
AbstractAlgorithm (TransactionSet gamma, boolean tight) | |
ResultList | calculateAllWcrt () throws AbortedException |
double | calculateSingleWCRT (Task tauUA) throws AbortedException |
double | calculateSingleWCRT (int u_OneBased, int a_OneBased) throws AbortedException |
abstract void | checkAlgorithmCompatibility () throws IncompatibleDataException |
void | checkDifferentPids () throws IncompatibleDataException |
void | checkSpecialPredecessor () throws IncompatibleDataException |
void | checkSystemLoad () throws IncompatibleDataException |
final TransactionSet | gamma () |
final Transaction | gamma (int transactionIndex) |
Collection< Task > | hp (Transaction gamma_i, Task tau_ua) |
boolean | isAbort () |
boolean | isTight () |
int | p_0 (Task tau_ua, Task tau_uc) |
double | PHI_ijc (Task tau_ij, Task tau_ic) |
void | requestAbort (boolean abort) |
List< Integer > | taskIndices (Collection< Task > taskList) |
Set< Integer > | taskIndicesSet (Collection< Task > taskList) |
final Task | tau (int transactionIndex, int taskIndex) |
double | W_ic (Task tau_ic, Task tau_ua, double t) throws AbortedException |
Static Public Member Functions | |
static< TextendsObject > boolean | elementExists (Iterable< T > baseSet, ICondition< T > withCondition) |
static< TextendsObject > List< T > | filterASet (Iterable< T > baseSet, ICondition< T > forCondition) |
static< TextendsObject > boolean | forAll (Iterable< T > baseSet, ICondition< T > withCondition) |
Protected Member Functions | |
boolean | equals (Object obj1, Object obj2) |
abstract double | R (Task tauUA) throws AbortedException |
final int | taskIndex (Task tauXY) |
final Task | tau (Transaction transaction, int taskIndex) |
final int | transactionIndex (Task tauXY) |
final int | transactionIndex (Transaction gammaI) |
final Transaction | transactionOf (Task tauXY) |
Static Protected Member Functions | |
static final int | ceil (double a) |
static final int | floor (double a) |
static final double | max (double double1, double double2) |
static final int | max (int int1, int int2) |
static final double | min (double double1, double double2) |
static final double | mod (double divider, double quotient) |
static final int | posCeil (double a) |
Protected Attributes | |
final TransactionSet | gamma |
Static Protected Attributes | |
static final double | EPSILON = 1e-12 |
Static Private Member Functions | |
static double | murksRundung (double a) |
Private Attributes | |
boolean | abort = false |
final boolean | tight |
IdentityHashMap< Task, Transaction > | transactionCache = new IdentityHashMap<Task, Transaction>() |
de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.AbstractAlgorithm | ( | TransactionSet | gamma, | |
boolean | tight | |||
) |
ResultList de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.calculateAllWcrt | ( | ) | throws AbortedException |
double de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.calculateSingleWCRT | ( | int | u_OneBased, | |
int | a_OneBased | |||
) | throws AbortedException |
double de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.calculateSingleWCRT | ( | Task | tauUA | ) | throws AbortedException |
tauUA | τua, Task under analysis |
Reimplemented in de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmWcdopsPlus.
static final int de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.ceil | ( | double | a | ) | [static, protected] |
abstract void de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.checkAlgorithmCompatibility | ( | ) | throws IncompatibleDataException [pure virtual] |
Implemented in de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmAlternativeWcdops, de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmExact, de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmWcdo, de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmWcdopsPlus, and de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmWcso.
void de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.checkDifferentPids | ( | ) | throws IncompatibleDataException |
void de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.checkSpecialPredecessor | ( | ) | throws IncompatibleDataException |
void de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.checkSystemLoad | ( | ) | throws IncompatibleDataException |
static <TextendsObject> boolean de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.elementExists | ( | Iterable< T > | baseSet, | |
ICondition< T > | withCondition | |||
) | [static] |
boolean de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.equals | ( | Object | obj1, | |
Object | obj2 | |||
) | [protected] |
static <TextendsObject> List<T> de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.filterASet | ( | Iterable< T > | baseSet, | |
ICondition< T > | forCondition | |||
) | [static] |
static final int de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.floor | ( | double | a | ) | [static, protected] |
static <TextendsObject> boolean de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.forAll | ( | Iterable< T > | baseSet, | |
ICondition< T > | withCondition | |||
) | [static] |
final Transaction de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.gamma | ( | int | transactionIndex | ) |
transactionIndex | i |
Collection<Task> de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.hp | ( | Transaction | gamma_i, | |
Task | tau_ua | |||
) |
Searches for tasks of transaction gamma_i with higher or equal priority than task tau_ua, but excludes comarison task tau_ua. Difference to other implementation: Includes other Tasks of same priority
Reimplemented in de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmAlternativeWcdops, de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmWcdopsPlus, de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmWcdopsPlusFast, and de.fraunhofer.isst.axbench.timing.algorithms.cache.CachedAlgorithmWcdopsPlusOuter.CachedAlgorithmWcdopsPlus.
boolean de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.isAbort | ( | ) |
boolean de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.isTight | ( | ) |
static final double de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.max | ( | double | double1, | |
double | double2 | |||
) | [static, protected] |
static final int de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.max | ( | int | int1, | |
int | int2 | |||
) | [static, protected] |
static final double de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.min | ( | double | double1, | |
double | double2 | |||
) | [static, protected] |
static final double de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.mod | ( | double | divider, | |
double | quotient | |||
) | [static, protected] |
static double de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.murksRundung | ( | double | a | ) | [static, private] |
Eq. 5.9
Reimplemented in de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmWcdopsPlus.
double de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.PHI_ijc | ( | Task | tau_ij, | |
Task | tau_ic | |||
) |
Eq. 5.4
Reimplemented in de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmWcdopsPlus.
static final int de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.posCeil | ( | double | a | ) | [static, protected] |
abstract double de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.R | ( | Task | tauUA | ) | throws AbortedException [protected, pure virtual] |
Implemented in de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmAlternativeWcdops, de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmExact, de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmWcdo, de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmWcdopsPlus, and de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmWcso.
void de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.requestAbort | ( | boolean | abort | ) |
Wrapper for old hIj method
i | ||
j | ||
tauAB |
Implements de.fraunhofer.isst.axbench.timing.algorithms.IAlgorithm.
Reimplemented in de.fraunhofer.isst.axbench.timing.algorithms.AlgorithmWcdo.
final int de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.taskIndex | ( | Task | tauXY | ) | [protected] |
tauXY | τxy |
List<Integer> de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.taskIndices | ( | Collection< Task > | taskList | ) |
Set<Integer> de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.taskIndicesSet | ( | Collection< Task > | taskList | ) |
final Task de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.tau | ( | Transaction | transaction, | |
int | taskIndex | |||
) | [protected] |
final Task de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.tau | ( | int | transactionIndex, | |
int | taskIndex | |||
) |
final int de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.transactionIndex | ( | Transaction | gammaI | ) | [protected] |
final int de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.transactionIndex | ( | Task | tauXY | ) | [protected] |
final Transaction de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.transactionOf | ( | Task | tauXY | ) | [protected] |
tauXY | τxy |
double de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.W_ic | ( | Task | tau_ic, | |
Task | tau_ua, | |||
double | t | |||
) | throws AbortedException |
Eq. 5.7
boolean de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.abort = false [private] |
final double de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.EPSILON = 1e-12 [static, protected] |
final TransactionSet de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.gamma [protected] |
final boolean de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.tight [private] |
IdentityHashMap<Task, Transaction> de.fraunhofer.isst.axbench.timing.algorithms.AbstractAlgorithm.transactionCache = new IdentityHashMap<Task, Transaction>() [private] |