AERN-Net-0.2.1.1: Compositional lazy dataflow networks for exact real number computation

Portabilityportable
Stabilityexperimental
Maintainermik@konecny.aow.cz

Control.ERNet.Foundations.Manager

Description

Abstraction of a distributed manager for networked ER processes. Its functions comprise:

  • initial process deployment
  • expansion of a process into a sub-network

To be imported qualified, usually with the prefix MAN.

Synopsis

Documentation

class ChannelForScheduler lg sIn sOut sInAnyProt sOutAnyProt => Manager man lg sIn sOut sInAnyProt sOutAnyProt | man -> lg sIn sOut sInAnyProt sOutAnyProt whereSource

Methods

new :: ManagerName -> IO (man, ManagerID)Source

connectNeighbour :: man -> ManagerID -> IO BoolSource

runProcessSource

Arguments

:: man

a manager that will deploy the process

-> ERProcess sInAnyProt sOutAnyProt

a process to be deployed; it cannot have input channels

-> IO lg 

type ManagerName = StringSource

A name given to a ditributed node by a programmer.

type ManagerID = StringSource

A globally unique name as a URL.

eg ernet:localhost:4176/miks-ivp-solver-master ernet-local:/ivp-solver-master ernet-mpi:/ivp-solver-master

The port 4176 was unassigned when checked on http:www.iana.orgassignmentsport-numbers on 2nd November 2008.

runDialogueSource

Arguments

:: (Manager man lg sIn sOut sInAnyProt sOutAnyProt, QAProtocol q a) 
=> man 
-> ERProcess sInAnyProt sOutAnyProt

a process to be deployed and enquired; it cannot have input sockets

-> Int

the output socket in the above process to use, numbered from 0

-> ChannelType

type of the above output socket

-> ((q -> IO a) -> IO ())

Dialogue action that makes queries into this channel. The parameter is a query function that waits for the answer and returns it.

-> Bool

whether or not to wait until the dialogue is finished

-> IO lg 

Run a process together with some queries on one of its output sockets.