tomwalters@0: /* tomwalters@0: Copyright (c) Applied Psychology Unit, Medical Research Council. 1988, 1989 tomwalters@0: =========================================================================== tomwalters@0: tomwalters@0: Permission to use, copy, modify, and distribute this software without fee tomwalters@0: is hereby granted for research purposes, provided that this copyright tomwalters@0: notice appears in all copies and in all supporting documentation, and that tomwalters@0: the software is not redistributed for any fee (except for a nominal shipping tomwalters@0: charge). Anyone wanting to incorporate all or part of this software in a tomwalters@0: commercial product must obtain a license from the Medical Research Council. tomwalters@0: tomwalters@0: The MRC makes no representations about the suitability of this tomwalters@0: software for any purpose. It is provided "as is" without express or implied tomwalters@0: warranty. tomwalters@0: tomwalters@0: THE MRC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING tomwalters@0: ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL THE tomwalters@0: A.P.U. BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY tomwalters@0: DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN tomwalters@0: AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF tomwalters@0: OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. tomwalters@0: */ tomwalters@0: tomwalters@0: /* tomwalters@0: ops.h tomwalters@0: ===== tomwalters@0: tomwalters@0: */ tomwalters@0: tomwalters@0: tomwalters@0: /* basic data operations */ tomwalters@0: tomwalters@0: extern CharSource ConstantCharSource( _MANY_ARGS ), IntegrateCharSource( _ONE_SOURCE_PLUS ), CallingCharSource( _ONE_SOURCE_PLUS ) ; tomwalters@0: extern ShortSource ConstantShortSource( _MANY_ARGS ), IntegrateShortSource( _ONE_SOURCE_PLUS ), CallingShortSource( _ONE_SOURCE_PLUS ) ; tomwalters@0: extern IntSource ConstantIntSource( _MANY_ARGS ), IntegrateIntSource( _ONE_SOURCE_PLUS ), CallingIntSource( _ONE_SOURCE_PLUS ) ; tomwalters@0: extern FloatSource ConstantFloatSource( _MANY_ARGS ), IntegrateFloatSource( _ONE_SOURCE_PLUS ), CallingFloatSource( _ONE_SOURCE_PLUS ) ; tomwalters@0: extern DoubleSource ConstantDoubleSource( _MANY_ARGS ), IntegrateDoubleSource( _ONE_SOURCE_PLUS ), CallingDoubleSource( _ONE_SOURCE_PLUS ) ; tomwalters@0: extern ComplexSource ConstantComplexSource( _MANY_ARGS ), IntegrateComplexSource( _ONE_SOURCE_PLUS ), CallingComplexSource( _ONE_SOURCE_PLUS ) ; tomwalters@0: tomwalters@0: /* binary operators */ tomwalters@0: tomwalters@0: extern CharSource AddCharSources( _TWO_SOURCES ), SubtractCharSources( _TWO_SOURCES ), MultiplyCharSources( _TWO_SOURCES ), DivideCharSources( _TWO_SOURCES ) ; tomwalters@0: extern ShortSource AddShortSources( _TWO_SOURCES ), SubtractShortSources( _TWO_SOURCES ), MultiplyShortSources( _TWO_SOURCES ), DivideShortSources( _TWO_SOURCES ) ; tomwalters@0: extern IntSource AddIntSources( _TWO_SOURCES ), SubtractIntSources( _TWO_SOURCES ), MultiplyIntSources( _TWO_SOURCES ), DivideIntSources( _TWO_SOURCES ) ; tomwalters@0: extern FloatSource AddFloatSources( _TWO_SOURCES ), SubtractFloatSources( _TWO_SOURCES ), MultiplyFloatSources( _TWO_SOURCES ), DivideDoubleSources( _TWO_SOURCES ) ; tomwalters@0: extern DoubleSource AddDoubleSources( _TWO_SOURCES ), SubtractDoubleSources( _TWO_SOURCES ), MultiplyDoubleSources( _TWO_SOURCES ), DivideFloatSources( _TWO_SOURCES ) ; tomwalters@0: extern ComplexSource AddComplexSources( _TWO_SOURCES ), SubtractComplexSources( _TWO_SOURCES ), MultiplyComplexSources( _TWO_SOURCES ), DivideComplexSources( _TWO_SOURCES ) ; tomwalters@0: tomwalters@0: extern Source AddSources( _TWO_SOURCES ), SubtractSources( _TWO_SOURCES ), MultiplySources( _TWO_SOURCES ), DivideSources( _TWO_SOURCES ) ; tomwalters@0: tomwalters@0: /* convertors */ tomwalters@0: tomwalters@0: extern CharSource CharCharSource( _ONE_SOURCE ), ShortCharSource( _ONE_SOURCE ), IntCharSource( _ONE_SOURCE ), FloatCharSource( _ONE_SOURCE ), DoubleCharSource( _ONE_SOURCE ) ; tomwalters@0: extern ShortSource CharShortSource( _ONE_SOURCE ), ShortShortSource( _ONE_SOURCE ), IntShortSource( _ONE_SOURCE ), FloatShortSource( _ONE_SOURCE ), DoubleShortSource( _ONE_SOURCE ) ; tomwalters@0: extern IntSource CharIntSource( _ONE_SOURCE ), ShortIntSource( _ONE_SOURCE ), IntIntSource( _ONE_SOURCE ), FloatIntSource( _ONE_SOURCE ), DoubleIntSource( _ONE_SOURCE ) ; tomwalters@0: extern FloatSource CharFloatSource( _ONE_SOURCE ), ShortFloatSource( _ONE_SOURCE ), IntFloatSource( _ONE_SOURCE ), FloatFloatSource( _ONE_SOURCE ), DoubleFloatSource( _ONE_SOURCE ) ; tomwalters@0: extern DoubleSource CharDoubleSource( _ONE_SOURCE ), ShortDoubleSource( _ONE_SOURCE ), IntDoubleSource( _ONE_SOURCE ), FloatDoubleSource( _ONE_SOURCE ), DoubleDoubleSource( _ONE_SOURCE ) ; tomwalters@0: extern ComplexSource CharComplexSource( _ONE_SOURCE ), ShortComplexSource( _ONE_SOURCE ), IntComplexSource( _ONE_SOURCE ), FloatComplexSource( _ONE_SOURCE ), DoubleComplexSource( _ONE_SOURCE ) ; tomwalters@0: tomwalters@0: extern Source SourceCharSource( _ONE_SOURCE ), SourceShortSource( _ONE_SOURCE ), SourceIntSource( _ONE_SOURCE ), SourceFloatSource( _ONE_SOURCE ), SourceDoubleSource( _ONE_SOURCE ), SourceComplexSource( _ONE_SOURCE ) ; tomwalters@0: tomwalters@0: