📄 createhandler.cpp
字号:
#ifndef CREATE_HANDLER#define CREATE_HANDLERbool ttCreateInterruptHandler(char *name, double priority, double (*codeFcn)(int, void*)) { HandlerNode* n; Handler* hdl; if (strcmp(name,"") == 0) { MEX_ERROR("ttCreateInterruptHandler: Name should be a non-empty string!"); return false; } if (rtsys->prioFcn == NULL) { MEX_ERROR("ttCreateInterruptHandler: Kernel must be initialized before creation of handlers!"); return false; } n = (HandlerNode*) rtsys->handlerList->getFirst(); while (n!=NULL) { hdl = n->getHandler(); if (hdl->name != NULL) { if (strcmp(hdl->name, name) == 0) break; } n = (HandlerNode*) n->getNext(); } if (n != NULL) { MEX_ERROR("ttCreateInterruptHandler: Name of handler not unique!"); return false; } hdl = new Handler; hdl->name = new char[strlen(name)+1]; strcpy(hdl->name, name); hdl->handlerID = rtsys->nbrOfHandlers + 1; hdl->execTime = 0.0; hdl->priority = priority; hdl->segment = 0; hdl->display = true; rtsys->nbrOfSchedHandlers++; hdl->invokedBy = NULL; hdl->data = NULL; hdl->dataMATLAB = NULL; hdl->codeFcn = codeFcn; hdl->codeFcnMATLAB = NULL; rtsys->handlerList->appendNode(new HandlerNode(hdl)); rtsys->nbrOfHandlers++; return true;}bool ttCreateInterruptHandler(char *name, double priority, double (*codeFcn)(int, void*), void* data) { HandlerNode* n; if (ttCreateInterruptHandler(name, priority, codeFcn)) { n = (HandlerNode*) rtsys->handlerList->getLast(); n->getHandler()->data = data; return true; } else { return false; }}#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -