#ifndef MONANO_DATA_H #define MONANO_DATA_H yes #include #include #include #include #include #include #include #include #include #include "ts.h" #include "returncode.h" /* To store data on thread during the execution of the application */ typedef struct pthread_monano_list { pthread_monano_id_t id; struct pthread_monano_list* suivant; }pthread_monano_list; /* Containt a list of executed thread to find out if dependencies are respected */ extern struct pthread_monano_list *dependencies_list; /* Containt a list of executed thread to find out if all wcet have been reduced */ extern struct pthread_monano_list *processor_speed_list; /* containt a list of thread preemption */ extern struct pthread_monano_list *thread_preemption_list; /* Add a thread in a list at the begin */ pthread_monano_list* pthread_monano_add_thread(pthread_monano_list* l, pthread_monano_id_t val); /* To find if a thread is in a list */ pthread_monano_list* pthread_monano_search_thread(pthread_monano_list* l, pthread_monano_id_t val); /* Remove the thread at the top of the list */ pthread_monano_list* pthread_monano_remove_thread(pthread_monano_list* l); /* Return the id of the thread at the top of the list */ pthread_monano_id_t pthread_monano_head_thread(pthread_monano_list* l); /* To have the number of thread in the list */ int pthread_monano_count_thread(pthread_monano_list* l); /*to simulate the time execution of a thread*/ void pthread_monano_thread_execution(pthread_monano_t* t, pthread_monano_id_t id); /*to simulate the interruption time of a thread*/ void pthread_monano_thread_interruption(struct timespec h); #endif