module Graphics.XHB.Requests.Internal.Instances.Sync () where
import Graphics.XHB.Gen.Sync
import Graphics.XHB.Requests.Internal.Classes
import Prelude (fmap)
import Data.Bifunctor (second)
import Graphics.XHB (getReply)
instance RequestWithReply Initialize InitializeReply where
requestWithReplyIO (MkInitialize a b) conn
= fmap getReply (initialize conn a b)
instance RequestWithReply ListSystemCounters
ListSystemCountersReply where
requestWithReplyIO (MkListSystemCounters) conn
= fmap getReply (listSystemCounters conn)
instance Request CreateCounter where
requestIO (MkCreateCounter a b) conn = createCounter conn a b
instance Request DestroyCounter where
requestIO (MkDestroyCounter a) conn = destroyCounter conn a
instance RequestWithReply QueryCounter QueryCounterReply where
requestWithReplyIO (MkQueryCounter a) conn
= fmap (fmap (second MkQueryCounterReply))
(fmap getReply (queryCounter conn a))
instance Request Await where
requestIO (MkAwait a) conn = await conn a
instance Request ChangeCounter where
requestIO (MkChangeCounter a b) conn = changeCounter conn a b
instance Request SetCounter where
requestIO (MkSetCounter a b) conn = setCounter conn a b
instance Request CreateAlarm where
requestIO (MkCreateAlarm a b) conn = createAlarm conn a b
instance Request ChangeAlarm where
requestIO (MkChangeAlarm a b) conn = changeAlarm conn a b
instance Request DestroyAlarm where
requestIO (MkDestroyAlarm a) conn = destroyAlarm conn a
instance RequestWithReply QueryAlarm QueryAlarmReply where
requestWithReplyIO (MkQueryAlarm a) conn
= fmap getReply (queryAlarm conn a)
instance Request SetPriority where
requestIO (MkSetPriority a b) conn = setPriority conn a b
instance RequestWithReply GetPriority GetPriorityReply where
requestWithReplyIO (MkGetPriority a) conn
= fmap (fmap (second MkGetPriorityReply))
(fmap getReply (getPriority conn a))