Skip to content
Snippets Groups Projects
Commit 0742f069 authored by Josh Borrow's avatar Josh Borrow
Browse files

Changed to using an enum for the compression level names

parent e0bf28df
No related branches found
No related tags found
1 merge request!1088Io selection changes
...@@ -34,6 +34,10 @@ ...@@ -34,6 +34,10 @@
#include "part_type.h" #include "part_type.h"
#include "swift.h" #include "swift.h"
/* Compression level names. */
const char* compression_level_names[compression_level_count] = {
"off", "on", "low", "med", "high"};
/** /**
* @brief Initialise the output options struct with the information read * @brief Initialise the output options struct with the information read
* from file. Only rank 0 reads from file; this data is then broadcast * from file. Only rank 0 reads from file; this data is then broadcast
...@@ -137,10 +141,12 @@ int output_options_should_write_field(struct output_options* output_options, ...@@ -137,10 +141,12 @@ int output_options_should_write_field(struct output_options* output_options,
part_type_names[part_type]); part_type_names[part_type]);
char compression_level[PARSER_MAX_LINE_SIZE]; char compression_level[PARSER_MAX_LINE_SIZE];
parser_get_opt_param_string(output_options->select_output, field, parser_get_opt_param_string(
compression_level, compression_level_default); output_options->select_output, field, compression_level,
compression_level_names[compression_level_default]);
int should_write = strcmp(compression_do_not_write, compression_level); int should_write = strcmp(compression_level_names[compression_do_not_write],
compression_level);
#ifdef SWIFT_DEBUG_CHECKS #ifdef SWIFT_DEBUG_CHECKS
message("Determining if %s is to be written. Returning %d from %s.", field, message("Determining if %s is to be written. Returning %d from %s.", field,
......
...@@ -23,15 +23,25 @@ ...@@ -23,15 +23,25 @@
#include "part_type.h" #include "part_type.h"
/* Compression level names */ /* Compression level names */
#define compression_do_not_write "off" enum compression_levels {
#define compression_write_lossless "on" compression_do_not_write = 0,
#define compression_write_low_lossy "low" compression_write_lossless,
#define compression_write_med_lossy "med" compression_write_low_lossy,
#define compression_write_high_lossy "high" compression_write_med_lossy,
compression_write_high_lossy,
/* Counter, always leave last */
compression_level_count,
};
/* Default value for SelectOutput */ /* Default value for SelectOutput */
#define compression_level_default compression_write_lossless #define compression_level_default compression_write_lossless
/**
* @brief Names of the compression levels, used in the select_output.yml
* parameter file.
**/
extern const char* compression_level_names[];
/** /**
* @brief Output selection properties, including the parsed files. * @brief Output selection properties, including the parsed files.
**/ **/
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment