//
//  DCMSpec.h
//
//  Qdos - macro definitions for DCM (Data Configuration Map) files
//
//  Janet Barnes
//  February 2001
//

#ifndef QDOS_DCM_SPEC_H_
#define QDOS_DCM_SPEC__H_


namespace QDOS {

#define DCM_CDF_FILE "cdf"
#define DCM_CDF_TS_DATA "cdf:ts"
#define DCM_FEXT ".dcm"
#define DCM_ALIAS_RECORD "alias"
#define DCM_UNALIAS_RECORD "unalias"
#define DCM_DATA_RECORD "data"
#define DCM_MERGE_RECORD "merge"
#define DCM_COMMENT_RECORD "comment"
#define DCM_DATA_INFO_RECORD "data_info"
#define DCM_DATA_DIR_RECORD "data_dir"
#define DCM_DELIM "$"
#define DCM_NULL_STR ""
#define DCM_START_ALIAS "("
#define DCM_END_ALIAS ")"
#define DCM_START_ENVIRON "["
#define DCM_END_ENVIRON "]"

#ifdef WINDOWS
#define DCM_SPATH "$[PWD];$(QCONFIG_DIR);$[QCONFIG_DIR]"
#define DCM_SPATHDELIM ";"
#else
#define DCM_SPATH "$[PWD]:$(QCONFIG_DIR):$[QCONFIG_DIR]"
#define DCM_SPATHDELIM ":"
#endif

#define DCM_RECORD_TYPE_FLD 0
#define DCM_DATA_TYPE_FLD 1
#define DCM_CDF_TS_DATA_PRIORITY_FLD 2
#define DCM_CDF_TS_DATA_DATASOURCE_FLD 3
#define DCM_CDF_TS_DATA_VAR_NAME_FLD 4
#define DCM_CDF_TS_DATA_TIME_VAR_NAME_FLD 5
#define DCM_CDF_TS_DATA_TIME_TYPE_FLD 6
#define DCM_CDF_TS_DATA_FILE_NAME_FLD 7
#define DCM_CDF_TS_DATA_TIME_INT_START_FLD 8
#define DCM_CDF_TS_DATA_TIME_INT_END_FLD 9
#define DCM_CDF_TS_DATA_NUM_ITEMS_FLD 10
#define DCM_CDF_TS_DATA_AVAILABILITY_FLD 11
#define DCM_CDF_TS_DATA_NUM_FLDS 12

#define DCM_META_DATA_DATASOURCE_FLD 2
#define DCM_META_DATA_FILE_TYPE_FLD 3
#define DCM_META_DATA_FILE_NAME_FLD 4
#define DCM_META_DATA_VAR_NAME_FLD 5
#define DCM_META_DATA_NUM_FLDS 6

#define DCM_DATA_INFO_DATASOURCE_FLD 2
#define DCM_DATA_INFO_INFO_FLD 3
#define DCM_DATA_INFO_NUM_FLDS 4
#define DCM_CDF_TS_DATA_INFO_FLD_NAME "CATDESC"

#define DCM_ALIAS_NAME_FLD 1
#define DCM_ALIAS_VALUE_FLD 2
#define DCM_ALIAS_NUM_FLDS 3

#define DCM_MERGE_FILE_PRIORITY 1
#define DCM_MERGE_FILE_NAME 2
#define DCM_MERGE_NUM_FLDS 3

#define DCM_DATA_DIR_NAME_FLD 1
#define DCM_DATA_DIR_NUM_FLDS 2
} // end namespace QDOS
                                                                                                   
# endif // QDOS_DCM_SPEC_H_

