This abstract base class provides interfaces for trigger objects. Trigger objects are polled at a high rate during data taking. They are expected to talk with some hardware that is used to indicate a trigger to the data taking computer.
virtual bool operator()();
This pure virtual member must be implemented in concrete subclasses. It should return true if a trigger is pending, false otherwise. In order to reduce trigger latency, it is acceptable for this member to check for a trigger several times before returning.