SciFlow-0.6.1: Scientific workflow management system

Safe HaskellNone
LanguageHaskell2010

Scientific.Workflow.Types

Contents

Synopsis

Documentation

data Workflow config Source #

A Workflow is a stateful function

Constructors

Workflow 

type PID = Text Source #

The id of a node

data NodeState Source #

The result of a computation node

Constructors

Success

The node has been executed

Fail SomeException

The node failed to finish

Scheduled

The node will be executed

Special SpecialMode

Indicate the workflow is currently running under special mode

data SpecialMode Source #

Constructors

Skip

The node will not be executed

FetchData

Simply read the saved data from database

WriteData FilePath

Read the result from the input file and save it to database.

EXE FilePath FilePath

Read input from the input file and save results to the output file. This is used in remote mode.

data WorkflowState Source #

Constructors

WorkflowState 

Fields

type Processor config a b = a -> ProcState config b Source #

data RunMode Source #

Constructors

Master

Run as the master process

Slave PID FilePath FilePath

Run as a slave process

Review PID

Review the info stored in a node

Replace PID FilePath

Replace the info stored in a node

data RunOpt Source #

Options

Constructors

RunOpt 

Fields

newtype Parallel config r Source #

Auxiliary type for concurrency support.

Constructors

Parallel 

Fields

Instances

Functor (Parallel config) Source # 

Methods

fmap :: (a -> b) -> Parallel config a -> Parallel config b #

(<$) :: a -> Parallel config b -> Parallel config a #

Applicative (Parallel config) Source # 

Methods

pure :: a -> Parallel config a #

(<*>) :: Parallel config (a -> b) -> Parallel config a -> Parallel config b #

liftA2 :: (a -> b -> c) -> Parallel config a -> Parallel config b -> Parallel config c #

(*>) :: Parallel config a -> Parallel config b -> Parallel config b #

(<*) :: Parallel config a -> Parallel config b -> Parallel config a #

type WorkflowConfig config = ReaderT config IO Source #

Orphan instances

(Lift a, Lift b) => Lift (Gr a b) Source # 

Methods

lift :: Gr a b -> Q Exp #

Serialize (Gr (PID, Attribute) Int) Source # 

Methods

put :: Putter (Gr (PID, Attribute) Int) #

get :: Get (Gr (PID, Attribute) Int) #