Bridge++  Version 1.5.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
fieldIO_LIME_Parallel.h
Go to the documentation of this file.
1 
14 #ifndef FIELDIO_LIME_PARALLEL_INCLUDED
15 #define FIELDIO_LIME_PARALLEL_INCLUDED
16 
17 #include <string>
18 using std::string;
19 
20 #ifdef USE_MPI
21 #include <mpi.h>
23 #endif
24 
25 #include "fieldIO.h"
26 #include "Field/field.h"
27 #include "bridgeIO.h"
28 
30 
54 #ifdef USE_MPI
55 
56 class FieldIO_LIME_Parallel : public FieldIO
57 {
58  public:
59  static const std::string class_name;
60 
61  public:
62  FieldIO_LIME_Parallel(const IO_Format::Format *format) : FieldIO(format), m_is_initialized(false) {}
63 
64  void read_file(Field *v, std::string filename);
65  void write_file(Field *v, std::string filename);
66 
67  private:
68 
69  bool m_is_initialized;
70 
71  int m_nvol;
72 
73  MPI_Datatype m_type_vector;
74  MPI_Datatype m_type_tiled;
75 
76  int initialize();
77  int finalize();
78 };
79 
80 #else
81 
82 // for Single version, just an alias of FieldIO_LIME.
83 
85 {
86  public:
88 };
89 #endif /* USE_MPI */
90 #endif /* GAUGECONFIG_ILDG_INCLUDED */
static const std::string class_name
Definition: fieldIO.h:56
FieldIO_LIME class for file I/O of Field data in LIME format.
Definition: fieldIO_LIME.h:91
Container of Field-type object.
Definition: field.h:45
FieldIO_LIME_Parallel class for file I/O of Field data in LIME format.
void write_file(Field *v, const std::string filename)
write data to file.
void read_file(Field *v, const std::string filename)
read data from file.
FieldIO class for file I/O of space-time distributed data.
Definition: fieldIO.h:53
FieldIO_LIME_Parallel(const IO_Format::Format *format)