SIONlib  1.7.6
Scalable I/O library for parallel access to task-local files
sion_dup.h
Go to the documentation of this file.
1 /****************************************************************************
2 ** SIONLIB http://www.fz-juelich.de/jsc/sionlib **
3 *****************************************************************************
4 ** Copyright (c) 2008-2019 **
5 ** Forschungszentrum Juelich, Juelich Supercomputing Centre **
6 ** **
7 ** See the file COPYRIGHT in the package base directory for details **
8 ****************************************************************************/
9 
14 #ifndef SION_SION_DUP_H
15 #define SION_SION_DUP_H
16 
17 #include <stdint.h>
18 
19 #include "sion_const.h"
20 #include "sion_datatypes.h"
21 #include "sion_filedesc.h"
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
27  int _sion_dup(int sid, int mode, int rank, uint64_t key);
28  int _sion_dedup( int sid );
29 
30  /* internal auxiliary */
31  int _sion_dup_paropen( _sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc );
32  int _sion_dup_paropenmappedmaster( _sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc );
33  int _sion_dup_blocksizes( _sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc );
34  int _sion_dup_all_ds( _sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc );
35  int _sion_dup_keyvalptr( _sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc );
36  int _sion_dup_all_keyvalptr( _sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc );
37 
38 #ifdef __cplusplus
39 }
40 #endif
41 
42 #endif
43 
44 
_sion_dup_keyvalptr
int _sion_dup_keyvalptr(_sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc)
Duplicate the keyvalue data structure of sion_filedesc.
Definition: sion_dup.c:464
_sion_dup_all_ds
int _sion_dup_all_ds(_sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc)
Duplicate the all* array of sion_filedesc.
Definition: sion_dup.c:422
sion_filedesc.h
sion_datatypes.h
_sion_dup
int _sion_dup(int sid, int mode, int rank, uint64_t key)
Create a duplicated sion file descriptor.
Definition: sion_dup.c:52
_sion_dup_paropen
int _sion_dup_paropen(_sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc)
Duplicate sion_filedesc if the file is opened in paropen_mapped_master.
Definition: sion_dup.c:259
_sion_dup_blocksizes
int _sion_dup_blocksizes(_sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc)
Duplicate the blocksizes array of sion_filedesc.
Definition: sion_dup.c:393
_sion_filedesc_struct
Sion File Descriptor Structure.
Definition: sion_filedesc.h:78
_sion_dup_all_keyvalptr
int _sion_dup_all_keyvalptr(_sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc)
Duplicate the keyvalue data structures of sion_filedesc.
Definition: sion_dup.c:484
sion_const.h
_sion_dup_paropenmappedmaster
int _sion_dup_paropenmappedmaster(_sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc)
Duplicate sion_filedesc if the file is opened in paropen_mapped_master.
Definition: sion_dup.c:295
_sion_dedup
int _sion_dedup(int sid)
Destroy a duplicated sion file descriptor.
Definition: sion_dup.c:157