⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 defaulthooks.cpp

📁 一个很棒的网络控制系统仿真软件
💻 CPP
字号:
#ifndef DEFAULT_HOOKS#define DEFAULT_HOOKS#include "overruntimers.cpp"void default_release(Task *task) {  //printf("Release-hook for task '%s' at time %f\n",task->name,rtsys->time);  // Create deadline OR-timer  if (task->deadlineORhandler != NULL) {    if(task->currentJob->absDeadline > rtsys->time) {      double time = rtsys->time + task->deadline;      createDLTimer(task, time);    }    else {      createDLTimer(task, rtsys->time);    }  }}void default_start(Task *task) {    //printf("Start-hook for task '%s' at time %f\n",task->name,rtsys->time);  // Update the last start time for the task  task->currentJob->lastStart = rtsys->time;  // Create exectime OR-timer  if (task->exectimeORhandler != NULL && task->currentJob->budget > EPS) {    double time = rtsys->time + task->currentJob->budget;    createWCETTimer(task, time);  }}void default_suspend(Task* task) {  //printf("Suspend-hook for task '%s' at time %f\n",task->name,rtsys->time);  // Decrease budget  if (task->currentJob)    task->currentJob->budget -= (rtsys->time - task->currentJob->lastStart);  // Delete exectime OR-timer if it exists  removeWCETTimer(task);}void default_resume(Task* task) {  //printf("Resume-hook for task '%s' at time %f\n",task->name,rtsys->time);  // Update the last start time for the task  task->currentJob->lastStart = rtsys->time;  // Create exectime OR-timer  if (task->exectimeORhandler != NULL && task->currentJob->budget > EPS) {    double time = rtsys->time + task->currentJob->budget;    createWCETTimer(task, time);  }}void default_finish(Task* task) {  //printf("Finish-hook for task '%s' at time %f\n",task->name,rtsys->time);  // Delete deadline and exectime OR-timers if they exist  removeORTimers(task);}#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -