summaryrefslogtreecommitdiffstats
path: root/src/H5FDgass.h
blob: 94cabbd0c7c374de01be4c681de20363f668eaf6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/*
 * Copyright © 1999 NCSA
 *                  All rights reserved.
 *
 * Programmer:  Saurabh Bagchi <bagchi@uiuc.edu>
 *              Tuesday, August 17, 1999
 *
 * Purpose:	The public header file for the gass driver.
 */
#ifndef H5FDgass_H
#define H5FDgass_H

#include <H5FDpublic.h>
#include <H5Ipublic.h>
#include <H5Eprivate.h>

#include <string.h>

#ifdef HAVE_GASS 
#define H5FD_GASS        (H5FD_gass_init())
#else
#define H5FD_GASS        (-1)
#endif   

#ifdef HAVE_GASS
/* Define the GASS info object. (Will be added to later as more GASS
   functionality is sought to be exposed. */
typedef struct GASS_Info {
  unsigned long block_size;
  unsigned long max_length;
} GASS_Info;

#define GASS_INFO_NULL(v) memset((void *)&v, 0, sizeof(GASS_Info));
/*
  GASS_Info zzGassInfo = {0L,0L};
  #define GASS_INFO_NULL zzGassInfo
*/
#endif

/* Function prototypes */
#ifdef HAVE_GASS
hid_t H5FD_gass_init(void);
herr_t H5Pset_fapl_gass(hid_t fapl_id, GASS_Info info);
herr_t H5Pget_fapl_gass(hid_t fapl_id, GASS_Info *info/*out*/);

#endif

#endif // H5FDgass_H