From 0cbc4eb107a23c4055513b6c862129754c9030f9 Mon Sep 17 00:00:00 2001 From: Timo Korhonen Date: Thu, 17 Apr 2025 10:07:09 +0200 Subject: [PATCH] fixes in pod files to resolve issues in conversion to markdown. --- modules/database/src/std/rec/aiRecord.dbd.pod | 6 + modules/database/src/std/rec/aoRecord.dbd.pod | 28 +++-- modules/database/src/std/rec/biRecord.dbd.pod | 15 ++- modules/database/src/std/rec/boRecord.dbd.pod | 18 +-- .../database/src/std/rec/calcRecord.dbd.pod | 99 ++++++++-------- .../src/std/rec/calcoutRecord.dbd.pod | 106 ++++++++++-------- 6 files changed, 151 insertions(+), 121 deletions(-) diff --git a/modules/database/src/std/rec/aiRecord.dbd.pod b/modules/database/src/std/rec/aiRecord.dbd.pod index 83a7c5c26..7b051725b 100644 --- a/modules/database/src/std/rec/aiRecord.dbd.pod +++ b/modules/database/src/std/rec/aiRecord.dbd.pod @@ -67,23 +67,29 @@ converted into engineering units and placed in the VAL field as follows: =over =item 1. + RVAL is converted to a double and ROFF is added to it. =item 2. + If ASLO is non-zero the value is multiplied by ASLO. =item 3. + AOFF is added. =item 4. + If LINR is C the units conversion is finished after the above steps. =item 5. + If LINR is C or C, the value from step 3 above is multiplied by ESLO and EOFF is added to complete the units conversion process. =item 6. + Any other value for LINR selects a particular breakpoint table to be used on the value from step 3 above. diff --git a/modules/database/src/std/rec/aoRecord.dbd.pod b/modules/database/src/std/rec/aoRecord.dbd.pod index ad40c75f7..6d596644f 100644 --- a/modules/database/src/std/rec/aoRecord.dbd.pod +++ b/modules/database/src/std/rec/aoRecord.dbd.pod @@ -689,13 +689,17 @@ Routine process implements the following algorithm: =over -=item 1. Check to see that the appropriate device support module +=item 1. + +Check to see that the appropriate device support module exists. If it doesn't, an error message is issued and processing is terminated with the PACT field set to TRUE. This ensures that processes will no longer be called for this record. Thus error storms will not occur. -=item 2. Check PACT: If PACT is FALSE call fetch_values and convert +=item 2. + +Check PACT: If PACT is FALSE call fetch_values and convert which perform the following steps: =over @@ -742,20 +746,28 @@ calculated in, using the formula RVAL = (RVAL -AOFF) / ASLO - ROFF. =back -=item 3. Check alarms: This routine checks to see if the new VAL causes +=item 3. + +Check alarms: This routine checks to see if the new VAL causes the alarm status and severity to change. If so, NSEV, NSTA and y are set. It also honors the alarm hysteresis factor (HYST). Thus the value must change by at least HYST before the alarm status and severity is reduced. -=item 4. Check severity and write the new value. See Invalid Alarm +=item 4. + +Check severity and write the new value. See Invalid Alarm Output Action for details on how invalid alarms affect output records. -=item 5. If PACT has been changed to TRUE, the device support write +=item 5. + +If PACT has been changed to TRUE, the device support write output routine has started but has not completed writing the new value. In this case, the processing routine merely returns, leaving PACT TRUE. -=item 6. Check to see if monitors should be invoked: +=item 6. + +Check to see if monitors should be invoked: =over @@ -772,7 +784,9 @@ monitors are invoked. =back -=item 7. Scan forward link if necessary, set PACT and INIT FALSE, and +=item 7. + +Scan forward link if necessary, set PACT and INIT FALSE, and return. =back diff --git a/modules/database/src/std/rec/biRecord.dbd.pod b/modules/database/src/std/rec/biRecord.dbd.pod index c62b291ad..4ef5be036 100644 --- a/modules/database/src/std/rec/biRecord.dbd.pod +++ b/modules/database/src/std/rec/biRecord.dbd.pod @@ -331,23 +331,25 @@ Routine process implements the following algorithm: =over =item 1. + Check to see that the appropriate device support module exists. If it doesn't, an error message is issued and processing is terminated with the PACT field still set to TRUE. This ensures that processes will no longer be called for this record. Thus error storms will not occur. =item 2. + C is called. See L for details. =item 3. + If PACT has been changed to TRUE, the device support read routine has started but has not completed reading a new input value. In this case, the processing routine merely returns, leaving PACT TRUE. =item 4. -Convert. -=back +Convert. =over @@ -368,17 +370,15 @@ if status is 2, set status = 0 =back -=over - =item 5. + Check alarms: This routine checks to see if the new VAL causes the alarm status and severity to change. If so, NSEV, NSTA and LALM are set. Note that if VAL is greater than 1, no checking is performed. =item 6. -Check if monitors should be invoked: -=back +Check if monitors should be invoked: =over @@ -396,9 +396,8 @@ NSEV and NSTA are reset to 0. =back -=over - =item 7. + Scan forward link if necessary, set PACT FALSE, and return. =back diff --git a/modules/database/src/std/rec/boRecord.dbd.pod b/modules/database/src/std/rec/boRecord.dbd.pod index 10d6f4647..cd6ed2150 100644 --- a/modules/database/src/std/rec/boRecord.dbd.pod +++ b/modules/database/src/std/rec/boRecord.dbd.pod @@ -418,18 +418,18 @@ Checks if string matches ZNAM or ONAM, and if it does, sets VAL. Routine process implements the following algorithm: -=over 1 +=over =item 1. + Check to see that the appropriate device support module exists. If it doesn't, an error message is issued and processing is terminated with the PACT field still set to TRUE. This ensures that processes will no longer be called for this record. Thus error storms will not occur. =item 2. -If PACT is FALSE -=back +If PACT is FALSE =over @@ -464,29 +464,30 @@ else set RVAL = MASK =back -=over - =item 3. + Check alarms: This routine checks to see if the new VAL causes the alarm status and severity to change. If so, NSEV, NSTA, and LALM are set. =item 4. + Check severity and write the new value. See L for more information on how INVALID alarms affect output. =item 5. + If PACT has been changed to TRUE, the device support write output routine has started but has not completed writing the new value. in this case, the processing routine merely returns, leaving PACT TRUE. =item 6. + Check WAIT. If VAL is 1 and WAIT is greater than 0, process again with a VAL=0 after WAIT seconds. =item 7. -Check to see if monitors should be invoked. -=back +Check to see if monitors should be invoked. =over 1 @@ -505,9 +506,8 @@ NSEV and NSTA are reset to 0. =back -=over - =item 8 + Scan forward link if necessary, set PACT FALSE, and return =back diff --git a/modules/database/src/std/rec/calcRecord.dbd.pod b/modules/database/src/std/rec/calcRecord.dbd.pod index 4619dd4e3..3def5741f 100644 --- a/modules/database/src/std/rec/calcRecord.dbd.pod +++ b/modules/database/src/std/rec/calcRecord.dbd.pod @@ -85,10 +85,10 @@ parentheses and commas, and the question mark or '?:' operator. Standard double precision floating point numbers =item * -Inf: Infinity +C: Infinity =item * -Nan: Not a Number +C: Not a Number =back @@ -97,14 +97,14 @@ Nan: Not a Number =over 1 =item * -PI: returns the mathematical constant E +C: returns the mathematical constant E =item * -D2R: evaluates to E/180 which, when used as a multiplier, converts an +C: evaluates to E/180 which, when used as a multiplier, converts an angle from degrees to radians =item * -R2D: evaluates to 180/E which as a multiplier converts an angle from +C: evaluates to 180/E which as a multiplier converts an angle from radians to degrees =back @@ -132,69 +132,69 @@ the expression was evaluated). =over 1 =item * -ABS: Absolute value (unary) +C: Absolute value (unary) =item * -SQR: Square root (unary) +C: Square root (unary) =item * -MIN: Minimum (any number of args) +C: Minimum (any number of args) =item * -MAX: Maximum (any number of args) +C: Maximum (any number of args) =item * -FINITE: returns non-zero if none of the arguments are NaN or Inf (any +C: returns non-zero if none of the arguments are NaN or Inf (any number of args) =item * -ISNAN: returns non-zero if any of the arguments is NaN or Inf (any number +C: returns non-zero if any of the arguments is NaN or Inf (any number of args) =item * -CEIL: Ceiling (unary) +C: Ceiling (unary) =item * -FLOOR: Floor (unary) +C: Floor (unary) =item * -FMOD: Floating point modulo (binary) Added in 7.0.8 +C: Floating point modulo (binary) Added in 7.0.8 =item * -LOG: Log base 10 (unary) +C: Log base 10 (unary) =item * -LOGE: Natural log (unary) +C: Natural log (unary) =item * -LN: Natural log (unary) +C: Natural log (unary) =item * -EXP: Exponential function (unary) +C: Exponential function (unary) =item * -^ : Exponential (binary) +C<^> : Exponential (binary) =item * -** : Exponential (binary) +C<**> : Exponential (binary) =item * -+ : Addition (binary) +C<+> : Addition (binary) =item * -- : Subtraction (binary) +C<-> : Subtraction (binary) =item * -* : Multiplication (binary) +C<*> : Multiplication (binary) =item * -/ : Division (binary) +C : Division (binary) =item * -% : Modulo (binary) +C<%> : Modulo (binary) =item * -NOT: Negate (unary) +C: Negate (unary) =back @@ -203,31 +203,31 @@ NOT: Negate (unary) =over 1 =item * -SIN: Sine +C: Sine =item * -SINH: Hyperbolic sine +C: Hyperbolic sine =item * -ASIN: Arc sine +C: Arc sine =item * -COS: Cosine +C: Cosine =item * -COSH: Hyperbolic cosine +C: Hyperbolic cosine =item * -ACOS: Arc cosine +C: Arc cosine =item * -TAN: Tangent +C: Tangent =item * -TANH: Hyperbolic tangent +C: Hyperbolic tangent =item * -ATAN: Arc tangent +C: Arc tangent =back @@ -281,13 +281,13 @@ C<|> : Bitwise Or C<&> : Bitwise And =item * -OR : Bitwise Or +C : Bitwise Or =item * -AND : Bitwise And +C : Bitwise And =item * -XOR : Bitwise Exclusive Or +C : Bitwise Exclusive Or =item * C<~> : One's Complement @@ -373,18 +373,18 @@ Result is C if C<<< (A + B) >= (C + D) >>> Prior to Base 3.14.9 it was legal to omit the : and the second (else) part of the conditional, like this: -C<(A + B)<(C + D) ? E> +C<<< (A + B)<(C + D) ? E >>> =over 1 -=item -Result is E if (A + B)<(C + D) +=item * +Result is C if C<<< (A + B)<(C + D) >>> -=item -Result is unchanged if (A + B)>=(C + D) +=item * +Result is unchanged if C<<< (A + B)>=(C + D) >>> From 3.14.9 onwards, this expresion must be written as -C<(A + B) < (C + D) ? E : VAL> +C<<< (A + B) < (C + D) ? E : VAL >>> =back @@ -406,7 +406,7 @@ Convert A to integer Convert B to integer =item * -Bitwise And A and B +Bitwise A C B =item * Convert result to floating point @@ -883,23 +883,25 @@ Routine process implements the following algorithm: =over 1 =item 1. + Fetch all arguments. =item 2. + Call routine C, which calculates VAL from the postfix version of the expression given in CALC. If C returns success UDF is set to FALSE. =item 3. + Check alarms. This routine checks to see if the new VAL causes the alarm status and severity to change. If so, NSEV, NSTA, and LALM are set. It also honors the alarm hysteresis factor (HYST). Thus the value must change by at least HYST before the alarm status and severity changes. =item 4. -Check to see if monitors should be invoked. -=back +Check to see if monitors should be invoked. =over 1 @@ -918,9 +920,8 @@ NSEV and NSTA are reset to 0. =back -=over - =item 5. + Scan forward link if necessary, set PACT FALSE, and return. =back diff --git a/modules/database/src/std/rec/calcoutRecord.dbd.pod b/modules/database/src/std/rec/calcoutRecord.dbd.pod index 96cccd031..55ac8a4b3 100644 --- a/modules/database/src/std/rec/calcoutRecord.dbd.pod +++ b/modules/database/src/std/rec/calcoutRecord.dbd.pod @@ -111,10 +111,10 @@ parentheses and commas, and the question mark or '?:' operator. Standard double precision floating point numbers =item * -Inf: Infinity +C: Infinity =item * -Nan: Not a Number +C: Not a Number =back @@ -123,14 +123,14 @@ Nan: Not a Number =over =item * -PI: returns the mathematical constant E +C: returns the mathematical constant E =item * -D2R: evaluates to E/180 which, when used as a multiplier, converts an +C: evaluates to E/180 which, when used as a multiplier, converts an angle from degrees to radians =item * -R2D: evaluates to 180/E which, when used as a multiplier, converts an +C: evaluates to 180/E which, when used as a multiplier, converts an angle from radians to degrees =back @@ -158,69 +158,69 @@ I be the result from the last time the expression was evaluated). =over 1 =item * -ABS: Absolute value (unary) +C: Absolute value (unary) =item * -SQR: Square root (unary) +C: Square root (unary) =item * -MIN: Minimum (any number of args) +C: Minimum (any number of args) =item * -MAX: Maximum (any number of args) +C: Maximum (any number of args) =item * -FINITE: returns non-zero if none of the arguments are NaN or Inf (any +C: returns non-zero if none of the arguments are NaN or Inf (any number of args) =item * -ISNAN: returns non-zero if any of the arguments is NaN or Inf (any number +C: returns non-zero if any of the arguments is NaN or Inf (any number of args) =item * -CEIL: Ceiling (unary) +C: Ceiling (unary) =item * -FLOOR: Floor (unary) +C: Floor (unary) =item * -FMOD: Floating point modulo (binary) Added in 7.0.8 +C: Floating point modulo (binary) **Added in 7.0.8** =item * -LOG: Log base 10 (unary) +C: Log base 10 (unary) =item * -LOGE: Natural log (unary) +C: Natural log (unary) =item * -LN: Natural log (unary) +C: Natural log (unary) =item * -EXP: Exponential function (unary) +C: Exponential function (unary) =item * -^ : Exponential (binary) +C<^> : Exponential (binary) =item * -** : Exponential (binary) +C<**> : Exponential (binary) =item * -+ : Addition (binary) +C<+> : Addition (binary) =item * -- : Subtraction (binary) +C<-> : Subtraction (binary) =item * -* : Multiplication (binary) +C<*> : Multiplication (binary) =item * -/ : Division (binary) +C : Division (binary) =item * -% : Modulo (binary) +C<%> : Modulo (binary) =item * -NOT: Negate (unary) +C: Negate (unary) =back @@ -229,31 +229,31 @@ NOT: Negate (unary) =over 1 =item * -SIN: Sine +C: Sine =item * -SINH: Hyperbolic sine +C: Hyperbolic sine =item * -ASIN: Arc sine +C: Arc sine =item * -COS: Cosine +C: Cosine =item * -COSH: Hyperbolic cosine +C: Hyperbolic cosine =item * -ACOS: Arc cosine +C: Arc cosine =item * -TAN: Tangent +C: Tangent =item * -TANH: Hyperbolic tangent +C: Hyperbolic tangent =item * -ATAN: Arc tangent +C: Arc tangent =back @@ -286,13 +286,13 @@ C<<< = >>> : Equal to =over 1 =item * -&& : And +C< && >: And =item * -|| : Or +C<||> : Or =item * -! : Not +C : Not =back @@ -307,13 +307,13 @@ C<|> : Bitwise Or C<&> : Bitwise And =item * -OR : Bitwise Or +C : Bitwise Or =item * -AND : Bitwise And +C : Bitwise And =item * -XOR : Bitwise Exclusive Or +C : Bitwise Exclusive Or =item * C<~> : One's Complement @@ -399,18 +399,18 @@ Result is C if C<<< (A + B) >= (C + D) >>> Prior to Base 3.14.9 it was legal to omit the : and the second (else) part of the conditional, like this: -C<(A + B)<(C + D) ? E> +C<<< (A + B)<(C + D) ? E >>> =over 1 -=item -Result is E if (A + B)<(C + D) +=item * +Result is E if C<<< (A + B)<(C + D) >>> -=item -Result is unchanged if (A + B)>=(C + D) +=item * +Result is unchanged if C<<< (A + B)>=(C + D) >>> From 3.14.9 onwards, this expression must be written as -C<(A + B) < (C + D) ? E : VAL> +C<<< (A + B) < (C + D) ? E : VAL >>> =back @@ -432,7 +432,7 @@ Convert A to integer Convert B to integer =item * -Bitwise And A and B +Bitwise A C B =item * Convert result to floating point @@ -1209,26 +1209,31 @@ The C routine implements the following algorithm: =over =item 1. + Fetch all arguments. =item 2. + Call routine C, which calculates VAL from the prefix version of the expression given in CALC. If C returns success, UDF is set to FALSE. =item 3. + Check alarms. This routine checks to see if the new VAL causes the alarm status and severity to change. If so, NSEV, NSTA and LALM are set. If also honors the alarm hysteresis factor (HYST). Thus the value must change by at least HYST before the alarm status and severity changes. =item 4. + Determine if the Output Execution Option (OOPT) is met. If met, either execute the output link (and output event) immediately (if ODLY = 0), or schedule a callback after the specified interval. See the explanation for the C routine below. =item 5. + Check to see if monitors should be invoked. =over @@ -1249,6 +1254,7 @@ NSEV and NSTA are reset to 0 =back =item 6. + If no output delay was specified, scan forward link if necessary, set PACT FALSE, and return. @@ -1259,19 +1265,23 @@ FALSE, and return. =over =item 1. + If DOPT field specifies the use of OCAL, call the routine C for the postfix version of the expression in OCAL. Otherwise, use VAL. =item 2. + If the Alarm Severity is INVALID, follow the option as designated by the field IVOA. =item 3. + The Alarm Severity is not INVALID or IVOA specifies "Continue Normally", put the value of OVAL to the OUT link and post the event in OEVT (if non-zero). =item 4. + If an output delay was implemented, process the forward link. =back