NCEPLIBS-bufr  11.5.0
 All Data Structures Files Functions Variables Pages
isetprm.F File Reference

Define a customized parameter value for dynamic allocation. More...

Go to the source code of this file.

Functions/Subroutines

INTEGER function isetprm (CPRMNM, IPVAL)
 This function sets a specified parameter to a specified value for use in dynamically allocating one or more internal arrays within the BUFRLIB software. More...
 

Detailed Description

Define a customized parameter value for dynamic allocation.

Definition in file isetprm.F.

Function/Subroutine Documentation

INTEGER function isetprm ( character*(*)  CPRMNM,
  IPVAL 
)

This function sets a specified parameter to a specified value for use in dynamically allocating one or more internal arrays within the BUFRLIB software.

This function should only be called if a dynamic allocation build of the software is being used. A separate call to this function must be made for each parameter that is to be set to a customized value, and all such calls must be made prior to the first call to subroutine openbf() from within an application program, because that is when all internal arrays are dynamically allocated based on the parameter values in effect at the time. Otherwise, if this function is never called for a particular parameter, then an internal default value for that parameter is used instead.

Author
J. Ator
Date
2014-12-04
Parameters
[in]CPRMNM- character*(*): Parameter to be changed from its internal default value
  • 'MXMSGL' = Maximum length (in bytes) of a BUFR message
  • 'MAXSS' = Maximum number of data values in an uncompressed BUFR subset
  • 'MXCDV' = Maximum number of data values that can be written into a compressed BUFR subset
  • 'MXLCC' = Maximum length (in bytes) of a character string that can be written into a compressed BUFR subset
  • 'MXCSB' = Maximum number of subsets that can be written into a compressed BUFR message
  • 'NFILES' = Maximum number of BUFR files that can be accessed for reading or writing at any one time
  • 'MAXTBA' = Maximum number of entries in internal BUFR Table A per BUFR file
  • 'MAXTBB' = Maximum number of entries in internal BUFR Table B per BUFR file
  • 'MAXTBD' = Maximum number of entries in internal BUFR Table D per BUFR file
  • 'MAXMEM' = Maximum number of bytes that can be used to store BUFR messages in internal memory
  • 'MAXMSG' = Maximum number of BUFR messages that can be stored in internal memory
  • 'MXDXTS' = Maximum number of dictionary tables that can be stored for use with BUFR messages in internal memory
  • 'MXMTBB' = Maximum number of master Table B entries
  • 'MXMTBD' = Maximum number of master Table D entries
  • 'MXMTBF' = Maximum number of master Code/Flag entries
  • 'MAXCD' = Maximum number of child descriptors in a Table D descriptor sequence definition
  • 'MAXJL' = Maximum number of entries in the internal jump/link table
  • 'MXS01V' = Maximum number of default Section 0 or Section 1 values that can be overwritten within an output BUFR message
  • 'MXBTM' = Maximum number of bitmaps that can be stored internally for a BUFR subset
  • 'MXBTMSE' = Maximum number of entries that can be set within a bitmap
  • 'MXTAMC' = Maximum number of Table A mnemonics in the internal jump/link table which contain at least one Table C operator with XX >= 21 in their subset definition
  • 'MXTCO' = Maximum number of Table C operators with XX >= 21 in the subset definition of a Table A mnemonic
  • 'MXNRV' = Maximum number of 2-03 reference values in the internal jump/link table
  • 'MXRST' = Maximum number of long character strings that can be read from a compressed subset
[in]IPVAL- integer: Value to be set for CPRMNM
Returns
isetprm - integer: return code
  • 0 = normal return
  • -1 = Unknown CPRMNM, or dynamic allocation not in effect for this build of the library

Program history log:

  • 2014-12-04 J. Ator – Original author
  • 2016-05-24 J. Ator – Add MXNRV, MXBTM, MXBTMSE, MXTCO
  • 2017-04-03 J. Ator – Add MXTAMC
  • 2017-05-22 J. Ator – Add MXRST
  • 2017-10-17 J. Ator – Add MXMTBF

Definition at line 101 of file isetprm.F.

References errwrt().

Referenced by fdebufr().