IOSS 2.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
skinner_interface.h
Go to the documentation of this file.
1/*
2 * Copyright(C) 1999-2020, 2022, 2024, 2025 National Technology & Engineering Solutions
3 * of Sandia, LLC (NTESS). Under the terms of Contract DE-NA0003525 with
4 * NTESS, the U.S. Government retains certain rights in this software.
5 *
6 * See packages/seacas/LICENSE for details
7 */
8#pragma once
9
10#include <iosfwd> // for ostream
11#include <limits>
12#include <string> // for string
13#include <vector>
14
15#include "Ioss_GetLongOpt.h" // for GetLongOption
16
17/** \brief A special namespace for the skinner demonstration program interFace.
18 */
19namespace Skinner {
21 {
22 public:
23 explicit Interface(std::string app_version);
24
25 bool parse_options(int argc, char **argv);
26
27 bool ints_64_bit() const { return ints64Bit_; }
28
29 bool no_output() const { return noOutput_; }
30 bool output_transient() const { return outputTransient_; }
31
32 std::string input_filename() const { return inputFile_; }
33 std::string output_filename() const { return outputFile_; }
34 std::string input_type() const { return inFiletype_; }
35 std::string output_type() const { return outFiletype_; }
36
37 private:
38 void enroll_options();
39
41
42 std::string inputFile_;
43 std::string outputFile_;
44 std::string inFiletype_{"unknown"};
45 std::string outFiletype_{"unknown"};
46
47 public:
48 std::string version{};
49 std::string decomp_method;
50 std::string compose_output{"default"};
51 double maximum_time{std::numeric_limits<double>::max()};
52 double minimum_time{-std::numeric_limits<double>::max()};
54 bool shuffle{false};
55 bool debug{false};
56 bool statistics{false};
57 bool ints64Bit_{false};
58 bool netcdf4_{false};
59 bool useFaceHashIds_{true};
60 bool noOutput_{false};
61 bool outputTransient_{false};
62 bool blocks_{false};
63
64 //! If non-empty, then it is a list of times that should be transferred to the output file.
65 std::vector<double> selected_times{};
66 };
67} // namespace Skinner
A database of program command line and environment variable options and methods for manipulating them...
Definition Ioss_GetLongOpt.h:25
int compression_level
Definition skinner_interface.h:53
void enroll_options()
Definition skinner_interface.C:25
double minimum_time
Definition skinner_interface.h:52
std::string output_filename() const
Definition skinner_interface.h:33
double maximum_time
Definition skinner_interface.h:51
bool shuffle
Definition skinner_interface.h:54
bool netcdf4_
Definition skinner_interface.h:58
std::string inputFile_
Definition skinner_interface.h:42
bool outputTransient_
Definition skinner_interface.h:61
bool blocks_
Definition skinner_interface.h:62
std::vector< double > selected_times
If non-empty, then it is a list of times that should be transferred to the output file.
Definition skinner_interface.h:65
bool useFaceHashIds_
Definition skinner_interface.h:59
std::string decomp_method
Definition skinner_interface.h:49
std::string compose_output
Definition skinner_interface.h:50
Interface(std::string app_version)
Definition skinner_interface.C:20
bool ints64Bit_
Definition skinner_interface.h:57
bool no_output() const
Definition skinner_interface.h:29
std::string version
Definition skinner_interface.h:48
Ioss::GetLongOption options_
Definition skinner_interface.h:40
bool noOutput_
Definition skinner_interface.h:60
bool parse_options(int argc, char **argv)
Definition skinner_interface.C:170
std::string input_filename() const
Definition skinner_interface.h:32
bool output_transient() const
Definition skinner_interface.h:30
std::string outFiletype_
Definition skinner_interface.h:45
bool ints_64_bit() const
Definition skinner_interface.h:27
std::string output_type() const
Definition skinner_interface.h:35
std::string outputFile_
Definition skinner_interface.h:43
bool statistics
Definition skinner_interface.h:56
std::string inFiletype_
Definition skinner_interface.h:44
bool debug
Definition skinner_interface.h:55
std::string input_type() const
Definition skinner_interface.h:34
A special namespace for the skinner demonstration program interFace.
Definition skinner_interface.h:19