File BradyPrintSdkSettings.h

File List > BradyPrintSdkSettings.h

Go to the documentation of this file

//(c) 2026 Brady Worldwide, Inc. All Rights Reserved
#pragma once

#include "BradyPrintSdkCore.h"

#ifdef __cplusplus
extern "C"
{
#endif
    typedef enum
    {
        PRINTER_FEATURE_CUT_OPTIONS = 0,            
        PRINTER_FEATURE_CUT_AFTER_SET = 1,          
        PRINTER_FEATURE_POST_PRINT_ACCESSORIES = 2, 
        PRINTER_FEATURE_RFID_ENCODING = 3,          
    } PrinterFeature;

    typedef enum
    {
        // String keys:
        PRINTER_SETTING_SERIAL_NUMBER,      
        PRINTER_SETTING_FIRMWARE_VERSION,   
        PRINTER_SETTING_SUPPLY_NAME,        
        // Int keys:
        PRINTER_SETTING_X_DPI,                   
        PRINTER_SETTING_Y_DPI,                   
        PRINTER_SETTING_SUPPLY_REMAINING_PERCENT,
        PRINTER_SETTING_SUPPLY_Y_NUMBER,         
        PRINTER_SETTING_SUPPLY_WIDTH,            
        PRINTER_SETTING_SUPPLY_HEIGHT,           
        // Enum keys:
        PRINTER_SETTING_POST_PRINT_ACCESSORY,  
        // Bool keys:
        PRINTER_SETTING_SUPPLY_IS_CONTINUOUS, 
        PRINTER_SETTING_SUPPLY_IS_VALID,      
        PRINTER_SETTING_IS_RFID_CAPABLE,      
        PRINTER_SETTING_SUPPLY_IS_RFID,       
        PRINTER_SETTING_SUPPLY_IS_SMART       
    } PrinterSettingKey;

    typedef enum
    {
        // String keys:
        JOB_SETTING_JOB_NAME,                 
        // Int keys:
        JOB_SETTING_NUMBER_OF_COPIES,         
        JOB_SETTING_CUT_AFTER_SET_LENGTH,     
        JOB_SETTING_PERF_AFTER_SET_LENGTH,    
        // Enum keys:
        JOB_SETTING_PAGE_ORIENTATION,         
        JOB_SETTING_CUTTER_MODE,              
        // Bool keys:
        JOB_SETTING_MIRROR_PRINT,             
        JOB_SETTING_APPEND_FILE_NAME_COUNTER, 
        JOB_SETTING_ROTATE_180,               
        JOB_SETTING_COLLATE,                  
    } JobSettingKey;

    BRADY_SDK_EXPORT BradySdkStatus RefreshPrinterSettings(
        PrinterHandle printer);

    BRADY_SDK_EXPORT BradySdkStatus CheckFeatureSupport(
        PrinterHandle printer, 
        PrinterFeature feature, 
        bool* isSupported);

    BRADY_SDK_EXPORT BradySdkStatus GetSupportedCutterModes(
        PrinterHandle printer,
        int* supportedModesMask);

    BRADY_SDK_EXPORT BradySdkStatus GetPrinterSettingString(
        PrinterHandle printer,
        PrinterSettingKey key,
        char* valueBuffer,
        size_t bufferSize,
        size_t* bytesCopied);

    BRADY_SDK_EXPORT BradySdkStatus GetPrinterSettingInt(
        PrinterHandle printer,
        PrinterSettingKey key,
        int* value);

    BRADY_SDK_EXPORT BradySdkStatus GetPrinterSettingEnum(
        PrinterHandle printer,
        PrinterSettingKey key,
        int* value);

    BRADY_SDK_EXPORT BradySdkStatus GetPrinterSettingBool(
        PrinterHandle printer,
        PrinterSettingKey key,
        bool* value);

    BRADY_SDK_EXPORT BradySdkStatus GetPrintJobSettingString(
        PrinterHandle printer,
        PrintJobHandle jobHandle,
        JobSettingKey key,
        char* valueBuffer,
        size_t bufferSize,
        size_t* bytesCopied);

    BRADY_SDK_EXPORT BradySdkStatus SetPrintJobSettingString(
        PrinterHandle printer,
        PrintJobHandle jobHandle,
        JobSettingKey key,
        const char* settingValue);

    BRADY_SDK_EXPORT BradySdkStatus GetPrintJobSettingInt(
        PrinterHandle printer,
        PrintJobHandle jobHandle,
        JobSettingKey key,
        int* value);

    BRADY_SDK_EXPORT BradySdkStatus SetPrintJobSettingInt(
        PrinterHandle printer,
        PrintJobHandle jobHandle,
        JobSettingKey key,
        int settingValue);

    BRADY_SDK_EXPORT BradySdkStatus GetPrintJobSettingEnum(
        PrinterHandle printer,
        PrintJobHandle jobHandle,
        JobSettingKey key,
        int* value);

    BRADY_SDK_EXPORT BradySdkStatus SetPrintJobSettingEnum(
        PrinterHandle printer,
        PrintJobHandle jobHandle,
        JobSettingKey key,
        int settingValue);

    BRADY_SDK_EXPORT BradySdkStatus GetPrintJobSettingBool(
        PrinterHandle printer,
        PrintJobHandle jobHandle,
        JobSettingKey key,
        bool* value);

    BRADY_SDK_EXPORT BradySdkStatus SetPrintJobSettingBool(
        PrinterHandle printer,
        PrintJobHandle jobHandle,
        JobSettingKey key,
        bool settingValue);

#ifdef __cplusplus
}
#endif