This file is indexed.

/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