//
//  ValueManager.h
//  SIIMpaPrinterSample
//

#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

#define KEY_TYPE_ADDRESS                                @"KEY_TYPE_ADDRESS"
#define KEY_TYPE_PORTTYPE                               @"KEY_TYPE_PORTTYPE"
#define KEY_TYPE_PRINTERMODEL                           @"KEY_TYPE_PRINTERMODEL"

#define VALUE_TYPE_ADDRESS                              @"Not Selected"
#define VALUE_TYPE_PORTTYPE                             @"Other"
#define VALUE_TYPE_PRINTERMODEL                         @"Other"

#define PORTTYPE_TCP_IP                                 @"TCP/IP"
#define PORTTYPE_BLUETOOTH                              @"Bluetooth"
#define PRINTER_MODEL_MPA40                             @"MP-A40"

#define CALLBACK_ONLINE_SECTION                         @"Online"
#define CALLBACK_STATUS_SECTION                         @"Printer Status"

#define CALLBACK_VOLTAGE_ERROR                          @"Voltage Error"
#define CALLBACK_HARDWARE_ERROR                         @"Hardware Error"
#define CALLBACK_HEAD_TEMPERATURE_ERROR                 @"Head Temperature Error"
#define CALLBACK_OUT_OF_PAPER_ERROR                     @"Out-Of-Paper Error"
#define CALLBACK_PAPER_JAM_ERROR                        @"Paper Jam Error"
#define CALLBACK_COVER_OPEN_ERROR                       @"Cover Open Error"
#define CALLBACK_BATTERY_ERROR                          @"Battery Error"
#define CALLBACK_FEED_SWTICH_STATE                      @"Feed Switch Error"
#define CALLBACK_PAPER_FEED_STATE                       @"Paper Feed Error"
#define CALLBACK_RETURN_WAITING_STATE                   @"Return-waiting Error"
#define CALLBACK_FLASH_MEMORY_REWRITING                 @"FLASH memory rewriting"
#define CALLBACK_BATTERY_STATE                          @"Battery State"

#define KEY_TYPE_NV_MEM_CAP                             @"NV graphics memory capacity"
#define KEY_TYPE_NV_MEM_REM_CAP                         @"NV graphics memory remaining capacity"
#define KEY_TYPE_NV_MEM_KEYCODE_LIST                    @"NV graphics key code list"
#define KEY_TYPE_REM_USER_MEM_CAP_DEFRAG                @"Remaining user area after defragment"
#define KEY_TYPE_REM_USER_MEM_CAP                       @"Remaining user area"
#define KEY_TYPE_FUNC_SET_RESP                          @"Function setting response"
#define KEY_TYPE_PRN_ID_MODEL                           @"Printer ID (Model ID)"
#define KEY_TYPE_PRN_ID_TYPE                            @"Printer ID (Type ID)"
#define KEY_TYPE_PRN_ID_ROM_VER                         @"Printer ID (ROM version ID)"
#define KEY_TYPE_PRN_ID_FIRM_VER_MAIN                   @"Printer ID (Firmware version (main))"
#define KEY_TYPE_PRN_ID_MFR                             @"Printer ID (Manufacturer)"
#define KEY_TYPE_PRN_ID_MODEL_NAME                      @"Printer ID (Model name)"
#define KEY_TYPE_PRN_ID_FIRM_VER_BOOT                   @"Printer ID (Firmware version (boot))"
#define KEY_TYPE_PRN_ID_FIRM_CHECKSUM_BOOT              @"Printer ID (Firmware checksum (boot))"
#define KEY_TYPE_PRN_ID_FIRM_CHECKSUM_MAIN              @"Printer ID (Firmware checksum (main))"
#define KEY_TYPE_PRN_ID_FIRM_CHECKSUM                   @"Printer ID (Firmware checksum (main+boot))"
#define KEY_TYPE_MAINT_NUM_FEED_LINE                    @"Maintenance counter (Paper feed)"
#define KEY_TYPE_MAINT_NUM_HEAD_ACTIVE                  @"Maintenance counter (head activation)"
#define KEY_TYPE_MAINT_DRIVE_TIME                       @"Maintenance counter (Drive time)"
#define KEY_TYPE_MAINT_NUM_FEED_LINE_INTEGRATION        @"Maintenance counter (Paper feed (integrated))"
#define KEY_TYPE_MAINT_NUM_HEAD_ACTIVE_INTEGRATION      @"Maintenance counter (head activation (integrated))"
#define KEY_TYPE_MAINT_DRIVE_TIME_INTEGRATION           @"Maintenance counter (Drive time (integrated))"
#define KEY_TYPE_HFONT_24_CHECKSUM                      @"1-byte 24-dot font ID (Checksum)"
#define KEY_TYPE_HFONT_24_ID                            @"1-byte 24-dot font ID (ID)"
#define KEY_TYPE_HFONT_24_INT_CHAR                      @"1-byte 24-dot font ID (International Character)"
#define KEY_TYPE_HFONT_16_CHECKSUM                      @"1-byte 16-dot font ID (Checksum)"
#define KEY_TYPE_HFONT_16_ID                            @"1-byte 16-dot font ID (ID)"
#define KEY_TYPE_HFONT_16_INT_CHAR                      @"1-byte 16-dot font ID (International Character)"
#define KEY_TYPE_FFONT_LANG                             @"2-byte font ID (Language)"
#define KEY_TYPE_FFONT_STANDARD                         @"2-byte font ID (Standard)"
#define KEY_TYPE_FFONT_COMPANY                          @"2-byte font ID (Company name)"
#define KEY_TYPE_FFONT_CHECKSUM                         @"2-byte font ID (Checksum)"
#define KEY_TYPE_FFONT_DATA_SIZE                        @"2-byte font ID (Data size)"
#define KEY_TYPE_FFONT_ROM_ID                           @"2-byte font ID (ROMID)"

