diff stitch/fillable.h @ 0:5242703e91d3 tip

Initial checkin for AIM92 aimR8.2 (last updated May 1997).
author tomwalters
date Fri, 20 May 2011 15:19:45 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/stitch/fillable.h	Fri May 20 15:19:45 2011 +0100
@@ -0,0 +1,67 @@
+/*
+    fillable.h
+    ==========
+
+    fillable derived sources
+
+*/
+
+#define    SetFillableSource(    _source          , _filler, _name ) \
+	   setFillableSource( &( _source )->parent, _filler, _name )
+#define DeleteFillableSource(    _source                           ) \
+	deleteFillableSource( &( _source )->parent                 )
+
+/* derived Fillable sources */
+
+#define NewRepeatingSource(             _data  , _segment ) \
+	newRepeatingSource( (Pointer) ( _data ), _segment )
+
+
+#define NewSegmentingSource( _source,               _block      ) \
+	newSegmentingSource( _source, (ByteCount) ( _block    ) )
+
+
+#define NewCallbackSource( _filler,             _state  , _callback, _close,         _name ) \
+	newCallbackSource( _filler, (Pointer) ( _state ), _callback, _close,         _name )
+
+#define NewExternalSource(                      _state  , _callback, _close,         _name ) \
+	newExternalSource(          (Pointer) ( _state ), _callback, _close,         _name )
+
+#define NewThroughSource(  _filler,             _state  , _callback, _close, _input, _name ) \
+	newThroughSource(  _filler, (Pointer) ( _state ), _callback, _close, _input, _name )
+
+
+#define NewProcessingSource(                    _state  , _callback, _close, _input, _name ) \
+	newProcessingSource(        (Pointer) ( _state ), _callback, _close, _input, _name )
+
+#define NewSimpleProcessingSource(                        _callback,         _input, _name ) \
+	newSimpleProcessingSource(                        _callback,         _input, _name )
+
+
+#define NewMultiplexedSource(                  _states  , _callback, _close, _channels, _input, _name ) \
+	newMultiplexedSource(    (Pointer *) ( _states ), _callback, _close, _channels, _input, _name )
+
+
+#define NewMergingSource(                       _state  , _callback, _close, _inputs, _name ) \
+	newMergingSource(           (Pointer) ( _state ), _callback, _close, _inputs, _name )
+
+#define SharingSource( _source1, _source2 ) \
+	sharingSource( _source1, _source2 )
+
+/* derived higher level filling sources */
+
+extern Source         setFillableSource() ;
+extern Pointer     deleteFillableSource() ;
+
+extern Source       newSegmentingSource() ;
+
+extern Source         setCallbackSource() ;
+extern Source         newExternalSource() ;
+extern Source          newThroughSource() ;
+
+extern Source       newProcessingSource() ;
+extern Source newSimpleProcessingSource() ;
+extern Source      newMultiplexedSource() ;
+extern Source          newMergingSource() ;
+
+extern Source             sharingSource() ;