Implements service to check if new TI has received trigger. More...
#include <linuxTITrigPollingService.hxx>
Public Member Functions | |
linuxTITrigPollingService (timespec *timeout) | |
Constructor. | |
virtual bool | setupInterrupt (void) |
Initialize TI board. | |
virtual bool | enableInterrupt (void) |
Launches thread that periodically calls interrupt method, then enables TI. | |
virtual bool | pauseInterrupt (void) |
Deletes interrupt. | |
virtual bool | resumeInterrupt (void) |
Enables interrupt. | |
virtual bool | deleteInterrupt (void) |
Disables board, cancels interrupt thread. | |
virtual void * | dispatchInterrupt (void *) |
Sleeps, checks for trigger, if found then calls InterruptibleObject interrupt method. |
Implements service to check if new TI has received trigger.
Definition at line 42 of file linuxTITrigPollingService.hxx.
linuxTITrigPollingService::linuxTITrigPollingService | ( | timespec * | timeout | ) | [explicit] |
Constructor.
timeout | Polling interval |
Definition at line 35 of file linuxTITrigPollingService.cc.
References TI_BASE_ADDR, and VME_ACCESS_MODE.
bool linuxTITrigPollingService::deleteInterrupt | ( | void | ) | [virtual] |
Disables board, cancels interrupt thread.
Implements codaObject::InterruptService.
Definition at line 183 of file linuxTITrigPollingService.cc.
void * linuxTITrigPollingService::dispatchInterrupt | ( | void * | ) | [virtual] |
Sleeps, checks for trigger, if found then calls InterruptibleObject interrupt method.
Resets TI after processing trigger. Runs in separate thread.
Definition at line 52 of file linuxTITrigPollingService.cc.
References codaObject::InterruptibleObject::interrupt(), and codaObject::InterruptService::myIntObj.
Referenced by enableInterrupt().
bool linuxTITrigPollingService::enableInterrupt | ( | void | ) | [virtual] |
Launches thread that periodically calls interrupt method, then enables TI.
Implements codaObject::InterruptService.
Definition at line 106 of file linuxTITrigPollingService.cc.
References DALOG_ERROR, codaObject::CodaObject::daLogMsg(), dispatchInterrupt(), and codaObject::InterruptService::myIntObj.
bool linuxTITrigPollingService::pauseInterrupt | ( | void | ) | [virtual] |
Deletes interrupt.
Implements codaObject::InterruptService.
Definition at line 147 of file linuxTITrigPollingService.cc.
bool linuxTITrigPollingService::resumeInterrupt | ( | void | ) | [virtual] |
Enables interrupt.
Implements codaObject::InterruptService.
Definition at line 165 of file linuxTITrigPollingService.cc.
bool linuxTITrigPollingService::setupInterrupt | ( | void | ) | [virtual] |
Initialize TI board.
Implements codaObject::InterruptService.
Definition at line 86 of file linuxTITrigPollingService.cc.
References TI_BASE_ADDR.