Compadre  1.5.5
Compadre_KokkosParser.hpp
Go to the documentation of this file.
1 #ifndef _COMPADRE_KOKKOSPARSER_HPP_
2 #define _COMPADRE_KOKKOSPARSER_HPP_
3 
4 #include "Compadre_Config.h"
5 #include "Compadre_Typedefs.hpp"
6 #include <sstream>
7 
8 namespace Compadre {
9 
10 /*! \class KokkosParser
11  \brief Class handling Kokkos command line arguments and returning parameters.
12 */
13 class KokkosParser {
14 
15 private:
16 
17  // prevent default constructor
18  KokkosParser();
19 
20  Kokkos::ScopeGuard* ksg;
21 
22 public:
23 
24  // call with command line arguments
25  KokkosParser(KokkosInitArguments args, bool print_status = false);
26 
27  // call with command line arguments
28  KokkosParser(int argc, char* args[], bool print_status = false);
29 
30  // call with std::vector of std::string's
31  KokkosParser(std::vector<std::string> args, bool print_status = false);
32 
33  // call for default arguments
34  KokkosParser(bool print_status = false);
35 
37  delete ksg;
38  }
39 
40  // prints Kokkos configuration
41  static std::string status();
42 
43  // prohibit using the assignment constructor
44  KokkosParser& operator=( const KokkosParser& ) = delete;
45 
46 };
47 
48 } // Compadre
49 
50 #endif
Class handling Kokkos command line arguments and returning parameters.
KokkosParser & operator=(const KokkosParser &)=delete
Kokkos::InitArguments KokkosInitArguments
static std::string status()