drake
1.0.0
|
#include <stddef.h>
#include <drake/processor.h>
#include <drake/schedule.h>
#include <pelib/structure.h>
Go to the source code of this file.
Data Structures | |
struct | mapping |
Defines | |
#define | DRAKE_MAPPING_OUT_WARMUP "x [*,*]\n" |
#define | DRAKE_MAPPING_OUT_NODE_COLUMN_WIDTH 6 |
#define | DRAKE_MAPPING_OUT_PROC_COLUMN_WIDTH 4 |
#define | DRAKE_MAPPING_OUT_AFFECT " :=" |
#define | DRAKE_MAPPING_OUT_ENDING ";" |
#define | STRUCT_T mapping_t |
#define | DONE_mapping_t 1 |
Typedefs | |
typedef struct mapping | mapping_t |
Functions | |
int | drake_mapping_insert_task (mapping_t *, processor_id, task_t *) |
Insert a new task to this mapping. | |
int | drake_mapping_remove_task (mapping_t *, task_id) |
Removes a task from this mapping. | |
int | drake_mapping_find_processor_index (mapping_t *, processor_id) |
Finds the index of processor in the mapping processor array, from the processor's ID. | |
processor_id | drake_mapping_find_processor (mapping_t *, task_id) |
Finds the processor (its processor_id) which handles the task pointed by the task_id parameter. | |
int | drake_mapping_insert_processor (mapping_t *, processor_t *) |
Inserts a new processor in the mapping. | |
int | drake_mapping_remove_processor (mapping_t *, int) |
Not implemented. Removes a processor from the mapping. | |
int | drake_mapping_violations (mapping_t *) |
char * | drake_mapping_drawstr (mapping_t *, char *) |
int | drake_mapping_draw (mapping_t *, FILE *) |
Draws the mapping to a .fig file in the appropriate format. | |
mapping_t * | drake_mapping_loadfile (mapping_t *mapping, FILE *ilp_mapping_file) |
Reads a mapping from the output of the ILP solver. | |
mapping_t * | drake_mapping_loadstr (mapping_t *, char *) |
Reads a mapping from a string in the same format than produced by ilp solver. | |
mapping_t * | drake_mapping_loadfilterstr (mapping_t *mapping, char *str, int(filter)(task_t *)) |
mapping_t * | drake_mapping_loadfilterfile (mapping_t *mapping, FILE *ilp_mapping_file, int(filter)(task_t *)) |
task_t * | drake_mapping_find_task (mapping_t *mapping, task_id id) |
#define DONE_mapping_t 1 |
#define DRAKE_MAPPING_OUT_AFFECT " :=" |
#define DRAKE_MAPPING_OUT_ENDING ";" |
#define DRAKE_MAPPING_OUT_NODE_COLUMN_WIDTH 6 |
#define DRAKE_MAPPING_OUT_PROC_COLUMN_WIDTH 4 |
#define DRAKE_MAPPING_OUT_WARMUP "x [*,*]\n" |
int drake_mapping_draw | ( | mapping_t * | , |
FILE * | |||
) |
char* drake_mapping_drawstr | ( | mapping_t * | , |
char * | |||
) |
int drake_mapping_find_processor_index | ( | mapping_t * | , |
processor_id | |||
) |
task_t* drake_mapping_find_task | ( | mapping_t * | mapping, |
task_id | id | ||
) |
int drake_mapping_insert_processor | ( | mapping_t * | , |
processor_t * | |||
) |
int drake_mapping_insert_task | ( | mapping_t * | , |
processor_id | , | ||
task_t * | |||
) |
mapping_t* drake_mapping_loadfile | ( | mapping_t * | mapping, |
FILE * | ilp_mapping_file | ||
) |
Reads a mapping from the output of the ILP solver.
Initializes a mapping_t structure and fills it with a mapping file obtained from the ILP solver the parameter mapping should not be initialized, and the same pointer should receive the result of this function
mapping | Mapping that will point to the data read |
ilp_mapping_file | File from where to read the mapping calculated by the ilp solver |
mapping_t* drake_mapping_loadfilterfile | ( | mapping_t * | mapping, |
FILE * | ilp_mapping_file, | ||
int(filter)(task_t *) | |||
) |
Similar to drake_mapping_readfile, but filter tasks according to a given user filter function
mapping | Mapping that will point to the data read |
ilp_mapping_file | File from where to read the mapping calculated by the ilp solver |
filter | Pointer to a user function that returns 0 if the task should be kept, non zero otherwise. |
mapping_t* drake_mapping_loadfilterstr | ( | mapping_t * | mapping, |
char * | str, | ||
int(filter)(task_t *) | |||
) |
Reads a mapping from a string similarly to drake_mapping_readfile(), and filter tasks according to filter function
mapping | Mapping that will point to the data read |
str | Mapping string obtained from the ILP solver |
filter | Pointer to a user function that returns 0 if the task should be kept, non zero otherwise. |
mapping_t* drake_mapping_loadstr | ( | mapping_t * | , |
char * | |||
) |
int drake_mapping_remove_processor | ( | mapping_t * | , |
int | |||
) |
int drake_mapping_remove_task | ( | mapping_t * | , |
task_id | |||
) |
int drake_mapping_violations | ( | mapping_t * | ) |