NEP 2.7.0
NetCDF Extension Pack
Loading...
Searching...
No Matches
pds4dispatch.h
Go to the documentation of this file.
1
13#ifndef _PDS4DISPATCH_H
14#define _PDS4DISPATCH_H
15
16#include "config.h"
17#include "ncdispatch.h"
18#include "nep.h"
19
20/* Include libxml2 header if available */
21#ifdef HAVE_PDS4
22#include <libxml/parser.h>
23#include <libxml/tree.h>
24#endif
25
27#ifdef NC_FORMATX_UDF5
28#define NC_FORMATX_NC_PDS4 NC_FORMATX_UDF5
29#else
30#define NC_FORMATX_NC_PDS4 NC_FORMATX_UDF0
31#endif
32
34#define PDS4_MAGIC_LEN 5
35
37#define PDS4_NAMESPACE "http://pds.nasa.gov/pds4/pds/v1"
38
65
67typedef struct NC_PDS4_FILE_INFO
68{
69#ifdef HAVE_PDS4
70 xmlDoc *doc;
71#else
72 void *doc;
73#endif
74 char *path;
76
77#if defined(__cplusplus)
78extern "C" {
79#endif
80
81 extern int
82 NC_PDS4_open(const char *path, int mode, int basepe, size_t *chunksizehintp,
83 void *parameters, const NC_Dispatch *, int);
84
85 extern int
86 NC_PDS4_abort(int ncid);
87
88 extern int
89 NC_PDS4_close(int ncid, void *ignore);
90
91 extern int
92 NC_PDS4_inq_format(int ncid, int *formatp);
93
94 extern int
95 NC_PDS4_inq_format_extended(int ncid, int *formatp, int *modep);
96
97 extern int
98 NC_PDS4_get_vara(int ncid, int varid, const size_t *start, const size_t *count,
99 void *value, nc_type);
100
101 extern NC_Dispatch*
102 NC_PDS4_initialize(void);
103
104 extern int
105 NC_PDS4_finalize(void);
106
107 extern const NC_Dispatch *PDS4_dispatch_table;
108
109#if defined(__cplusplus)
110}
111#endif
112
113#endif /* _PDS4DISPATCH_H */
NetCDF Extension Pack (NEP) - Public API.
int NC_PDS4_inq_format(int ncid, int *formatp)
Definition pds4file.c:2076
struct NC_PDS4_FILE_INFO NC_PDS4_FILE_INFO_T
const NC_Dispatch * PDS4_dispatch_table
Definition pds4dispatch.c:116
int NC_PDS4_open(const char *path, int mode, int basepe, size_t *chunksizehintp, void *parameters, const NC_Dispatch *, int)
Definition pds4file.c:1844
NC_Dispatch * NC_PDS4_initialize(void)
Definition pds4dispatch.c:132
int NC_PDS4_get_vara(int ncid, int varid, const size_t *start, const size_t *count, void *value, nc_type)
Definition pds4file.c:2221
struct NC_PDS4_VAR_INFO NC_PDS4_VAR_INFO_T
int NC_PDS4_abort(int ncid)
Definition pds4file.c:2034
int NC_PDS4_finalize(void)
Definition pds4dispatch.c:150
int NC_PDS4_inq_format_extended(int ncid, int *formatp, int *modep)
Definition pds4file.c:2097
int NC_PDS4_close(int ncid, void *ignore)
Definition pds4file.c:1982
Definition pds4dispatch.h:68
xmlDoc * doc
Definition pds4dispatch.h:70
char * path
Definition pds4dispatch.h:74
Definition pds4dispatch.h:41
int is_group_field
Definition pds4dispatch.h:50
size_t record_length
Definition pds4dispatch.h:43
int field_number
Definition pds4dispatch.h:49
size_t repetitions
Definition pds4dispatch.h:53
size_t field_length
Definition pds4dispatch.h:45
int group_depth
Definition pds4dispatch.h:56
size_t data_offset
Definition pds4dispatch.h:42
size_t group_location
Definition pds4dispatch.h:51
size_t outer_repetitions
Definition pds4dispatch.h:59
size_t group_length
Definition pds4dispatch.h:52
size_t inner2_field_offset
Definition pds4dispatch.h:63
int is_ascii
Definition pds4dispatch.h:47
size_t outer_group_length
Definition pds4dispatch.h:58
int is_table_field
Definition pds4dispatch.h:46
size_t outer_group_location
Definition pds4dispatch.h:57
size_t inner_group_length
Definition pds4dispatch.h:61
size_t field_offset
Definition pds4dispatch.h:44
size_t inner_group_location
Definition pds4dispatch.h:60
int is_delimited
Definition pds4dispatch.h:48
size_t inner_field_offset
Definition pds4dispatch.h:54
size_t inner_repetitions
Definition pds4dispatch.h:62