1
/* -------------------------------------------------------------------------- */
3
* @file adios_nessie_args.x
5
* @brief XDR argument structures for the adios proxy.
7
* @author Todd Kordenbrock (thkorde\@sandia.gov).
11
/* Extra stuff to put at the beginning of the header file */
13
/*%#include <sys/syslimits.h> /* ADIOS_PATH_MAX, ... */
16
/* Extra stuff to put at the beginning of the C file */
19
%#include "adios_nssi_args.h"
23
* Operation codes for the adios proxy.
26
ADIOS_NULL_OP = 10000,
39
ADIOS_READ_GET_VARTYPE_SIZE_OP,
40
ADIOS_READ_READ_VAR_OP
50
WRITE_AGGREGATE_INDEPENDENT,
51
WRITE_AGGREGATE_COLLECTIVE,
52
WRITE_CACHING_INDEPENDENT,
53
WRITE_CACHING_COLLECTIVE
56
enum adios_open_mode {
64
const ADIOS_PATH_MAX = 256;
65
const ADIOS_DIM_MAX = 16;
67
/* ********* ARGUMENTS FOR STUB FUNCTIONS ************* */
70
* Argument structure for adios_open
72
struct adios_open_args {
73
string client_id<ADIOS_PATH_MAX>;
74
string gname<ADIOS_PATH_MAX>;
75
string fname<ADIOS_PATH_MAX>;
77
int8_t use_single_server;
81
* Structure for adios_open result
83
struct adios_open_res {
88
* Argument structure for adios_group_size
90
struct adios_group_size_args {
99
string vpath<ADIOS_PATH_MAX>;
100
string vname<ADIOS_PATH_MAX>;
104
* Marshaled arguments for adios_read
106
struct adios_read_args {
108
string vpath<ADIOS_PATH_MAX>;
109
string vname<ADIOS_PATH_MAX>;
112
struct adios_var offsets<ADIOS_DIM_MAX>;
113
struct adios_var ldims<ADIOS_DIM_MAX>;
114
struct adios_var gdims<ADIOS_DIM_MAX>;
118
* Marshaled arguments for adios_read result
120
struct adios_read_res {
125
* Marshalled argument structure for adios_write
127
struct adios_write_args {
129
string vpath<ADIOS_PATH_MAX>;
130
string vname<ADIOS_PATH_MAX>;
135
struct adios_var offsets<ADIOS_DIM_MAX>;
136
struct adios_var ldims<ADIOS_DIM_MAX>;
137
struct adios_var gdims<ADIOS_DIM_MAX>;
141
* Marshaled arguments for adios_write result
143
struct adios_write_res {
144
uint64_t bytes_written;
148
* Marshalled arguments for adios_end_iteration
150
struct adios_end_iter_args {
155
* Marshalled arguments for adios_start_calculation
157
struct adios_start_calc_args {
162
* Marshalled arguments for adios_stop_calculation
164
struct adios_stop_calc_args {
169
* Marshalled arguments for adios_close
171
struct adios_close_args {
172
string fname<ADIOS_PATH_MAX>;
177
* Marshalled arguments for adios_finalize
179
struct adios_finalize_args {
180
string client_id<ADIOS_PATH_MAX>;
185
* Argument structure for adios_read_fopen
187
struct adios_read_fopen_args {
188
string client_id<ADIOS_PATH_MAX>;
189
string gname<ADIOS_PATH_MAX>;
190
string fname<ADIOS_PATH_MAX>;
191
uint64_t requested_timestep;
195
* Structure for adios_read_fopen result
197
struct adios_read_fopen_res {
202
* Marshaled arguments for adios_read
204
struct adios_read_read_var_args {
206
string client_id<ADIOS_PATH_MAX>;
207
uint64_t open_timestep;
208
string vpath<ADIOS_PATH_MAX>;
209
string vname<ADIOS_PATH_MAX>;
218
* Marshaled arguments for adios_read result
220
struct adios_read_read_var_res {
225
* Marshaled arguments for adios_read
227
struct adios_read_get_vartype_size_args {
229
string client_id<ADIOS_PATH_MAX>;
230
uint64_t open_timestep;
231
string vpath<ADIOS_PATH_MAX>;
232
string vname<ADIOS_PATH_MAX>;
236
* Marshaled arguments for adios_read result
238
struct adios_read_get_vartype_size_res {
239
uint64_t vartype_size;
243
* Marshalled arguments for adios_fclose
245
struct adios_read_fclose_args {
247
uint64_t open_timestep;
248
string client_id<ADIOS_PATH_MAX>;
249
string fname<ADIOS_PATH_MAX>;