merge
[mTask.git] / Devices / mTaskDevice.dcl
index 1662cbb..c489d01 100644 (file)
@@ -4,6 +4,7 @@ from Data.Maybe import :: Maybe
 import iTasks
 import Devices.mTaskSerial
 import Devices.mTaskTCP
+import Utils.SDS
 import Tasks.mTaskTask
 import mTaskInterpret
 import Generics.gCons
@@ -21,6 +22,7 @@ derive consName MTaskResource, TCPSettings
 
 :: MTaskDevice = {
                 deviceTask :: Maybe TaskId
+               ,deviceError :: Maybe String
                ,deviceChannels :: String
                ,deviceName :: String
                ,deviceTasks :: [MTaskTask]
@@ -32,6 +34,8 @@ instance == MTaskDevice
 class MTaskDuplex a where
        synFun :: a (Shared Channels) -> Task ()
 
+startupDevices :: Task [MTaskDevice]
+connectDevice :: (MTaskDevice (Shared Channels) -> Task ()) MTaskDevice -> Task ()
 manageDevices :: (MTaskDevice (Shared Channels) -> Task ()) [MTaskDevice] -> Task ()
 sendToDevice :: String (Main (ByteCode () Stmt)) (MTaskDevice, MTaskInterval) -> Task ()
 sendMessages :: [MTaskMSGSend] -> (MTaskDevice -> Task Channels)