www.pudn.com > truetime-1.2-compiled.zip > attachhook.cpp
#ifndef ATTACH_HOOK
#define ATTACH_HOOK
#include "getnode.cpp"
void ttAttachHook(char* nameOfTask, int ID, void (*hook)(UserTask*)) {
DataNode* dn = getNode(nameOfTask, rtsys->taskList);
UserTask* task = (UserTask*) dn->data;
if (task == NULL)
printf("ttAttachHook: Non-existent task '%s'\n", nameOfTask);
else {
switch (ID) {
case ARRIVAL:
task->arrival_hook = hook;
break;
case RELEASE:
task->release_hook = hook;
break;
case START:
task->start_hook = hook;
break;
case SUSPEND:
task->suspend_hook = hook;
break;
case RESUME:
task->resume_hook = hook;
break;
case FINISH:
task->finish_hook = hook;
break;
default:
printf("ttAttachHook: Unknown identifier, no hook attached!\n");
}
}
}
#endif