annotate 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
rev   line source
samer@0 1 % construct - Instantiate live processing unit
samer@0 2 %
samer@0 3 % construct ::
samer@27 4 % arrow(A@typelist(N), B@typelist(M), S) ~'the arrow to instantiate',
samer@0 5 % {[N]->size} ~'the sizes of the inputs'
samer@0 6 % -> unit(A,B,S) ~'live processing unit structure'.
samer@0 7 %
samer@0 8 % NB the type size denotes a row vector of array dimensions.
samer@0 9 % The type unit(A,B,S) is a structure containing
samer@0 10 % values and functions for running the live processing unit. Its fields
samer@0 11 % are as follows:
samer@0 12 %
samer@27 13 % unit(A@typelist(N),B@typelist(M),S) :== struct {
samer@0 14 % starting :: () -> action ();
samer@0 15 % stopping :: () -> action ();
samer@0 16 % dispose :: () -> action ();
samer@0 17 % set_state :: S -> action ()
samer@0 18 % get_state :: () -> S;
samer@0 19 % viewables :: () -> list(samer.core.Viewable);
samer@0 20 % process :: A{:} -> B{:}
samer@0 21 % }.
samer@0 22
samer@0 23 function u=construct(s,sizes_in)
samer@0 24 error('cannot construct system for base arrow class');
samer@0 25