openDAQ
Open data acquisition platform
IWorkRepetitive Struct Referenceabstract

The interface used for repetitive work that needs to be executed in the main loop. The callback is expected to return a boolean value indicating whether the work should be repeated. If the callback does return nothing, it is assumed that the work should not be repeated. More...

+ Inheritance diagram for IWorkRepetitive:
+ Collaboration diagram for IWorkRepetitive:

Detailed Description

The interface used for repetitive work that needs to be executed in the main loop. The callback is expected to return a boolean value indicating whether the work should be repeated. If the callback does return nothing, it is assumed that the work should not be repeated.

Public Member Functions

virtual ErrCode INTERFACE_FUNC executeRepetitively (Bool *repeatAfter)=0
 Executes the repetitive task logic and determines whether it should be repeated. More...
 
- Public Member Functions inherited from IBaseObject
virtual ErrCode INTERFACE_FUNC borrowInterface (const IntfID &intfID, void **obj) const =0
 Returns another interface which is supported by the object without incrementing the reference count. More...
 
virtual ErrCode INTERFACE_FUNC dispose ()=0
 Disposes all references held by the object. More...
 
virtual ErrCode INTERFACE_FUNC getHashCode (SizeT *hashCode)=0
 Returns hash code of the object. More...
 
virtual ErrCode INTERFACE_FUNC equals (IBaseObject *other, Bool *equal) const =0
 Compares object to another object for equality. More...
 
virtual ErrCode INTERFACE_FUNC toString (CharPtr *str)=0
 Returns a string representation of the object. More...
 
- Public Member Functions inherited from IUnknown
virtual ErrCode INTERFACE_FUNC queryInterface (const IntfID &intfID, void **obj)=0
 Returns another interface which is supported by the object and increments the reference count. More...
 
virtual int INTERFACE_FUNC addRef ()=0
 Increments the reference count for an interface on an object. More...
 
virtual int INTERFACE_FUNC releaseRef ()=0
 Decrements the reference count for an interface on an object. More...
 

Member Function Documentation

◆ executeRepetitively()

virtual ErrCode INTERFACE_FUNC executeRepetitively ( Bool *  repeatAfter)
pure virtual

Executes the repetitive task logic and determines whether it should be repeated.

Parameters
[out]repeatAfterSet to true to continue repeating the task, or false to stop.