repositories
/
mTask.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
updates
[mTask.git]
/
Devices
/
mTaskDevice.dcl
diff --git
a/Devices/mTaskDevice.dcl
b/Devices/mTaskDevice.dcl
index
6a717f0
..
f254a22
100644
(file)
--- a/
Devices/mTaskDevice.dcl
+++ b/
Devices/mTaskDevice.dcl
@@
-4,6
+4,7
@@
from Data.Maybe import :: Maybe
import iTasks
import Devices.mTaskSerial
import Devices.mTaskTCP
import iTasks
import Devices.mTaskSerial
import Devices.mTaskTCP
+import Utils.SDS
import Tasks.mTaskTask
import mTaskInterpret
import Generics.gCons
import Tasks.mTaskTask
import mTaskInterpret
import Generics.gCons
@@
-13,8
+14,8
@@
derive class iTask MTaskDevice, MTaskResource, MTaskMSGRecv, MTaskMSGSend
derive conses MTaskResource, TCPSettings
derive consName MTaskResource, TCPSettings
derive conses MTaskResource, TCPSettings
derive consName MTaskResource, TCPSettings
-channels :: MTaskDevice -> Shared Channels
+channels :: MTaskDevice -> Shared Channels
:: Channels :== ([MTaskMSGRecv], [MTaskMSGSend], Bool)
:: MTaskResource
:: Channels :== ([MTaskMSGRecv], [MTaskMSGSend], Bool)
:: MTaskResource
@@
-23,6
+24,7
@@
channels :: MTaskDevice -> Shared Channels
:: MTaskDevice = {
deviceTask :: Maybe TaskId
:: MTaskDevice = {
deviceTask :: Maybe TaskId
+ ,deviceError :: Maybe String
,deviceChannels :: String
,deviceName :: String
,deviceTasks :: [MTaskTask]
,deviceChannels :: String
,deviceName :: String
,deviceTasks :: [MTaskTask]
@@
-34,6
+36,8
@@
instance == MTaskDevice
class MTaskDuplex a where
synFun :: a (Shared Channels) -> Task ()
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 ()
manageDevices :: (MTaskDevice (Shared Channels) -> Task ()) [MTaskDevice] -> Task ()
sendToDevice :: String (Main (ByteCode () Stmt)) (MTaskDevice, MTaskInterval) -> Task ()