view arrows/@arrow/construct.m @ 61:eff6bddf82e3 tip

Finally implemented perceptual brightness thing.
author samer
date Sun, 11 Oct 2015 10:20:42 +0100
parents 5de03f77dae1
children
line wrap: on
line source
% construct - Instantiate live processing unit
%
% construct :: 
%    arrow(A@typelist(N), B@typelist(M), S) ~'the arrow to instantiate',
%    {[N]->size}                          ~'the sizes of the inputs'
% -> unit(A,B,S)                          ~'live processing unit structure'.
%
% NB the type size denotes a row vector of array dimensions.
% The type unit(A,B,S) is a structure containing
% values and functions for running the live processing unit. Its fields
% are as follows:
%
% unit(A@typelist(N),B@typelist(M),S) :== struct {
%       starting :: () -> action ();
%       stopping :: () -> action ();
%       dispose  :: () -> action ();
%       set_state :: S -> action ()
%       get_state :: () -> S;
%       viewables :: () -> list(samer.core.Viewable);
%       process   :: A{:} -> B{:}
%    }.

function u=construct(s,sizes_in)
	error('cannot construct system for base arrow class');