definition module Shares.mTaskShare import iTasks import iTasks._Framework.Serialization import mTask import Devices.mTaskDevice derive class iTask MTaskShare derive gPrint BCState :: MTaskShare = {withTask :: [String] ,identifier:: Int ,value :: BCValue ,humanName :: String } instance == MTaskShare //Constructor makeShare :: String String Int BCValue -> MTaskShare //General viewing task manageShares :: Task [MTaskDevice] //manageShares :: [MTaskShare] -> Task MTaskShare updateShares :: MTaskDevice ([MTaskShare] -> [MTaskShare]) -> Task [MTaskShare] //Clean out shares when a task has been removed cleanSharesTask :: Int MTaskDevice -> Task [MTaskShare] //cleanSharesTask :: Int MTaskDevice -> Task [MTaskShare] //Clean out shares when a device has been removed updateShareFromPublish :: MTaskDevice Int BCValue -> Task BCValue //updateShare :: Int BCValue -> Task [MTaskShare] shareShare :: MTaskDevice MTaskShare -> Shared BCValue //shareShare :: MTaskDevice BCShare -> Shared BCValue //updateShare :: Int BCValue -> Task ()