6 #ifndef _INC_cJobBase_H
7 #define _INC_cJobBase_H
44 : m_pArrayParent(pArrayParent)
56 RequestStopThread(
false);
59 m_pArrayParent =
nullptr;
91 if (!isJobScheduled())
132 else if (m_timeLast == 0)
139 nTimeNext = m_timeLast + mSecDelay;
141 return put_TimeNext(nTimeNext);
146 put_JobParam(iParam);
197 void RemoveAllJobs();
#define GRAYLIB_LINK
Definition: GrayLibBase.h:35
#define UNREFERENCED_PARAMETER(P)
< _WIN32 type thing. get rid of stupid warning.
Definition: SysTypes.h:299
INT32 HRESULT
_WIN32 style error codes. INT32
Definition: SysTypes.h:465
Definition: cJobBase.h:175
cSysEvent m_Wake
sleep until we have something to do. or <= 1 minute
Definition: cJobBase.h:182
cSysEvent & ref_Wake()
Definition: cJobBase.h:190
Definition: cJobBase.h:23
HRESULT ScheduleJobParam(INT_PTR iParam)
Definition: cJobBase.h:143
HRESULT ClearJob()
Definition: cJobBase.h:110
virtual void put_JobParam(INT_PTR iParam)
Definition: cJobBase.h:63
TIMESECD_t get_TimeLastSec() const noexcept
Definition: cJobBase.h:98
HRESULT ScheduleJob(TIMESYSD_t mSecDelay)
Definition: cJobBase.h:115
virtual void ResetJobTime()
reset the next time.
Definition: cJobBase.h:150
TIMESYS_t get_TimeNext() const noexcept
Definition: cJobBase.h:80
TIMESYS_t get_SortValue() const noexcept
Definition: cJobBase.h:75
virtual HRESULT RunJob()=0
Override this to make the job do some real work.
HRESULT ScheduleJobX(TIMESYSD_t mSecDelay)
Definition: cJobBase.h:122
virtual HRESULT DisposeThis()
Definition: cJobBase.h:53
bool isJobScheduled() const noexcept
Definition: cJobBase.h:69
cJobBase(cJobArray *pArrayParent=nullptr) noexcept
Definition: cJobBase.h:43
TIMESECD_t get_TimeNextSec() const noexcept
Definition: cJobBase.h:86
STDMETHOD_(cString, get_Name)() const =0
overload this to give the job a name.
Definition: cJobBase.h:167
Definition: cJobBase.h:162
Definition: cSysEvent.h:28
Definition: cThreadArray.h:330
Definition: cThreadLock.h:137
Definition: cTimeSys.h:93
static const TIMESYS_t k_CLEAR
Definition: cTimeSys.h:99
static const TIMESYS_t k_FREQ
milliSec per Sec
Definition: cTimeSys.h:100
static TIMESYS_t GetTimeNow() noexcept
Definition: cTimeSys.h:121
cRefPtr< cJobBase > cJobPtr
Definition: cJobBase.h:159
INT32 TIMESYSD_t
Time delta. signed milli-Seconds Span. cTimeSys::k_DMAX, cTimeSys::k_INF = MAILSLOT_WAIT_FOREVER.
Definition: cTimeSys.h:28
int TIMESECD_t
signed delta seconds. like TIMESEC_t. redefined in TimeUnits.h.
Definition: cTimeSys.h:19
UINT32 TIMESYS_t
TIMESYS_t = The normal system tick timer. milli-seconds since start of system/app ?
Definition: cTimeSys.h:27