0 | module System.Linux.Timerfd
2 | import System.Linux.Timerfd.Prim as P
5 | import public Data.C.Ptr
6 | import public System.Linux.Timerfd.Flags
7 | import public System.Linux.Timerfd.Timerfd
8 | import public System.Posix.File
9 | import public System.Posix.Timer
21 | timerfd : Has Errno es => EIO1 f => ClockId -> TimerfdFlags -> f es Timerfd
22 | timerfd c fs = elift1 (P.timerfd c fs)
30 | setitime : Has Errno es => EIO1 f => Timerfd -> Bits32 -> (new,old : IOTimerspec) -> f es ()
31 | setitime t f new old = elift1 (P.setitime t f new old)
36 | getitime : HasIO io => Timerfd -> (old : IOTimerspec) -> io ()
37 | getitime t = primIO . P.getitime t
47 | readTimerfd : Has Errno es => EIO1 f => Timerfd -> f es Bits64
48 | readTimerfd fd = elift1 (P.readTimerfd fd)
56 | setTime : Has Errno es => EIO1 f => Timerfd -> Bits32 -> Timerspec -> f es ()
57 | setTime t f n = elift1 (P.setTime t f n)
61 | getTime : Has Errno es => EIO1 f => Timerfd -> f es Timerspec
62 | getTime fd = elift1 (P.getTime fd)