////////////////////////////////////////////////////////////////////////////////
// Copyright (c) Datacard Corporation.  All Rights Reserved.
//
// single-wire smartcard strings.
//
// The names of many of these string constants are prefixed with SMARTCARD
// to avoid collisions with SCARD definitions in WinSmCrd.h in Windows SDK.
////////////////////////////////////////////////////////////////////////////////
#pragma once

namespace dxp01sdk
{
    const WCHAR SMARTCARD_PROTOCOL_CONTACTLESS[] = L"SCARD_PROTOCOL_CL";
    const WCHAR SMARTCARD_PROTOCOL_RAW[] = L"SCARD_PROTOCOL_RAW";
    const WCHAR SMARTCARD_PROTOCOL_T0[] = L"SCARD_PROTOCOL_T0";
    const WCHAR SMARTCARD_PROTOCOL_T0_OR_T1[] = L"SCARD_PROTOCOL_T0_OR_T1"; // printer returns this for contact
    const WCHAR SMARTCARD_PROTOCOL_T1[] = L"SCARD_PROTOCOL_T1";

    const WCHAR SMARTCARD_DISCONNECT_LEAVE[] = L"SCARD_LEAVE_CARD";
    const WCHAR SMARTCARD_DISCONNECT_RESET[] = L"SCARD_RESET_CARD";
    const WCHAR SMARTCARD_DISCONNECT_UNPOWER[] = L"SCARD_UNPOWER_CARD";

    const WCHAR SMARTCARD_STATE_ABSENT[] = L"SCARD_ABSENT";
    const WCHAR SMARTCARD_STATE_NEGOTIABLE[] = L"SCARD_NEGOTIABLE";
    const WCHAR SMARTCARD_STATE_POWERED[] = L"SCARD_POWERED";
    const WCHAR SMARTCARD_STATE_PRESENT[] = L"SCARD_PRESENT";
    const WCHAR SMARTCARD_STATE_SPECIFIC[] = L"SCARD_SPECIFIC";
    const WCHAR SMARTCARD_STATE_SWALLOWED[] = L"SCARD_SWALLOWED";
    const WCHAR SMARTCARD_STATE_UNKNOWN[] = L"SCARD_UNKNOWN";

