SIONlib  1.7.7
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 
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
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
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
int _sion_dup_blocksizes(_sion_filedesc *sion_filedesc, _sion_filedesc *new_filedesc)
Duplicate the blocksizes array of sion_filedesc.
Definition: sion_dup.c:393
int _sion_dup(int sid, int mode, int rank, uint64_t key)
Create a duplicated sion file descriptor.
Definition: sion_dup.c:52
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
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
int _sion_dedup(int sid)
Destroy a duplicated sion file descriptor.
Definition: sion_dup.c:157
Sion File Descriptor Structure.
Definition: sion_filedesc.h:79