openPSTD  2.0
Open source simulation for sound propagation in urban environments
exportCLI.h
1 //
2 // Created by michiel on 1-2-2016.
3 //
4 
5 #ifndef OPENPSTD_EXPORTCLI_H
6 #define OPENPSTD_EXPORTCLI_H
7 
8 #include <boost/program_options.hpp>
9 #include <shared/PSTDFile.h>
10 
11 namespace OpenPSTD
12 {
13  namespace CLI
14  {
15  namespace po = boost::program_options;
16 
17  class CLIExport
18  {
19  public:
20  virtual std::vector<std::string> GetFormats() = 0;
21  virtual void AddOptions(po::options_description_easy_init add_option) = 0;
22 
23  virtual void Execute(std::string format, std::shared_ptr <Shared::PSTDFile> file, std::string directory, std::string name,
24  std::vector<int> domains, int startFrame, int endFrame, po::variables_map input) = 0;
25  };
26 
27  class CLIImageExport: public CLIExport
28  {
29  public:
30  virtual std::vector<std::string> GetFormats();
31 
32  virtual void AddOptions(po::options_description_easy_init add_option) override;
33 
34  virtual void Execute(std::string format, std::shared_ptr <Shared::PSTDFile> file, std::string directory, std::string name,
35  std::vector<int> domains, int startFrame, int endFrame, po::variables_map input) override;
36  };
37 
38  class CLIHDF5Export: public CLIExport
39  {
40  public:
41  virtual std::vector<std::string> GetFormats();
42 
43  virtual void AddOptions(po::options_description_easy_init add_option) override;
44 
45  virtual void Execute(std::string format, std::shared_ptr <Shared::PSTDFile> file, std::string directory, std::string name,
46  std::vector<int> domains, int startFrame, int endFrame, po::variables_map input) override;
47  };
48  }
49 }
50 
51 
52 
53 
54 #endif //OPENPSTD_EXPORTCLI_H
This is the general namespace of the OpenPSTD application.
Definition: Boundary.cpp:33
Definition: exportCLI.h:17
Definition: exportCLI.h:38
Definition: exportCLI.h:27