1#ifndef POSER_CORE_SERVICE_H
2#define POSER_CORE_SERVICE_H
11#define MAXPANICHANDLERS 8
49 ATTR_RETNONNULL ATTR_PURE;
60 ATTR_RETNONNULL ATTR_PURE;
75 ATTR_RETNONNULL ATTR_PURE;
90 ATTR_RETNONNULL ATTR_PURE;
103 ATTR_RETNONNULL ATTR_PURE;
113 ATTR_RETNONNULL ATTR_PURE;
123 ATTR_RETNONNULL ATTR_PURE;
259 ATTR_NONNULL((1)) ATTR_NORETURN;
Event arguments for service (pre)startup events.
void PSC_Service_shutdownUnlock(void)
Allow shutdown to continue.
void PSC_Service_unregisterPanic(PSC_PanicHandler handler)
Unregister a panic handler.
void PSC_Service_unregisterWrite(int id)
Unregister a file descriptor for write monitoring.
void PSC_Service_registerRead(int id)
Register a file descriptor for read monitoring.
void PSC_Service_panic(const char *msg)
Trigger a service panic.
void PSC_Service_registerWrite(int id)
Register a file descriptor for write monitoring.
void PSC_Service_quit(void)
Request the service to quit.
int PSC_Service_run(void)
Run the service.
void PSC_Service_registerPanic(PSC_PanicHandler handler)
Register a panic handler.
void PSC_Service_shutdownLock(void)
Delay shutdown of the service.
PSC_Event * PSC_Service_eventsDone(void)
All events for one loop iteration are processed.
void PSC_Service_unregisterRead(int id)
Unregister a file descriptor for read monitoring.
int PSC_Service_loop(void)
Run the service loop.
PSC_Event * PSC_Service_startup(void)
The service started.
PSC_Event * PSC_Service_readyWrite(void)
A file descriptor is ready for writing.
PSC_Event * PSC_Service_shutdown(void)
The service is shutting down.
PSC_Event * PSC_Service_readyRead(void)
A file descriptor is ready for reading.
PSC_Event * PSC_Service_tick(void)
The timer ticks.
int PSC_Service_setTickInterval(unsigned msec)
Set the timer tick interval.
PSC_Event * PSC_Service_prestartup(void)
The service is about to start.
void(* PSC_PanicHandler)(const char *msg)
A handler for a service panic.
Definition: service.h:38