    const WCHAR SMARTCARD_ATTR_VENDOR_NAME[] = L"SCARD_ATTR_VENDOR_NAME";
    const WCHAR SMARTCARD_ATTR_VENDOR_IFD_TYPE[] = L"SCARD_ATTR_VENDOR_IFD_TYPE";
    const WCHAR SMARTCARD_ATTR_VENDOR_IFD_VERSION[] = L"SCARD_ATTR_VENDOR_IFD_VERSION";
    const WCHAR SMARTCARD_ATTR_VENDOR_IFD_SERIAL_NO[] = L"SCARD_ATTR_VENDOR_IFD_SERIAL_NO";
    const WCHAR SMARTCARD_ATTR_ATR_STRING[] = L"SCARD_ATTR_ATR_STRING";
    const WCHAR SMARTCARD_ATTR_CHANNEL_ID[] = L"SCARD_ATTR_CHANNEL_ID";
    const WCHAR SMARTCARD_ATTR_CHARACTERISTICS[] = L"SCARD_ATTR_CHARACTERISTICS";
    const WCHAR SMARTCARD_ATTR_CURRENT_BWT[] = L"SCARD_ATTR_CURRENT_BWT";
    const WCHAR SMARTCARD_ATTR_CURRENT_CLK[] = L"SCARD_ATTR_CURRENT_CLK";
    const WCHAR SMARTCARD_ATTR_CURRENT_CWT[] = L"SCARD_ATTR_CURRENT_CWT";
    const WCHAR SMARTCARD_ATTR_CURRENT_D[] = L"SCARD_ATTR_CURRENT_D";
    const WCHAR SMARTCARD_ATTR_CURRENT_EBC_ENCODING[] = L"SCARD_ATTR_CURRENT_EBC_ENCODING";
    const WCHAR SMARTCARD_ATTR_CURRENT_F[] = L"SCARD_ATTR_CURRENT_F";
    const WCHAR SMARTCARD_ATTR_CURRENT_IFSC[] = L"SCARD_ATTR_CURRENT_IFSC";
    const WCHAR SMARTCARD_ATTR_CURRENT_IFSD[] = L"SCARD_ATTR_CURRENT_IFSD";
    const WCHAR SMARTCARD_ATTR_CURRENT_IO_STATE[] = L"SCARD_ATTR_CURRENT_IO_STATE";
    const WCHAR SMARTCARD_ATTR_CURRENT_N[] = L"SCARD_ATTR_CURRENT_N";
    const WCHAR SMARTCARD_ATTR_CURRENT_PROTOCOL_TYPE[] = L"SCARD_ATTR_CURRENT_PROTOCOL_TYPE";
    const WCHAR SMARTCARD_ATTR_CURRENT_W[] = L"SCARD_ATTR_CURRENT_W";
    const WCHAR SMARTCARD_ATTR_DEFAULT_CLK[] = L"SCARD_ATTR_DEFAULT_CLK";
    const WCHAR SMARTCARD_ATTR_DEFAULT_DATA_RATE[] = L"SCARD_ATTR_DEFAULT_DATA_RATE";
    const WCHAR SMARTCARD_ATTR_DEVICE_IN_USE[] = L"SCARD_ATTR_DEVICE_IN_USE";
    const WCHAR SMARTCARD_ATTR_DEVICE_SYSTEM_NAME[] = L"SCARD_ATTR_DEVICE_SYSTEM_NAME";
    const WCHAR SMARTCARD_ATTR_DEVICE_UNIT[] = L"SCARD_ATTR_DEVICE_UNIT";
    const WCHAR SMARTCARD_ATTR_ESC_AUTHREQUEST[] = L"SCARD_ATTR_ESC_AUTHREQUEST";
    const WCHAR SMARTCARD_ATTR_ESC_CANCEL[] = L"SCARD_ATTR_ESC_CANCEL";
    const WCHAR SMARTCARD_ATTR_ESC_RESET[] = L"SCARD_ATTR_ESC_RESET";
    const WCHAR SMARTCARD_ATTR_EXTENDED_BWT[] = L"SCARD_ATTR_EXTENDED_BWT";
    const WCHAR SMARTCARD_ATTR_ICC_INTERFACE_STATUS[] = L"SCARD_ATTR_ICC_INTERFACE_STATUS";
    const WCHAR SMARTCARD_ATTR_ICC_PRESENCE[] = L"SCARD_ATTR_ICC_PRESENCE";
    const WCHAR SMARTCARD_ATTR_ICC_TYPE_PER_ATR[] = L"SCARD_ATTR_ICC_TYPE_PER_ATR";
    const WCHAR SMARTCARD_ATTR_MAX_CLK[] = L"SCARD_ATTR_MAX_CLK";
    const WCHAR SMARTCARD_ATTR_MAX_DATA_RATE[] = L"SCARD_ATTR_MAX_DATA_RATE";
    const WCHAR SMARTCARD_ATTR_MAX_IFSD[] = L"SCARD_ATTR_MAX_IFSD";
    const WCHAR SMARTCARD_ATTR_MAXINPUT[] = L"SCARD_ATTR_MAXINPUT";
    const WCHAR SMARTCARD_ATTR_POWER_MGMT_SUPPORT[] = L"SCARD_ATTR_POWER_MGMT_SUPPORT";
    const WCHAR SMARTCARD_ATTR_SUPRESS_T1_IFS_REQUEST[] = L"SCARD_ATTR_SUPRESS_T1_IFS_REQUEST";
    const WCHAR SMARTCARD_ATTR_USER_AUTH_INPUT_DEVICE[] = L"SCARD_ATTR_USER_AUTH_INPUT_DEVICE";
    const WCHAR SMARTCARD_ATTR_USER_TO_CARD_AUTH_DEVICE[] = L"SCARD_ATTR_USER_TO_CARD_AUTH_DEVICE";
    const WCHAR SMARTCARD_ATTR_DEVICE_FRIENDLY_NAME[] = L"SCARD_ATTR_DEVICE_FRIENDLY_NAME";

