NCEPLIBS-bufr  12.0.1
isetprm.f File Reference

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

Go to the source code of this file.

Functions/Subroutines

recursive function isetprm (CPRMNM, IPVAL)
 Define a customized parameter value for dynamic allocation. More...
 

Detailed Description

Define a customized parameter value for dynamic allocation.

Author
J. Ator
Date
2014-12-04

Definition in file isetprm.f.

Function/Subroutine Documentation

◆ isetprm()

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

Define a customized parameter value for dynamic allocation.

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

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.

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.
  • 'MXH4WLC' = Maximum number of long character strings that can be stored internally.
[in]IPVAL- integer: Value to be set for CPRMNM
Returns
isetprm - integer:
  • 0 = normal return
  • -1 = Unknown CPRMNM
Author
J. Ator
Date
2014-12-04

Definition at line 75 of file isetprm.f.

References errwrt(), modv_im8b::im8b, modv_maxcd::maxcd, modv_maxjl::maxjl, modv_maxmem::maxmem, modv_maxmsg::maxmsg, modv_maxss::maxss, modv_maxtba::maxtba, modv_maxtbb::maxtbb, modv_maxtbd::maxtbd, modv_mxbtm::mxbtm, modv_mxbtmse::mxbtmse, modv_mxcdv::mxcdv, modv_mxcsb::mxcsb, modv_mxdxts::mxdxts, modv_mxh4wlc::mxh4wlc, modv_mxlcc::mxlcc, modv_mxmsgl::mxmsgl, modv_mxmtbb::mxmtbb, modv_mxmtbd::mxmtbd, modv_mxnrv::mxnrv, modv_mxrst::mxrst, modv_mxs01v::mxs01v, modv_mxtamc::mxtamc, modv_mxtco::mxtco, modv_nfiles::nfiles, and x84().

Referenced by bufr_c2f_interface::isetprm_c().