#define KEY_TYPE_TEXT                                   @"KEY_TYPE_TEXT"
#define KEY_TYPE_FONT                                   @"KEY_TYPE_FONT"
#define KEY_TYPE_SCALE                                  @"KEY_TYPE_SCALE"
#define KEY_TYPE_UNDERLINE                              @"KEY_TYPE_UNDERLINE"
#define KEY_TYPE_BOLD                                   @"KEY_TYPE_BOLD"
#define KEY_TYPE_REVERSE                                @"KEY_TYPE_REVERSE"
#define KEY_TYPE_ROTATION                               @"KEY_TYPE_ROTATION"

#define TEXT_TEXT_SECTION                               @"Text"
#define TEXT_FONT_SECTION                               @"Font"
#define TEXT_SCALE_SECTION                              @"Scale"
#define TEXT_UNDERLINE_SECTION                          @"Underline"
#define TEXT_BOLD_SECTION                               @"Bold"
#define TEXT_REVERSE_SECTION                            @"Reverse"
#define TEXT_ROTATION_SECTION                           @"Rotation"

#define TEXT_FONT_A                                     @"Font A"
#define TEXT_FONT_B                                     @"Font B"

#define TEXT_SCALE_1                                    @"1 x 1"
#define TEXT_SCALE_2                                    @"2 x 2"
#define TEXT_SCALE_3                                    @"3 x 3"
#define TEXT_SCALE_4                                    @"4 x 4"
#define TEXT_SCALE_5                                    @"5 x 5"
#define TEXT_SCALE_6                                    @"6 x 6"
#define TEXT_SCALE_7                                    @"7 x 7"
#define TEXT_SCALE_8                                    @"8 x 8"

#define TEXT_UNDERLINE_NONE                             @"None"
#define TEXT_UNDERLINE_1DOT                             @"1-dot underline"
#define TEXT_UNDERLINE_2DOT                             @"2-dot underline"

#define TEXT_BOLD_OFF                                   @"OFF"
#define TEXT_BOLD_ON                                    @"ON"

#define TEXT_REVERSE_OFF                                @"OFF"
#define TEXT_REVERSE_ON                                 @"ON"

#define TEXT_ROTATION_NONE                              @"None"
#define TEXT_ROTATION_90_TO_RIGHT                       @"Right 90"
#define TEXT_ROTATION_180                               @"Rotate 180"
#define TEXT_ROTATION_90_TO_LEFT                        @"Left 90"

