OpenMPI 0.1.1

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

fs_pvfs2.h
1 /*
2 * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
3 * University Research and Technology
4 * Corporation. All rights reserved.
5 * Copyright (c) 2004-2006 The University of Tennessee and The University
6 * of Tennessee Research Foundation. All rights
7 * reserved.
8 * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
9 * University of Stuttgart. All rights reserved.
10 * Copyright (c) 2004-2005 The Regents of the University of California.
11 * All rights reserved.
12 * Copyright (c) 2008-2011 University of Houston. All rights reserved.
13 * $COPYRIGHT$
14 *
15 * Additional copyrights may follow
16 *
17 * $HEADER$
18 */
19
20 #ifndef MCA_FS_PVFS2_H
21 #define MCA_FS_PVFS2_H
22 /*
23 #ifdef HAVE_PVFS2_H
24 #include "pvfs2.h"
25 #endif
26
27 #ifdef PVFS2_VERSION_MAJOR
28 #include "pvfs2-compat.h"
29 #endif
30 */
31 #include "pvfs2.h"
32 #include "pvfs2-compat.h"
33
34 #include "ompi_config.h"
35 #include "opal/mca/mca.h"
36 #include "ompi/mca/fs/fs.h"
37 #include "ompi/mca/io/ompio/io_ompio.h"
38
39 extern int mca_fs_pvfs2_priority;
40 extern int mca_fs_pvfs2_stripe_size;
41 extern int mca_fs_pvfs2_stripe_width;
42 extern int mca_fs_pvfs2_IS_INITIALIZED;
43
44 BEGIN_C_DECLS
45
46 struct mca_fs_pvfs2_s {
47 PVFS_credentials credentials;
48 PVFS_object_ref object_ref;
49 } mca_fs_pvfs2_s;
50 typedef struct mca_fs_pvfs2_s mca_fs_pvfs2;
51
52 int mca_fs_pvfs2_component_init_query(bool enable_progress_threads,
53 bool enable_mpi_threads);
54 struct mca_fs_base_module_1_0_0_t *
55 mca_fs_pvfs2_component_file_query (mca_io_ompio_file_t *fh, int *priority);
56 int mca_fs_pvfs2_component_file_unquery (mca_io_ompio_file_t *file);
57
58 int mca_fs_pvfs2_module_init (mca_io_ompio_file_t *file);
59 int mca_fs_pvfs2_module_finalize (mca_io_ompio_file_t *file);
60
61 OMPI_MODULE_DECLSPEC extern mca_fs_base_component_2_0_0_t mca_fs_pvfs2_component;
62 /*
63 * ******************************************************************
64 * ********* functions which are implemented in this module *********
65 * ******************************************************************
66 */
67
68 int mca_fs_pvfs2_file_open (struct ompi_communicator_t *comm,
69 char *filename,
70 int amode,
71 struct ompi_info_t *info,
72 mca_io_ompio_file_t *fh);
73
74 int mca_fs_pvfs2_file_close (mca_io_ompio_file_t *fh);
75
76 int mca_fs_pvfs2_file_delete (char *filename,
77 struct ompi_info_t *info);
78
79 int mca_fs_pvfs2_file_set_size (mca_io_ompio_file_t *fh,
80 OMPI_MPI_OFFSET_TYPE size);
81
82 int mca_fs_pvfs2_file_get_size (mca_io_ompio_file_t *fh,
83 OMPI_MPI_OFFSET_TYPE *size);
84
85 int mca_fs_pvfs2_file_set_info (mca_io_ompio_file_t *fh,
86 struct ompi_info_t *info);
87
88 int mca_fs_pvfs2_file_sync (mca_io_ompio_file_t *fh);
89
90 int mca_fs_pvfs2_file_seek (mca_io_ompio_file_t *fh,
91 OMPI_MPI_OFFSET_TYPE offset,
92 int whence);
93 /*
94 * ******************************************************************
95 * ************ functions implemented in this module end ************
96 * ******************************************************************
97 */
98
99 END_C_DECLS
100
101 #endif /* MCA_FS_PVFS2_H */
mca_fs_pvfs2_s
Definition: fs_pvfs2.h:46
mca_fs_base_component_2_0_0_t
Definition: fs.h:82
mca.h
Top-level interface for all MCA components.
ompi_info_t
Definition: info.h:38
mca_fs_base_module_1_0_0_t
Definition: fs.h:127
mca_io_ompio_file_t
Back-end structure for MPI_File.
Definition: io_ompio.h:121
ompi_communicator_t
Definition: communicator.h:118