aboutsummaryrefslogtreecommitdiff
path: root/server/src/Thermoprint/Server/Printer.hs
diff options
context:
space:
mode:
authorGregor Kleen <gkleen@yggdrasil.li>2016-01-23 14:47:59 +0000
committerGregor Kleen <gkleen@yggdrasil.li>2016-01-23 14:47:59 +0000
commit8553c33f72c41e553cbef4e7175cef8cec3cdbe2 (patch)
treea5f82445047b6a4eefb803c0f3ee7dec5d1247f7 /server/src/Thermoprint/Server/Printer.hs
parent0a5b8082e5ddcd22b846cc7c145af2468c542fa4 (diff)
downloadthermoprint-8553c33f72c41e553cbef4e7175cef8cec3cdbe2.tar
thermoprint-8553c33f72c41e553cbef4e7175cef8cec3cdbe2.tar.gz
thermoprint-8553c33f72c41e553cbef4e7175cef8cec3cdbe2.tar.bz2
thermoprint-8553c33f72c41e553cbef4e7175cef8cec3cdbe2.tar.xz
thermoprint-8553c33f72c41e553cbef4e7175cef8cec3cdbe2.zip
Printer handling threads & printers handler
Diffstat (limited to 'server/src/Thermoprint/Server/Printer.hs')
-rw-r--r--server/src/Thermoprint/Server/Printer.hs5
1 files changed, 4 insertions, 1 deletions
diff --git a/server/src/Thermoprint/Server/Printer.hs b/server/src/Thermoprint/Server/Printer.hs
index 0db98a0..f34b2fa 100644
--- a/server/src/Thermoprint/Server/Printer.hs
+++ b/server/src/Thermoprint/Server/Printer.hs
@@ -8,7 +8,7 @@
8{-# LANGUAGE DeriveGeneric, DeriveAnyClass #-} 8{-# LANGUAGE DeriveGeneric, DeriveAnyClass #-}
9 9
10module Thermoprint.Server.Printer 10module Thermoprint.Server.Printer
11 ( Printer(..) 11 ( Printer(..), printer
12 , Queue(..) 12 , Queue(..)
13 , runPrinter 13 , runPrinter
14 ) where 14 ) where
@@ -54,6 +54,9 @@ data Queue = Queue
54 } 54 }
55 deriving (Typeable, Generic, NFData) 55 deriving (Typeable, Generic, NFData)
56 56
57printer :: (MonadIO m) => (forall m. (MonadIO m) => Printout -> m (Maybe PrintingError)) -> m Printer
58printer f = Printer f <$> liftIO (newTVarIO $ Queue Seq.empty Nothing Seq.empty)
59
57atomically' :: MonadIO m => STM a -> m a 60atomically' :: MonadIO m => STM a -> m a
58atomically' = liftIO . atomically 61atomically' = liftIO . atomically
59 62