/******************************************************************************
*
* NSSDC/CDF Header file for SkeletonTable.
*
* Version 1.5a, 18-Nov-97, Hughes STX.
*
* Modification history:
*
* V1.0 18-May-92, J Love Original version.
* V1.1 25-Jun-92, J Love CDF V2.3 (shareable/Next/zVar).
* V1.2 26-Nov-93, J Love CDF V2.4.
* V1.3 19-Sep-94, J Love CDF V2.5.
* V1.4 28-Mar-95, J Love POSIX.
* V1.5 1-Aug-96, J Love CDF V2.6.
* V1.5a 18-Nov-97, J Love Windows NT/Visual C++.
*
******************************************************************************/
#if !defined(CDF2SKTh_INCLUDEd__)
#define CDF2SKTh_INCLUDEd__
/******************************************************************************
* Include files.
******************************************************************************/
#include "cdftools.h"
#if defined(mac)
# include "cdf2skt.rh"
#endif
/******************************************************************************
* Parameter/qualifier constants.
******************************************************************************/
#define CDFPATHparm 0
#define SKTqual 0
#define NONRVqual 1
#define NRVFILEqual 2
#define NRVTABLEqual 3
#define LOGqual 4
#define NOLOGqual 5
#define ZMODEqual 6
#define NEG2POSqual 7
#define NONEG2POSqual 8
#define FORMATqual 9
#define NOFORMATqual 10
#define REPORTqual 11
#define SCREENqual 12
#define NOSCREENqual 13
#define CACHEqual 14
#define VALUESqual 15
#define PAGEqual 16
#define NOPAGEqual 17
#define ABOUTqual 18
#define STATSqual 19
#define NOSTATSqual 20
/******************************************************************************
* Macro constants.
******************************************************************************/
#define MAX_LINE_LEN 79
#define MAX_COL_TO_USE (MAX_LINE_LEN - 1)
#define ENTRY_NUM_COL 20
#define ENTRY_NUM_WIDTH 5
#define VAR_DATATYPE_COL 18
#define ENTRY_DATATYPE_COL 18
#define VAR_NUMELEMS_WIDTH 5
#define zVAR_NUMDIMS_WIDTH 2
#define MAX_SIZES_LEN 80
#define MAX_VARYS_LEN 80
#define MAX_TEXT_LEN 80
/******************************************************************************
* Padding macros.
******************************************************************************/
#define FRONTpadLABEL(label,value) \
((size_t) strlen(label) < (size_t) strlen(value) ? \
(strlen(value) - strlen(label)) / (size_t) 2 : 0)
#define BACKpadLABEL(label,value) \
((size_t) strlen(label) < (size_t) strlen(value) ? \
(strlen(value) - strlen(label) + (size_t) 1) / (size_t) 2 : 0)
#define FRONTpadVALUE(label,value) \
((size_t) strlen(value) < (size_t) strlen(label) ? \
(strlen(label) - strlen(value) + (size_t) 1) / (size_t) 2 : 0)
#define BACKpadVALUE(label,value) \
((size_t) strlen(value) < (size_t) strlen(label) ? \
(strlen(label) - strlen(value)) / (size_t) 2 : 0)
/******************************************************************************
* Function Prototypes.
******************************************************************************/
#if defined(__cplusplus)
extern "C" {
#endif
Logical CreateSkeletonTable PROTOARGs((int argC, char *argV[]));
#if defined(__cplusplus)
}
#endif
Logical SkeletonTableQOPs PROTOARGs((int *argC, char **argV[]));
Logical WriteHeader PROTOARGs((char *CDFname));
Logical WriteGlobalAttr PROTOARGs((void));
Logical WriteVarAttr PROTOARGs((void));
Logical WriteVars PROTOARGs((int varValues, char *variables));
Logical WriteVar PROTOARGs((long varN, int varValues, char *variables,
Logical zVar));
Logical WriteEnd PROTOARGs((void));
Logical WriteVariableData PROTOARGs((FILE *fp, Logical zVar, long varN,
long dataType, long numElements,
long numDims, long dimSizes[],
long recVary, long dimVarys[],
long maxRec));
Logical VariableSelected PROTOARGs((char *varName, char *variables));
char *DataTypePaddedString PROTOARGs((long dataType));
Logical StatusHandlerC2S PROTOARGs((CDFstatus status));
/*****************************************************************************/
#endif
syntax highlighted by Code2HTML, v. 0.9.1