#define KEY_TYPE_PDF_START_INDEX                        @"KEY_TYPE_PDF_START_INDEX"
#define KEY_TYPE_PDF_END_INDEX                          @"KEY_TYPE_PDF_END_INDEX"
#define KEY_TYPE_PDF_ROTATION                           @"KEY_TYPE_PDF_ROTATION"
#define KEY_TYPE_PDF_WIDTH                              @"KEY_TYPE_PDF_WIDTH"
#define KEY_TYPE_PDF_BOTTOM_MARGIN                      @"KEY_TYPE_PDF_BOTTOM_MARGIN"
#define KEY_TYPE_PDF_DITHERING                          @"KEY_TYPE_PDF_DITHERING"

#define PDF_PAGES_SECTION                               @"Pages to print"
#define PDF_ROTATION_SECTION                            @"Rotation"
#define PDF_WIDTH_SECTION                               @"Width"
#define PDF_BOTTOM_MARGIN_SECTION                       @"Bottom Margin"
#define PDF_DITHERING_SECTION                           @"Dithering"

#define PDF_START_INDEX_TITLE                           @"Start Index"
#define PDF_END_INDEX_TITLE                             @"End Index"

#define PDF_ROTATION_NONE                               @"None"
#define PDF_ROTATION_180                                @"Rotate 180"

#define PDF_DITHERING_DISABLE                           @"Disabled"
#define PDF_DITHERING_ERROR_DIFFUSION                   @"Error Diffusion"

#define KEY_TYPE_BARCODE_TYPE                           @"KEY_TYPE_BARCODE_TYPE"
#define KEY_TYPE_BARCODE_DATA                           @"KEY_TYPE_BARCODE_DATA"
#define KEY_TYPE_BARCODE_MODULE_WIDTH                   @"KEY_TYPE_BARCODE_MODULE_WIDTH"
#define KEY_TYPE_BARCODE_HEIGHT                         @"KEY_TYPE_BARCODE_HEIGHT"
#define KEY_TYPE_BARCODE_HRI_SETTING                    @"KEY_TYPE_BARCODE_HRI_SETTING"
#define KEY_TYPE_BARCODE_NW_RATIO                       @"KEY_TYPE_BARCODE_NW_RATIO"

#define BARCODE_TYPE_SECTION                            @"Barcode Type"
#define BARCODE_DATA_SECTION                            @"Data"
#define BARCODE_MODULE_WIDTH_SECTION                    @"Module Width[dot]"
#define BARCODE_HEIGHT_SECTION                          @"Barcode Height[dot]"
#define BARCODE_HRI_SETTING_SECTION                     @"HRI Setting"
#define BARCODE_NW_RATIO_SECTION                        @"N:W Ratio"

#define BARCODE_TYPE_UPC_A                              @"UPC-A"
#define BARCODE_TYPE_UPC_E                              @"UPC-E"
#define BARCODE_TYPE_JAN13                              @"JAN13"
#define BARCODE_TYPE_JAN8                               @"JAN8"
#define BARCODE_TYPE_CODE39                             @"CODE39"
#define BARCODE_TYPE_ITF                                @"ITF"
#define BARCODE_TYPE_CODABAR                            @"CODABAR"
#define BARCODE_TYPE_CODE128                            @"CODE128"
#define BARCODE_TYPE_CODE93                             @"CODE93"
#define BARCODE_TYPE_JAN13_ADDON2                       @"JAN13 add-on 2"
#define BARCODE_TYPE_JAN13_ADDON5                       @"JAN13 add-on 5"
#define BARCODE_TYPE_GS1_OMNI_DIRECTIONAL               @"GS1 Databar Omni-directional"
#define BARCODE_TYPE_GS1_TRUNCATED                      @"GS1 Databar Truncated"
#define BARCODE_TYPE_GS1_LIMITED                        @"GS1 Databar Limited"
#define BARCODE_TYPE_GS1_EXPANDED                       @"GS1 Databar Expanded"

#define BARCODE_MODULE_WIDTH_2                          @"2"
#define BARCODE_MODULE_WIDTH_3                          @"3"
#define BARCODE_MODULE_WIDTH_4                          @"4"
#define BARCODE_MODULE_WIDTH_5                          @"5"
#define BARCODE_MODULE_WIDTH_6                          @"6"

#define BARCODE_HRI_SETTING_NONE                        @"None"
#define BARCODE_HRI_SETTING_TOP_FONT_A                  @"Over barcode(Font A)"
#define BARCODE_HRI_SETTING_BOTTOM_FONT_A               @"Under barcode(Font A)"
#define BARCODE_HRI_SETTING_FONT_A                      @"Over and Under barcode(Font A)"
#define BARCODE_HRI_SETTING_TOP_FONT_B                  @"Over barcode(Font B)"
#define BARCODE_HRI_SETTING_BOTTOM_FONT_B               @"Under barcode(Font B)"
#define BARCODE_HRI_SETTING_FONT_B                      @"Over and Under barcode(Font B)"

