1 #ifndef CDO_OPTIONS_H
2 #define CDO_OPTIONS_H
3 
4 #include <vector>
5 #include <string>
6 
7 #define ITSME (cdo_cmpstr(cdo::Username, "\x6d\x32\x31\x34\x30\x30\x33"))
8 
9 namespace cdo
10 {
11 extern const char *progname;
12 extern char File_Suffix[32];
13 extern const char *Version;
14 extern const char *Username;
15 extern const char *DownloadPath;
16 extern const char *IconGrids;
17 }  // namespace cdo
18 
19 enum class MemType
20 {
21   Native,
22   Float,
23   Double
24 };
25 
26 namespace Options
27 {
28 extern int numStreamWorker;
29 extern bool benchmark;
30 extern bool silentMode;
31 
32 extern bool cdoCompress;
33 extern int cdoCompType;
34 extern int cdoCompLevel;
35 extern bool cdoInteractive;
36 extern bool cdoVerbose;
37 extern int cdoExitStatus;
38 extern bool Timer;
39 
40 extern bool CheckDatarange;
41 
42 extern int CDO_flt_digits;
43 extern int CDO_dbl_digits;
44 
45 extern bool Use_FFTW;
46 extern bool VersionInfo;
47 extern int CMOR_Mode;
48 
49 extern bool cdoDiag;
50 
51 extern MemType CDO_Memtype;
52 
53 extern bool CDO_Parallel_Read;
54 extern bool CDO_task;
55 
56 extern int CDO_Reduce_Dim;
57 extern int CDO_Append_History;
58 extern bool CDO_Reset_History;
59 
60 extern unsigned Random_Seed;
61 
62 extern int cdoChunkType;
63 extern bool cdoOverwriteMode;
64 extern bool cdoParIO;
65 extern bool cdoRegulargrid;
66 size_t cdo_num_varnames();
67 extern std::vector<std::string> cdoVarnames;
68 
69 extern bool REMAP_genweights;
70 
71 }  // namespace Options
72 
73 namespace Threading
74 {
75 extern int ompNumThreads;
76 extern bool cdoLockIO;
77 }  // namespace Threading
78 
79 const char *cdo_comment(void);
80 
81 void set_compression(int fileID, int filetype);
82 
83 #endif
84