    const WCHAR SMARTCARD_ERR_E_BAD_SEEK[] = L"SCARD_E_BAD_SEEK";
    const WCHAR SMARTCARD_ERR_E_CANCELLED[] = L"SCARD_E_CANCELLED";
    const WCHAR SMARTCARD_ERR_E_CANT_DISPOSE[] = L"SCARD_E_CANT_DISPOSE";
    const WCHAR SMARTCARD_ERR_E_CARD_UNSUPPORTED[] = L"SCARD_E_CARD_UNSUPPORTED";
    const WCHAR SMARTCARD_ERR_E_CERTIFICATE_UNAVAILABLE[] = L"SCARD_E_CERTIFICATE_UNAVAILABLE";
    const WCHAR SMARTCARD_ERR_E_COMM_DATA_LOST[] = L"SCARD_E_COMM_DATA_LOST";
    const WCHAR SMARTCARD_ERR_E_DIR_NOT_FOUND[] = L"SCARD_E_DIR_NOT_FOUND";
    const WCHAR SMARTCARD_ERR_E_DUPLICATE_READER[] = L"SCARD_E_DUPLICATE_READER";
    const WCHAR SMARTCARD_ERR_E_FILE_NOT_FOUND[] = L"SCARD_E_FILE_NOT_FOUND";
    const WCHAR SMARTCARD_ERR_E_ICC_CREATEORDER[] = L"SCARD_E_ICC_CREATEORDER";
    const WCHAR SMARTCARD_ERR_E_ICC_INSTALLATION[] = L"SCARD_E_ICC_INSTALLATION";
    const WCHAR SMARTCARD_ERR_E_INSUFFICIENT_BUFFER[] = L"SCARD_E_INSUFFICIENT_BUFFER";
    const WCHAR SMARTCARD_ERR_E_INVALID_ATR[] = L"SCARD_E_INVALID_ATR";
    const WCHAR SMARTCARD_ERR_E_INVALID_CHV[] = L"SCARD_E_INVALID_CHV";
    const WCHAR SMARTCARD_ERR_E_INVALID_HANDLE[] = L"SCARD_E_INVALID_HANDLE";
    const WCHAR SMARTCARD_ERR_E_INVALID_PARAMETER[] = L"SCARD_E_INVALID_PARAMETER";
    const WCHAR SMARTCARD_ERR_E_INVALID_TARGET[] = L"SCARD_E_INVALID_TARGET";
    const WCHAR SMARTCARD_ERR_E_INVALID_VALUE[] = L"SCARD_E_INVALID_VALUE";
    const WCHAR SMARTCARD_ERR_E_NO_ACCESS[] = L"SCARD_E_NO_ACCESS";
    const WCHAR SMARTCARD_ERR_E_NO_DIR[] = L"SCARD_E_NO_DIR";
    const WCHAR SMARTCARD_ERR_E_NO_FILE[] = L"SCARD_E_NO_FILE";
    const WCHAR SMARTCARD_ERR_E_NO_KEY_CONTAINER[] = L"SCARD_E_NO_KEY_CONTAINER";
    const WCHAR SMARTCARD_ERR_E_NO_MEMORY[] = L"SCARD_E_NO_MEMORY";
    const WCHAR SMARTCARD_ERR_E_NO_READERS_AVAILABLE[] = L"SCARD_E_NO_READERS_AVAILABLE";
    const WCHAR SMARTCARD_ERR_E_NO_SERVICE[] = L"SCARD_E_NO_SERVICE";
    const WCHAR SMARTCARD_ERR_E_NO_SMARTCARD[] = L"SCARD_E_NO_SMARTCARD";
    const WCHAR SMARTCARD_ERR_E_NO_SUCH_CERTIFICATE[] = L"SCARD_E_NO_SUCH_CERTIFICATE";
    const WCHAR SMARTCARD_ERR_E_NOT_READY[] = L"SCARD_E_NOT_READY";
    const WCHAR SMARTCARD_ERR_E_NOT_TRANSACTED[] = L"SCARD_E_NOT_TRANSACTED";
    const WCHAR SMARTCARD_ERR_E_PCI_TOO_SMALL[] = L"SCARD_E_PCI_TOO_SMALL";
    const WCHAR SMARTCARD_ERR_E_PROTO_MISMATCH[] = L"SCARD_E_PROTO_MISMATCH";
    const WCHAR SMARTCARD_ERR_E_READER_UNAVAILABLE[] = L"SCARD_E_READER_UNAVAILABLE";
    const WCHAR SMARTCARD_ERR_E_READER_UNSUPPORTED[] = L"SCARD_E_READER_UNSUPPORTED";
    const WCHAR SMARTCARD_ERR_E_SERVER_TOO_BUSY[] = L"SCARD_E_SERVER_TOO_BUSY";
    const WCHAR SMARTCARD_ERR_E_SERVICE_STOPPED[] = L"SCARD_E_SERVICE_STOPPED";
    const WCHAR SMARTCARD_ERR_E_SHARING_VIOLATION[] = L"SCARD_E_SHARING_VIOLATION";
    const WCHAR SMARTCARD_ERR_E_SYSTEM_CANCELLED[] = L"SCARD_E_SYSTEM_CANCELLED";
    const WCHAR SMARTCARD_ERR_E_TIMEOUT[] = L"SCARD_E_TIMEOUT";
    const WCHAR SMARTCARD_ERR_E_UNEXPECTED[] = L"SCARD_E_UNEXPECTED";
    const WCHAR SMARTCARD_ERR_E_UNKNOWN_CARD[] = L"SCARD_E_UNKNOWN_CARD";
    const WCHAR SMARTCARD_ERR_E_UNKNOWN_READER[] = L"SCARD_E_UNKNOWN_READER";
    const WCHAR SMARTCARD_ERR_E_UNKNOWN_RES_MNG[] = L"SCARD_E_UNKNOWN_RES_MNG";
    const WCHAR SMARTCARD_ERR_E_UNSUPPORTED_FEATURE[] = L"SCARD_E_UNSUPPORTED_FEATURE";
    const WCHAR SMARTCARD_ERR_E_WRITE_TOO_MANY[] = L"SCARD_E_WRITE_TOO_MANY";
    const WCHAR SMARTCARD_ERR_F_COMM_ERROR[] = L"SCARD_F_COMM_ERROR";
    const WCHAR SMARTCARD_ERR_F_INTERNAL_ERROR[] = L"SCARD_F_INTERNAL_ERROR";
    const WCHAR SMARTCARD_ERR_F_UNKNOWN_ERROR[] = L"SCARD_F_UNKNOWN_ERROR";
    const WCHAR SMARTCARD_ERR_F_WAITED_TOO_LONG[] = L"SCARD_F_WAITED_TOO_LONG";
    const WCHAR SMARTCARD_ERR_P_SHUTDOWN[] = L"SCARD_P_SHUTDOWN";
    const WCHAR SMARTCARD_ERR_S_SUCCESS[] = L"SCARD_S_SUCCESS";
    const WCHAR SMARTCARD_ERR_W_CANCELLED_BY_USER[] = L"SCARD_W_CANCELLED_BY_USER";
    const WCHAR SMARTCARD_ERR_W_CARD_NOT_AUTHENTICATED[] = L"SCARD_W_CARD_NOT_AUTHENTICATED";
    const WCHAR SMARTCARD_ERR_W_CHV_BLOCKED[] = L"SCARD_W_CHV_BLOCKED";
    const WCHAR SMARTCARD_ERR_W_EOF[] = L"SCARD_W_EOF";
    const WCHAR SMARTCARD_ERR_W_REMOVED_CARD[] = L"SCARD_W_REMOVED_CARD";
    const WCHAR SMARTCARD_ERR_W_RESET_CARD[] = L"SCARD_W_RESET_CARD";
    const WCHAR SMARTCARD_ERR_W_SECURITY_VIOLATION[] = L"SCARD_W_SECURITY_VIOLATION";
    const WCHAR SMARTCARD_ERR_W_UNPOWERED_CARD[] = L"SCARD_W_UNPOWERED_CARD";
    const WCHAR SMARTCARD_ERR_W_UNRESPONSIVE_CARD[] = L"SCARD_W_UNRESPONSIVE_CARD";
    const WCHAR SMARTCARD_ERR_W_UNSUPPORTED_CARD[] = L"SCARD_W_UNSUPPORTED_CARD";
    const WCHAR SMARTCARD_ERR_W_WRONG_CHV[] = L"SCARD_W_WRONG_CHV";
}