48 lines
1.6 KiB
C
48 lines
1.6 KiB
C
/*************************************************************************\
|
|
* Copyright (c) 2009 UChicago Argonne LLC, as Operator of Argonne
|
|
* National Laboratory.
|
|
* Copyright (c) 2008 Diamond Light Source Ltd
|
|
* Copyright (c) 2004 Oak Ridge National Laboratory
|
|
* EPICS BASE is distributed subject to a Software License Agreement found
|
|
* in file LICENSE that is included with this distribution.
|
|
\*************************************************************************/
|
|
|
|
#ifndef INC_generalTimeSup_H
|
|
#define INC_generalTimeSup_H
|
|
|
|
#include "epicsTime.h"
|
|
#include "epicsTimer.h"
|
|
#include "shareLib.h"
|
|
|
|
#define LAST_RESORT_PRIORITY 999
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef int (*TIMECURRENTFUN)(epicsTimeStamp *pDest);
|
|
typedef int (*TIMEEVENTFUN)(epicsTimeStamp *pDest, int event);
|
|
|
|
epicsShareFunc int generalTimeRegisterCurrentProvider(const char *name,
|
|
int priority, TIMECURRENTFUN getTime);
|
|
epicsShareFunc int generalTimeRegisterEventProvider(const char *name,
|
|
int priority, TIMEEVENTFUN getEvent);
|
|
|
|
/* Original names, for compatibility */
|
|
#define generalTimeCurrentTpRegister generalTimeRegisterCurrentProvider
|
|
#define generalTimeEventTpRegister generalTimeRegisterEventProvider
|
|
|
|
epicsShareFunc int generalTimeAddIntCurrentProvider(const char *name,
|
|
int priority, TIMECURRENTFUN getTime);
|
|
epicsShareFunc int generalTimeAddIntEventProvider(const char *name,
|
|
int priority, TIMEEVENTFUN getEvent);
|
|
|
|
epicsShareFunc int generalTimeGetExceptPriority(epicsTimeStamp *pDest,
|
|
int *pPrio, int ignorePrio);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* INC_generalTimeSup_H */
|