X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=Utils%2FSDS.icl;h=9c6b46a9923cc05df447d42889cb5f05564b0bda;hb=5f4c4b61ea1e4062e90715af9e1027da6d1c7a66;hp=cd684aee3ded7bf6a151a6135a25ff0baf32063b;hpb=7fec7868123d56d410e807042cb3e031ebda12b9;p=mTask.git diff --git a/Utils/SDS.icl b/Utils/SDS.icl index cd684ae..9c6b46a 100644 --- a/Utils/SDS.icl +++ b/Utils/SDS.icl @@ -4,9 +4,11 @@ import iTasks import iTasks._Framework.Store import Devices.mTaskDevice import Shares.mTaskShare +import Tasks.Examples +import qualified Data.Map as DM from Data.Func import $ -derive class iTask MTaskShare, BCState +derive class iTask MTaskShare memoryShare :: String a -> Shared a | iTask a memoryShare s d = sdsFocus s $ memoryStore "" $ Just d @@ -21,10 +23,7 @@ bcStateStore :: Shared BCState bcStateStore = memoryShare "mTaskBCState" zero mTaskTaskStore :: Shared [String] -mTaskTaskStore = memoryShare "mTaskTasks" ["count", "ledon", "ledoff"] - -getSDSStore :: MTaskShare -> Shared Int -getSDSStore sh = memoryShare sh.realShare 0 +mTaskTaskStore = memoryShare "mTaskTasks" $ 'DM'.keys allmTasks getSDSRecord :: Int -> Task MTaskShare getSDSRecord i = get sdsStore @ \l->hd [s\\s<-l | s.identifier == i]