48 f77int *pibfxyn,
char (*pcbscl)[4],
49 char (*pcbsref)[12],
char (*pcbbw)[4],
50 char (*pcbunit)[24],
char (*pcbmnem)[8],
53 f77int *pidfxyn,
char (*pcdseq)[120],
54 char (*pcdmnem)[8], f77int *pndelem,
55 f77int *pidefxy, f77int *
maxcd )
60 MSTABS_BASE(
nmtb) = *pnmtb;
61 for ( ii = 0; ii < *pnmtb; ii++ ) {
62 MSTABS_BASE(
ibfxyn)[ii] = pibfxyn[ii];
63 for ( jj = 0; jj < 4; jj++ ) {
64 MSTABS_BASE(
cbscl)[ii][jj] = pcbscl[ii][jj];
65 MSTABS_BASE(
cbbw)[ii][jj] = pcbbw[ii][jj];
67 for ( jj = 0; jj < 8; jj++ ) {
68 MSTABS_BASE(
cbmnem)[ii][jj] = pcbmnem[ii][jj];
70 for ( jj = 0; jj < 12; jj++ ) {
71 MSTABS_BASE(
cbsref)[ii][jj] = pcbsref[ii][jj];
73 for ( jj = 0; jj < 24; jj++ ) {
74 MSTABS_BASE(
cbunit)[ii][jj] = pcbunit[ii][jj];
76 for ( jj = 0; jj < 120; jj++ ) {
77 MSTABS_BASE(
cbelem)[ii][jj] = pcbelem[ii][jj];
81 MSTABS_BASE(
nmtd) = *pnmtd;
82 for ( ii = 0; ii < *pnmtd; ii++ ) {
83 MSTABS_BASE(
idfxyn)[ii] = pidfxyn[ii];
84 MSTABS_BASE(
ndelem)[ii] = pndelem[ii];
85 for ( jj = 0; jj < pndelem[ii]; jj++ ) {
87 MSTABS_BASE(
idefxy)[idx] = pidefxy[idx];
89 for ( jj = 0; jj < 8; jj++ ) {
90 MSTABS_BASE(
cdmnem)[ii][jj] = pcdmnem[ii][jj];
92 for ( jj = 0; jj < 120; jj++ ) {
93 MSTABS_BASE(
cdseq)[ii][jj] = pcdseq[ii][jj];
Define signatures to enable a number of BUFRLIB subprograms to be called directly from C application ...
void cpmstabs(f77int *pnmtb, f77int *pibfxyn, char(*pcbscl)[4], char(*pcbsref)[12], char(*pcbbw)[4], char(*pcbunit)[24], char(*pcbmnem)[8], char(*pcbelem)[120], f77int *pnmtd, f77int *pidfxyn, char(*pcdseq)[120], char(*pcdmnem)[8], f77int *pndelem, f77int *pidefxy, f77int *maxcd)
This subroutine copies relevant information from the Fortran module MODA_MSTABS arrays to new arrays ...
f77int icvidx(f77int *ii, f77int *jj, f77int *numjj)
C C SUBPROGRAM: ICVIDX C PRGMMR: ATOR ORG: NP12 DATE: 2009-03-23 C C ABSTRACT: THIS ROUTINE COMPUTES ...
Define signatures and declare variables for internal storage of master Table B and Table D entries.
integer nmtd
Number of master Table D entries (up to a maximum of MXMTBD).
integer, dimension(:), allocatable ndelem
Numbers of child descriptors corresponding to idfxyn.
integer, dimension(:), allocatable idfxyn
Bit-wise representations of FXY numbers for master Table D.
character, dimension(:,:), allocatable cdseq
Sequence names corresponding to idfxyn.
integer, dimension(:), allocatable idefxy
Bit-wise representations of child descriptors corresponding to idfxyn.
character, dimension(:,:), allocatable cbscl
Scale factors corresponding to ibfxyn.
character, dimension(:,:), allocatable cbmnem
Mnemonics corresponding to ibfxyn.
integer nmtb
Number of master Table B entries (up to a maximum of MXMTBB).
character, dimension(:,:), allocatable cbsref
Reference values corresponding to ibfxyn.
character, dimension(:,:), allocatable cbelem
Element names corresponding to ibfxyn.
character, dimension(:,:), allocatable cbunit
Units corresponding to ibfxyn.
character, dimension(:,:), allocatable cdmnem
Mnemonics corresponding to idfxyn.
integer, dimension(:), allocatable ibfxyn
Bit-wise representations of FXY numbers for master Table B.
character, dimension(:,:), allocatable cbbw
Bit widths corresponding to ibfxyn.
integer, public maxcd
Maximum number of child descriptors that can be included within the sequence definition of a Table D ...