definition module Shares.mTaskShare
import iTasks
+import iTasks._Framework.Serialization
+import mTask
+import Devices.mTaskDevice
-:: MTaskShare = {
- initValue :: Int,
- withTask :: String,
- identifier :: Int,
- realShare :: String
- }
+derive class iTask MTaskShareType, MTaskShare
-instance zero MTaskShare
+:: MTaskShareType = MTaskWithShare String | MTaskLens String
+:: MTaskShare =
+ {withTask :: [String]
+ ,withDevice :: [String]
+ ,identifier :: Int
+ ,realShare :: MTaskShareType
+ ,value :: BCValue
+ }
manageShares :: [MTaskShare] -> Task ()
+
+makeShare :: String String Int BCValue -> Task MTaskShare
+
+updateShare :: Int BCValue -> Task ()