diff --git a/devser.h b/devser.h index 897c1471..b2e48c93 100644 --- a/devser.h +++ b/devser.h @@ -97,7 +97,7 @@ int DevQueue(DevSer * devser, void *actionData, DevPrio prio, DevActionHandler * hdl, DevActionMatch * matchFunc, DevKillActionData * killFunc, DevInfoFunc * infoFunc); -/** \brief Schedule a periodic action +/** \brief Schedule a periodic action, with specified start * * If a matching action exists already, * it is overwritten with a possibly changed interval and priority. @@ -105,6 +105,9 @@ int DevQueue(DevSer * devser, void *actionData, DevPrio prio, * \param actionData the action data * \param prio the priority * \param interval the interval in seconds (0 is allowed) + * \param start the first call time. if a passed time is specified, + * the next call happens immediately, and further calls happen after + * start + n * interval * \param hdl the action handler * \param matchFunc a match function with two arguments of the same type * \param killFunc the action data kill function or NULL if no kill function is needed. @@ -113,6 +116,15 @@ int DevQueue(DevSer * devser, void *actionData, DevPrio prio, * \return 1 when this was a new action, 0 when an action was overwritten * in the second case the actionData's kill Function is immediately called */ +int DevScheduleS(DevSer * devser, void *actionData, + DevPrio prio, double interval, double start, + DevActionHandler * hdl, DevActionMatch * matchFunc, + DevKillActionData * killFunc, DevInfoFunc * infoFunc); + +/** \brief Schedule a periodic action, without specified start + * + * Parameters see DevScheduleS. + */ int DevSchedule(DevSer * devser, void *actionData, DevPrio prio, double interval, DevActionHandler * hdl, DevActionMatch * matchFunc,