/usr/include/adios_read_hooks.h is in libadios-dev 1.3-11.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 | /*
* ADIOS is freely available under the terms of the BSD license described
* in the COPYING file in the top level directory of this source distribution.
*
* Copyright (c) 2008 - 2009. UT-BATTELLE, LLC. All rights reserved.
*/
#ifndef ADIOS_READ_HOOKS_H
#define ADIOS_READ_HOOKS_H
#include "config.h"
#include <stdint.h>
#include <string.h>
#include "adios_read.h"
#define FORWARD_DECLARE(a) \
int adios_read_##a##_init (MPI_Comm comm); \
int adios_read_##a##_finalize (); \
int adios_read_##a##_fclose (ADIOS_FILE *fp); \
ADIOS_FILE * adios_read_##a##_fopen (const char * fname, MPI_Comm comm); \
int adios_read_##a##_fclose (ADIOS_FILE *fp); \
ADIOS_GROUP * adios_read_##a##_gopen (ADIOS_FILE *fp, const char * grpname); \
ADIOS_GROUP * adios_read_##a##_gopen_byid (ADIOS_FILE *fp, int grpid); \
int adios_read_##a##_gclose (ADIOS_GROUP *gp); \
ADIOS_VARINFO * adios_read_##a##_inq_var (ADIOS_GROUP *gp, const char * varname); \
ADIOS_VARINFO * adios_read_##a##_inq_var_byid (ADIOS_GROUP *gp, int varid); \
int64_t adios_read_##a##_read_var (ADIOS_GROUP * gp, const char * varname, const uint64_t * start, const uint64_t * count, void * data); \
int64_t adios_read_##a##_read_local_var (ADIOS_GROUP * gp, const char * varname, int idx, const uint64_t * start, const uint64_t * count, void * data); \
int64_t adios_read_##a##_read_var_byid (ADIOS_GROUP * gp, int varid, const uint64_t * start, const uint64_t * count, void * data); \
int adios_read_##a##_get_attr (ADIOS_GROUP * gp, const char * attrname, enum ADIOS_DATATYPES * type, int * size, void ** data); \
int adios_read_##a##_get_attr_byid (ADIOS_GROUP * gp, int attrid, enum ADIOS_DATATYPES * type, int * size, void ** data); \
void adios_read_##a##_reset_dimension_order (ADIOS_FILE *fp, int is_fortran); \
//////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////
//// SETUP YOUR NEW READ METHODS BELOW (FOLLOW THE PATTERN): ////
//// 1. Add an entry to the adios_read.h/ADIOS_READ_METHOD ////
//// 2. Update the ADIOS_METHOD_COUNT ////
//// 2. Add a FOWARD_DECLARE line (assuming standard naming) ////
//////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////
#define ADIOS_READ_METHOD_COUNT 7
// forward declare the functions (or dummies for internals use)
FORWARD_DECLARE(bp)
FORWARD_DECLARE(bp_staged)
FORWARD_DECLARE(hdf5)
#if HAVE_DART
FORWARD_DECLARE(dart)
#endif
#if HAVE_DIMES
FORWARD_DECLARE(dimes)
#endif
#if HAVE_NSSI
FORWARD_DECLARE(nssi)
#endif
#if HAVE_NSSI
FORWARD_DECLARE(datatap)
#endif
typedef int (* ADIOS_INIT_FN) (MPI_Comm comm);
typedef int (* ADIOS_FINALIZE_FN) ();
typedef ADIOS_FILE * (* ADIOS_FOPEN_FN) (const char * fname, MPI_Comm comm);
typedef int (* ADIOS_FCLOSE_FN) (ADIOS_FILE *fp);
typedef ADIOS_GROUP * (* ADIOS_GOPEN_FN) (ADIOS_FILE *fp, const char * grpname);
typedef ADIOS_GROUP * (* ADIOS_GOPEN_BYID_FN) (ADIOS_FILE *fp, int grpid);
typedef int (* ADIOS_GCLOSE_FN) (ADIOS_GROUP *gp);
typedef ADIOS_VARINFO * (* ADIOS_INQ_VAR_FN) (ADIOS_GROUP *gp, const char * varname);
typedef ADIOS_VARINFO * (* ADIOS_INQ_VAR_BYID_FN) (ADIOS_GROUP *gp, int varid);
typedef int64_t (* ADIOS_READ_VAR_FN) (ADIOS_GROUP * gp, const char * varname, const uint64_t * start, const uint64_t * count, void * data);
typedef int64_t (* ADIOS_READ_LOCAL_VAR_FN) (ADIOS_GROUP * gp, const char * varname, int idx, const uint64_t * start, const uint64_t * count, void * data);
typedef int64_t (* ADIOS_READ_VAR_BYID_FN) (ADIOS_GROUP * gp, int varid, const uint64_t * start, const uint64_t * count, void * data);
typedef int (* ADIOS_GET_ATTR_FN) (ADIOS_GROUP * gp, const char * attrname, enum ADIOS_DATATYPES * type, int * size, void ** data);
typedef int (* ADIOS_GET_ATTR_BYID_FN) (ADIOS_GROUP * gp, int attrid, enum ADIOS_DATATYPES * type, int * size, void ** data);
typedef void (* ADIOS_RESET_DIMENSION_ORDER_FN) ();
struct adios_read_hooks_struct
{
ADIOS_INIT_FN adios_init_fn;
ADIOS_FINALIZE_FN adios_finalize_fn;
ADIOS_FOPEN_FN adios_fopen_fn;
ADIOS_FCLOSE_FN adios_fclose_fn;
ADIOS_GOPEN_FN adios_gopen_fn;
ADIOS_GOPEN_BYID_FN adios_gopen_byid_fn;
ADIOS_GCLOSE_FN adios_gclose_fn;
ADIOS_INQ_VAR_FN adios_inq_var_fn;
ADIOS_INQ_VAR_BYID_FN adios_inq_var_byid_fn;
ADIOS_READ_VAR_FN adios_read_var_fn;
ADIOS_READ_LOCAL_VAR_FN adios_read_local_var_fn;
ADIOS_READ_VAR_BYID_FN adios_read_var_byid_fn;
ADIOS_GET_ATTR_FN adios_get_attr_fn;
ADIOS_GET_ATTR_BYID_FN adios_get_attr_byid_fn;
ADIOS_RESET_DIMENSION_ORDER_FN adios_reset_dimension_order_fn;
};
#undef FORWARD_DECLARE
#endif
|