#define BARCODE_NW_RATIO_1TO2                           @"1:2"
#define BARCODE_NW_RATIO_1TO2_5                         @"1:2.5"
#define BARCODE_NW_RATIO_1TO3                           @"1:3"

#define KEY_TYPE_2D_BARCODE_TYPE                        @"KEY_TYPE_2D_BARCODE_TYPE"
#define KEY_TYPE_2D_BARCODE_MODE                        @"KEY_TYPE_2D_BARCODE_MODE"
#define KEY_TYPE_2D_BARCODE_MODULE_SIZE                 @"KEY_TYPE_2D_BARCODE_MODULE_SIZE"
#define KEY_TYPE_2D_BARCODE_ERROR_CORRECT               @"KEY_TYPE_2D_BARCODE_ERROR_CORRECT"
#define KEY_TYPE_2D_BARCODE_DATA                        @"KEY_TYPE_2D_BARCODE_DATA"
#define KEY_TYPE_2D_BARCODE_MODULE_HEIGHT               @"KEY_TYPE_2D_BARCODE_MODULE_HEIGHT"
#define KEY_TYPE_2D_BARCODE_COLUMN                      @"KEY_TYPE_2D_BARCODE_COLUMN"
#define KEY_TYPE_2D_BARCODE_ROW                         @"KEY_TYPE_2D_BARCODE_ROW"

#define TWO_DIMENSION_BARCODE_TYPE_SECTION              @"2DCode Type"
#define TWO_DIMENSION_BARCODE_DATA_SECTION              @"Data"
#define TWO_DIMENSION_BARCODE_MODE_SECTION              @"Mode"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_SECTION       @"Module Size"
#define TWO_DIMENSION_BARCODE_MODULE_HEIGHT_SECTION     @"Module Height[dot]"
#define TWO_DIMENSION_BARCODE_COLUMN_SECTION            @"Column"
#define TWO_DIMENSION_BARCODE_ROW_SECTION               @"Row"
#define TWO_DIMENSION_BARCODE_ERROR_CORRECT_SECTION     @"Error Correct"

#define TWO_DIMENSION_BARCODE_TYPE_QR_CODE              @"QR Code"
#define TWO_DIMENSION_BARCODE_TYPE_PDF417               @"PDF417"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX               @"Data Matrix"
#define TWO_DIMENSION_BARCODE_MAXI_CODE                 @"MaxiCode"
#define TWO_DIMENSION_BARCODE_GS1_STACKED               @"GS1 Databar Stacked"
#define TWO_DIMENSION_BARCODE_GS1_OMNI_DIRECTIONAL      @"GS1 Databar Stacked Omni-directional"
#define TWO_DIMENSION_BARCODE_GS1_EXPANDED_STACKED      @"GS1 Databar Expanded Stacked"

#define TWO_DIMENSION_BARCODE_QR_CODE_MODEL_1           @"Model 1"
#define TWO_DIMENSION_BARCODE_QR_CODE_MODEL_2           @"Model 2"

#define TWO_DIMENSION_BARCODE_PDF417_MODE_STANDARD      @"Standard"
#define TWO_DIMENSION_BARCODE_PDF417_MODE_COMPACT       @"Compact"

#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_AUTO     @"Auto"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_10x10    @"10x10"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_12x12    @"12x12"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_14x14    @"14x14"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_16x16    @"16x16"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_18x18    @"18x18"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_20x20    @"20x20"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_22x22    @"22x22"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_24x24    @"24x24"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_26x26    @"26x26"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_32x32    @"32x32"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_36x36    @"36x36"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_40x40    @"40x40"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_44x44    @"44x44"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_48x48    @"48x48"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_52x52    @"52x52"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_64x64    @"64x64"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_72x72    @"72x72"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_80x80    @"80x80"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_88x88    @"88x88"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_96x96    @"96x96"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_104x104  @"104x104"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_120x120  @"120x120"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_132x132  @"132x132"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_144x144  @"144x144"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_8x18     @"8x18"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_8x32     @"8x32"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_12x26    @"12x26"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_12x36    @"12x36"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_16x36    @"16x36"
#define TWO_DIMENSION_BARCODE_DATA_MATRIX_MODE_16x48    @"16x48"

