lisa.wlgen.rta.RTATask#
- class lisa.wlgen.rta.RTATask(delay_s=0, loops=1, sched_policy=None, priority=None, children=None, **kwargs)[source]#
Bases:
RTAPhaseTree
Base class for conveniently constructing params to
RTA.from_profile()
- Parameters:
delay_s (float) – the delay in seconds before starting.
loops (int) – Number of times to repeat the described task.
sched_policy (str or None) – the scheduler policy for this task. Defaults to
SCHED_OTHER
, see sched for information on scheduler policies.priority (int or None) – the scheduler priority for this task. See sched for information on scheduler priorities.
This class represents an rt-app task which may contain multiple
Phase
. It implements__add__
so that using+
on two tasks concatenates their phases. For exampleRamp() + Periodic()
would yield anRTATask
that executes the default phases forRamp
followed by the default phases forPeriodic
.Deprecated since version 2.0.
RTATask
is deprecated and will be removed in version 4.0, uselisa.wlgen.rta.RTAPhase
insteadAttributes
__reversed__
inheritedSee
collections.abc.Mapping.__reversed__
Properties
children
inheritedTree levels are transparent and their children expanded directly in their parent, as long as they have no properties on their own that could change the output of
topo_sort()
. This allows nestedRTAPhaseTree
to act as if it was just a flat node, which is useful since repeated composition with+
operator will give nested binary trees like that.is_empty
inheritedTrue
if the phase has no content and will result in an empty JSON phase(s).phases
inheritedTopological sort of the phases in the tree, with the properties merged along each path from the root to the leaves.
Methods
Update the docstring used as a
str.format()
template with the following keys:.HASH_COERCE()
inheritedUsed to coerce the values of
self.__dict__
to hashable values.__add__()
inheritedCompose two phases together by running one after the other.
__await__()
inherited__class_getitem__()
inheritedSee
collections.abc.Iterable.__class_getitem__()
__contains__()
inheritedSee
collections.abc.Mapping.__contains__()
__getitem__()
inheritedLookup the value of the given property on that phase.
__iter__()
inherited__len__()
inherited__mul__()
inheritedMultiply the phase by
n
, in order to repeat it.__rmul__()
inheritedget()
inheritedSee
collections.abc.Mapping.get()
get_rtapp_repr()
inheritedrt-app JSON representation of the phase.
items()
inheritedSee
collections.abc.Mapping.items()
keys()
inheritedSee
collections.abc.Mapping.keys()
split_prop_kwargs()
inheritedSplit the
kwargs
into two categories:.topo_sort()
inheritedTopological sort of the tree, and combine the properties along each path from root to leaves at the same time.
values()
inheritedSee
collections.abc.Mapping.values()
with_delete_props()
inheritedDelete all the given property names, equivalent to
with_props(foo=delete())
.with_phase_properties()
inheritedReturn a cloned instance with the properties combined with the given
properties
usingRTAPhaseProperties.__and__()
(&
). Theproperties
parameter is the left operand. Ifproperties
isNone
, just return the phase itself.with_properties_map()
inheritedSame as
with_phase_properties()
but withproperties
passed toRTAPhaseProperties.from_polymorphic()
first.with_props()
inheritedSame as
with_phase_properties()
but using keyword arguments to set each property. The resulting dictionary is passed toRTAPhaseProperties.from_polymorphic()
first.
Attributes#
- RTATask.__reversed__ = None#
Properties#
- property RTATask.delay_s#
- property RTATask.loops#
- property RTATask.priority#
- property RTATask.sched_policy#
- property RTATask.children#
Inherited property, see
lisa.wlgen.rta.RTAPhaseTree.children
Tree levels are transparent and their children expanded directly in their parent, as long as they have no properties on their own that could change the output of
topo_sort()
. This allows nestedRTAPhaseTree
to act as if it was just a flat node, which is useful since repeated composition with+
operator will give nested binary trees like that.
- property RTATask.is_empty#
Inherited property, see
lisa.wlgen.rta.RTAPhaseTree.is_empty
True
if the phase has no content and will result in an empty JSON phase(s).
- property RTATask.phases#
Inherited property, see
lisa.wlgen.rta.RTAPhaseTree.phases
Topological sort of the phases in the tree, with the properties merged along each path from the root to the leaves.
Methods#
- RTATask.__init_subclass__()#
Update the docstring used as a
str.format()
template with the following keys:{prop_kwargs}
: replaced by the Sphinx-friendly list of “prop_*” keyword arguments
- RTATask.HASH_COERCE(x, coerce)#
Inherited method, see
lisa.utils.SimpleHash.HASH_COERCE()
Used to coerce the values of
self.__dict__
to hashable values.
- RTATask.__add__(other)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__add__()
Compose two phases together by running one after the other.
- RTATask.__await__()#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__await__()
- classmethod RTATask.__class_getitem__()#
Inherited method, see
collections.abc.Iterable.__class_getitem__()
- RTATask.__contains__()#
Inherited method, see
collections.abc.Mapping.__contains__()
- RTATask.__getitem__(key)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__getitem__()
Lookup the value of the given property on that phase.
- RTATask.__iter__()#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__iter__()
- RTATask.__len__()#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__len__()
- RTATask.__mul__(n)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__mul__()
Multiply the phase by
n
, in order to repeat it.
- RTATask.__rmul__(n)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.__rmul__()
- RTATask.get()#
Inherited method, see
collections.abc.Mapping.get()
- RTATask.get_rtapp_repr(task_name, plat_info, force_defaults=False, no_force_default_keys=None, **kwargs)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseTree.get_rtapp_repr()
rt-app JSON representation of the phase.
- RTATask.items()#
Inherited method, see
collections.abc.Mapping.items()
- RTATask.keys()#
Inherited method, see
collections.abc.Mapping.keys()
- static RTATask.split_prop_kwargs(kwargs, properties=None)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.split_prop_kwargs()
Split the
kwargs
into two categories:.
- RTATask.topo_sort()#
Inherited method, see
lisa.wlgen.rta.RTAPhaseTree.topo_sort()
Topological sort of the tree, and combine the properties along each path from root to leaves at the same time.
- RTATask.values()#
Inherited method, see
collections.abc.Mapping.values()
- RTATask.with_delete_props(properties)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.with_delete_props()
Delete all the given property names, equivalent to
with_props(foo=delete())
.
- RTATask.with_phase_properties(properties)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.with_phase_properties()
Return a cloned instance with the properties combined with the given
properties
usingRTAPhaseProperties.__and__()
(&
). Theproperties
parameter is the left operand. Ifproperties
isNone
, just return the phase itself.
- RTATask.with_properties_map(properties, **kwargs)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.with_properties_map()
Same as
with_phase_properties()
but withproperties
passed toRTAPhaseProperties.from_polymorphic()
first.
- RTATask.with_props(**kwargs)#
Inherited method, see
lisa.wlgen.rta.RTAPhaseBase.with_props()
Same as
with_phase_properties()
but using keyword arguments to set each property. The resulting dictionary is passed toRTAPhaseProperties.from_polymorphic()
first.