PerformBulkTransform

Declaration: PerformBulkTransform(ConversionMode: integer; BitMask: integer; TimeSlot, FirstLayer, LastLayer: integer; ParA, ParB: double; FeedBack: boolean; var ErrCnt: integer): integer;
Performs a conversion of the data of the time slot specified by the parameter TimeSlot affecting the layers from FirstLayer to LastLayer. The parameter ConversionMode specifies the type of conversion:
 0 ... Transmission to absorbance
 1 ... % Transmission to absorbance
 2 ... Absorbance to transmission
 3 ... Absorbance to % transmission
 4 ... Add (B*x + A)
 5 ... Multiply (x * A)
 6 ... Divide (x / A)
 7 ... Inverse (A / x)
 8 ... Power (x ^ A)
 9 ... Root (x^(1/A))
10 ... Fraction (frac(x*A))
11 ... Logarithm (base A)
12 ... Exponential (A^x)
13 ... Replace A by B
14 ... Apply sigmoid function (A = amplitude, B = slope)
15 ... Add Gaussian noise (A = homoscedastic part, B = heteroscedastic)
The parameter BitMask specifies the index of a pixel mask which masks pixels not to be processed, set BitMask to zero to turn off this feature. The parameter parA and parB define the conversion parameters, and Feedback determines whether visual feedback is provided. The function returns the number of encountered errors in the variable parameter ErrCnt and the type of error encountered at last as a return code:
 0 ... everything is OK
-1 ... ParA = 0 (division by zero)
-2 ... ParA <= 0 (negative or zero argument)
-3 ... negative data cannot be processed by selected conversion
-4 ... data must not be zero
-5 ... out of numeric range
-6 ... the BitMask parameter does not point to a valid pixel mask
-7 ... invalid ConversionMode
-8 ... calculation aborted by user, only parts of the data processed
Hint: further information on bulk conversions can be found in the section on Predefined Arithmetic Conversions.


Last Update: 2018-Sep-12