#define TWO_DIMENSION_BARCODE_MAXI_CODE_MODE_2          @"Mode2"
#define TWO_DIMENSION_BARCODE_MAXI_CODE_MODE_3          @"Mode3"
#define TWO_DIMENSION_BARCODE_MAXI_CODE_MODE_4          @"Mode4"
#define TWO_DIMENSION_BARCODE_MAXI_CODE_MODE_5          @"Mode5"

#define TWO_DIMENSION_BARCODE_MODE_NONE                 @"None"

#define TWO_DIMENSION_BARCODE_MODULE_SIZE_DEFAULT       @"Default"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_2             @"2 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_3             @"3 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_4             @"4 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_5             @"5 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_6             @"6 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_7             @"7 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_8             @"8 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_9             @"9 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_10            @"10 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_11            @"11 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_12            @"12 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_13            @"13 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_14            @"14 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_15            @"15 dot"
#define TWO_DIMENSION_BARCODE_MODULE_SIZE_16            @"16 dot"

#define TWO_DIMENSION_BARCODE_QR_ERROR_CORRECT_L        @"L"
#define TWO_DIMENSION_BARCODE_QR_ERROR_CORRECT_M        @"M"
#define TWO_DIMENSION_BARCODE_QR_ERROR_CORRECT_Q        @"Q"
#define TWO_DIMENSION_BARCODE_QR_ERROR_CORRECT_H        @"H"

#define TWO_DIMENSION_BARCODE_PDF417_ERROR_CORRECT_0    @"0"
#define TWO_DIMENSION_BARCODE_PDF417_ERROR_CORRECT_1    @"1"
#define TWO_DIMENSION_BARCODE_PDF417_ERROR_CORRECT_2    @"2"
#define TWO_DIMENSION_BARCODE_PDF417_ERROR_CORRECT_3    @"3"
#define TWO_DIMENSION_BARCODE_PDF417_ERROR_CORRECT_4    @"4"
#define TWO_DIMENSION_BARCODE_PDF417_ERROR_CORRECT_5    @"5"
#define TWO_DIMENSION_BARCODE_PDF417_ERROR_CORRECT_6    @"6"
#define TWO_DIMENSION_BARCODE_PDF417_ERROR_CORRECT_7    @"7"
#define TWO_DIMENSION_BARCODE_PDF417_ERROR_CORRECT_8    @"8"
#define TWO_DIMENSION_BARCODE_ERROR_CORRECT_NONE        @"None"

#define KEY_TYPE_SOCKET_KEEP_TIME                       @"KEY_TYPE_SOCKET_KEEP_TIME"
#define KEY_TYPE_WRITE_TIMEOUT                          @"KEY_TYPE_WRITE_TIMEOUT"
#define KEY_TYPE_RESPONSE_TIMEOUT                       @"KEY_TYPE_RESPONSE_TIMEOUT"
#define KEY_TYPE_CODEPAGE                               @"KEY_TYPE_CODEPAGE"
#define KEY_TYPE_INTERNATIONAL_CHARACTER                @"KEY_TYPE_INTERNATIONAL_CHARACTER"
#define KEY_TYPE_LOG_FILE_SIZE                          @"KEY_TYPE_LOG_FILE_SIZE"

#define SETTINGS_GET_VERSIOM_SECTION                    @"Version"
#define SETTINGS_SOCKET_KEEP_TIME_SECTION               @"Socket Keeping time(s)"
#define SETTINGS_WRITE_TIMEOUT_SECTION                  @"Write timeout(ms)"
#define SETTINGS_RESPONSE_TIMEOUT_SECTION               @"Response timeout(ms)"
#define SETTINGS_CODEPAGE_SECTION                       @"Code page"
#define SETTINGS_INTERNATIONAL_CHARACTER_SECTION        @"International character"
#define SETTINGS_LOG_FILE_SIZE_SECTION                  @"Log File Size"

