00001
00002
00003
00004
00005
00006
00007 #ifndef CHIRP_ARRAY_H
00008 #define CHIRP_ARRAY_H
00009
00010 #include "chirp_types.h"
00011
00034 struct chirp_matrix *chirp_matrix_create(const char *host, const char *path, int width, int height, int element_size, int nhosts, time_t stoptime);
00035
00044 struct chirp_matrix *chirp_matrix_open(const char *host, const char *path, time_t stoptime);
00045
00054 int chirp_matrix_get_row(struct chirp_matrix *matrix, int y, void *data, time_t stoptime);
00055
00065 int chirp_matrix_set_row(struct chirp_matrix *matrix, int y, const void *data, time_t stoptime);
00066
00077 int chirp_matrix_get_col(struct chirp_matrix *matrix, int x, void *data, time_t stoptime);
00078
00089 int chirp_matrix_set_col(struct chirp_matrix *matrix, int x, const void *data, time_t stoptime);
00090
00102 int chirp_matrix_get_range(struct chirp_matrix *matrix, int x, int y, int width, int height, void *data, time_t stoptime);
00103
00115 int chirp_matrix_set_range(struct chirp_matrix *matrix, int x, int y, int width, int height, const void *data, time_t stoptime);
00116
00128 int chirp_matrix_get(struct chirp_matrix *matrix, int x, int y, void *data, time_t stoptime);
00129
00141 int chirp_matrix_set(struct chirp_matrix *matrix, int x, int y, const void *data, time_t stoptime);
00142
00146 int chirp_matrix_setacl(const char *host, const char *path, const char *subject, const char *rights, time_t stoptime);
00147
00148
00154 int chirp_matrix_width(struct chirp_matrix *matrix);
00155
00161 int chirp_matrix_height(struct chirp_matrix *matrix);
00162
00168 int chirp_matrix_element_size(struct chirp_matrix *matrix);
00169
00175 int chirp_matrix_nhosts(struct chirp_matrix *matrix);
00176
00184 int chirp_matrix_nfiles(struct chirp_matrix *matrix);
00185
00191 void chirp_matrix_fsync(struct chirp_matrix *matrix, time_t stoptime);
00192
00198 void chirp_matrix_close(struct chirp_matrix *matrix, time_t stoptime);
00199
00206 int chirp_matrix_delete(const char *host, const char *path, time_t stoptime);
00207
00208 #endif