SOCA
FmsInput.h
Go to the documentation of this file.
1 /*
2  * (C) Copyright 2020-2021 UCAR
3  *
4  * This software is licensed under the terms of the Apache Licence Version 2.0
5  * which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
6  */
7 
8 #ifndef SOCA_GEOMETRY_FMSINPUT_H_
9 #define SOCA_GEOMETRY_FMSINPUT_H_
10 
11 #include <sys/stat.h>
12 
13 #include <unistd.h>
14 #include <cstring>
15 #include <fstream>
16 #include <ostream>
17 #include <string>
18 
19 #include "eckit/config/Configuration.h"
20 #include "eckit/exception/Exceptions.h"
21 #include "eckit/mpi/Comm.h"
22 
23 // -----------------------------------------------------------------------------
24 
25 namespace soca {
26 
27  /// FmsInput handles the hard-coded fms input.nml file.
28  struct FmsInput {
29  FmsInput(const eckit::mpi::Comm &, const eckit::Configuration & conf);
30  FmsInput(const FmsInput &);
31  ~FmsInput();
32 
33  void updateNameList();
34  int getFileSN(const std::string &);
35 
36  const eckit::mpi::Comm & comm_;
37  const eckit::Configuration & conf_;
39  std::string inputnml_orig_;
40  };
41 } // namespace soca
42 
43 #endif // SOCA_GEOMETRY_FMSINPUT_H_
FmsInput handles the hard-coded fms input.nml file.
Definition: FmsInput.h:28
std::string inputnml_orig_
Definition: FmsInput.h:39
const eckit::Configuration & conf_
Definition: FmsInput.h:37
int getFileSN(const std::string &)
Definition: FmsInput.cc:64
const eckit::mpi::Comm & comm_
Definition: FmsInput.h:36
void updateNameList()
Definition: FmsInput.cc:41
int inputnml_sn_
Definition: FmsInput.h:38
FmsInput(const eckit::mpi::Comm &, const eckit::Configuration &conf)
Definition: FmsInput.cc:13