#define SETTINGS_INTERNATIONAL_CHARACTER_USA            @"USA"
#define SETTINGS_INTERNATIONAL_CHARACTER_FRANCE         @"France"
#define SETTINGS_INTERNATIONAL_CHARACTER_GERMANY        @"Germany"
#define SETTINGS_INTERNATIONAL_CHARACTER_UNITED_KINGDOM @"United Kingdom"
#define SETTINGS_INTERNATIONAL_CHARACTER_DENMARK_1      @"Denmark I"
#define SETTINGS_INTERNATIONAL_CHARACTER_SWEDEN         @"Sweden"
#define SETTINGS_INTERNATIONAL_CHARACTER_ITALY          @"Italy"
#define SETTINGS_INTERNATIONAL_CHARACTER_SPAIN_1        @"Spain I"
#define SETTINGS_INTERNATIONAL_CHARACTER_JAPAN          @"Japan"
#define SETTINGS_INTERNATIONAL_CHARACTER_NORWAY         @"Norway"
#define SETTINGS_INTERNATIONAL_CHARACTER_DENMARK_2      @"Denmark II"
#define SETTINGS_INTERNATIONAL_CHARACTER_SPAIN_2        @"Spain II"
#define SETTINGS_INTERNATIONAL_CHARACTER_LATIN_AMERICA  @"Latin America"
#define SETTINGS_INTERNATIONAL_CHARACTER_ARABIA         @"Arabia"

#define SETTINGS_CODEPAGE_437                           @"Codepage 437"
#define SETTINGS_CODEPAGE_KATAKANA                      @"Codepage Katakana"
#define SETTINGS_CODEPAGE_850                           @"Codepage 850"
#define SETTINGS_CODEPAGE_860                           @"Codepage 860"
#define SETTINGS_CODEPAGE_863                           @"Codepage 863"
#define SETTINGS_CODEPAGE_865                           @"Codepage 865"
#define SETTINGS_CODEPAGE_857                           @"Codepage 857"
#define SETTINGS_CODEPAGE_737                           @"Codepage 737"
#define SETTINGS_CODEPAGE_1252                          @"Codepage 1252"
#define SETTINGS_CODEPAGE_866                           @"Codepage 866"
#define SETTINGS_CODEPAGE_852                           @"Codepage 852"
#define SETTINGS_CODEPAGE_858                           @"Codepage 858"
#define SETTINGS_CODEPAGE_855                           @"Codepage 855"
#define SETTINGS_CODEPAGE_864                           @"Codepage 864"
#define SETTINGS_CODEPAGE_1250                          @"Codepage 1250"
#define SETTINGS_CODEPAGE_1251                          @"Codepage 1251"
#define SETTINGS_CODEPAGE_1253                          @"Codepage 1253"
#define SETTINGS_CODEPAGE_1254                          @"Codepage 1254"

#define SETTINGS_LOG_FILE_SIZE_1M                       @"1M Byte"
#define SETTINGS_LOG_FILE_SIZE_5M                       @"5M Byte"
#define SETTINGS_LOG_FILE_SIZE_10M                      @"10M Byte"
#define SETTINGS_LOG_FILE_SIZE_50M                      @"50M Byte"

@interface ValueManager : NSObject

+ (NSString *)getCurrentStringValue:(NSString *)key;
+ (void)setCurrentStringValue:(NSString *)key value:(NSString *)value;

+ (NSInteger)convert2DBarcodeTypeStringToInt:(NSString *)type;
+ (NSInteger)convert2DBarcodeModeStringToInt:(NSString *)mode;
+ (NSInteger)convert2DBarcodeModuleSizeStringToInt:(NSString *)moduleSize;
+ (NSInteger)convert2DBarcodeErrorCorrectStringToInt:(NSString *)errorCorrect;
+ (NSInteger)convertBarcodeTypeStringToInt:(NSString *)type;
+ (NSInteger)convertBarcodeModuleWidthStringToInt:(NSString *)width;
+ (NSInteger)convertBarcodeHriSettingStringToInt:(NSString *)hri;
+ (NSInteger)convertBarcodeNwRatioStringToInt:(NSString *)nwRatio;
+ (NSInteger)convertFontStringToInt:(NSString *)font;
+ (NSInteger)convertScaleStringToInt:(NSString *)scale;
+ (NSInteger)convertUnderlineStringToInt:(NSString *)underline;
+ (NSInteger)convertBoldStringToInt:(NSString *)bold;
+ (NSInteger)convertReverseStringToInt:(NSString *)reverse;
+ (NSInteger)convertRotationStringToInt:(NSString *)rotation;

@end

NS_ASSUME_NONNULL_END
