Dataflow Runtime API
4.0.1.0
|
Optional parameters that can be passed from the active part to the runtime to be considered when creating the executable (task, thread, ect.) for the specific runtime. More...
#include <Imt.Base.Dff.Runtime/ExecutableConfiguration.h>
Classes | |
struct | CoreAffinity |
Data type to pass the core affinity. More... | |
struct | StackSize |
Size type to pass the stack size. More... | |
struct | TimeSlice |
Size type to pass the time slice. More... | |
Public Types | |
typedef uint32_t | CoreId |
A CoreId is used to indicate in which core the executable should run. More... | |
Public Member Functions | |
ExecutableConfiguration () | |
Default constructor. More... | |
ExecutableConfiguration (ExecutableConfiguration const &other) | |
Copy constructor. More... | |
ExecutableConfiguration (char_t const *const pName) | |
Custom constructor to set the executable name only. More... | |
ExecutableConfiguration (StackSize const &exeStackSize) | |
Custom constructor to set the stack size only. More... | |
ExecutableConfiguration (TimeSlice const &exeTimeSlice) | |
Custom constructor to set the time slice only. More... | |
ExecutableConfiguration (CoreAffinity const &exeCoreAffinity) | |
Custom constructor to set the core affinity only. More... | |
ExecutableConfiguration (char_t const *const pName, StackSize const &exeStackSize, TimeSlice const &exeTimeSlice) | |
Custom constructor to set all configuration parameters. More... | |
ExecutableConfiguration (char_t const *const pName, StackSize const &exeStackSize, TimeSlice const &exeTimeSlice, CoreAffinity const &exeCoreAffinity) | |
Custom constructor to set all configuration parameters. More... | |
virtual | ~ExecutableConfiguration () |
Destructor. More... | |
char_t const * | getName () const |
Get the requested name for the executable. More... | |
size_t | getStackSize () const |
Get the requested stack size for the executable. More... | |
uint32_t | getTimeSlice () const |
Get the requested time slice for the executable. More... | |
CoreId | getCoreAffinity () const |
Get the requested core affinity for the executable. More... | |
bool | isNameDefined () const |
Returns wether a name is defined for the executable. More... | |
bool | isStackSizeDefined () const |
Returns wether a stack size is defined for the executable. More... | |
bool | isTimeSliceDefined () const |
Returns wether a time slice is defined for the executable. More... | |
bool | isCoreAffinityDefined () const |
Returns whether a core affinity is defined for the executable. More... | |
Optional parameters that can be passed from the active part to the runtime to be considered when creating the executable (task, thread, ect.) for the specific runtime.
If the runtime does not support a parameter it is ignored.
At the moment the folowing parameters are supported:
Based on future runtime implementations this could be extened in future releases of the DFF framework.
A CoreId is used to indicate in which core the executable should run.
Possible values are 0..n + 1. The last value implies any core affinity.
imt::base::dff::runtime::ExecutableConfiguration::ExecutableConfiguration | ( | ) |
Default constructor.
No parameter is defined.
imt::base::dff::runtime::ExecutableConfiguration::ExecutableConfiguration | ( | ExecutableConfiguration const & | other | ) |
Copy constructor.
other | The ExecutableConfiguration instance to copy from. |
|
explicit |
Custom constructor to set the executable name only.
pName | The name of the executable passed to the runtime as null terminated string. |
|
explicit |
Custom constructor to set the stack size only.
exeStackSize | The size of the stack for the executable in the size unit used by the runtime. |
|
explicit |
Custom constructor to set the time slice only.
exeTimeSlice | The time slice for the executable for round-robin scheduling in the size unit used by the runtime. |
|
explicit |
Custom constructor to set the core affinity only.
exeCoreAffinity | The core in which the executable should run in. |
|
explicit |
Custom constructor to set all configuration parameters.
pName | The name of the executable passed to the runtime as null terminated string. |
exeStackSize | The size of the stack for the executable in the size unit used by the runtime. |
exeTimeSlice | The time slice for the executable for round-robin scheduling in the size unit used by the runtime. |
|
explicit |
Custom constructor to set all configuration parameters.
pName | The name of the executable passed to the runtime as null terminated string. |
exeStackSize | The size of the stack for the executable in the size unit used by the runtime. |
exeTimeSlice | The time slice for the executable for round-robin scheduling in the size unit used by the runtime. |
exeCoreAffinity | The core in which the executable should run in. |
|
virtual |
Destructor.
CoreId imt::base::dff::runtime::ExecutableConfiguration::getCoreAffinity | ( | ) | const |
Get the requested core affinity for the executable.
char_t const* imt::base::dff::runtime::ExecutableConfiguration::getName | ( | ) | const |
Get the requested name for the executable.
Returns a nullptr pointer when there is no name defined.
size_t imt::base::dff::runtime::ExecutableConfiguration::getStackSize | ( | ) | const |
Get the requested stack size for the executable.
Returns 0 when there is no stack size defined.
uint32_t imt::base::dff::runtime::ExecutableConfiguration::getTimeSlice | ( | ) | const |
Get the requested time slice for the executable.
Returns 0 when there is no time slice defined.
bool imt::base::dff::runtime::ExecutableConfiguration::isCoreAffinityDefined | ( | ) | const |
Returns whether a core affinity is defined for the executable.
bool imt::base::dff::runtime::ExecutableConfiguration::isNameDefined | ( | ) | const |
Returns wether a name is defined for the executable.
bool imt::base::dff::runtime::ExecutableConfiguration::isStackSizeDefined | ( | ) | const |
Returns wether a stack size is defined for the executable.
bool imt::base::dff::runtime::ExecutableConfiguration::isTimeSliceDefined | ( | ) | const |
Returns wether a time slice is defined for the executable.