public static extern int viUsbControlIn(int vi, short bmRequestType, short bRequest, short wValue, short wIndex, short wLength, byte[] buf, out short retCnt);
#endregion
#region - Constants -------------------------------------------------------------
#region - Attributes ------------------------------------------------------------
public const int VI_ATTR_RSRC_CLASS = -1073807359;
public const int VI_ATTR_RSRC_NAME = -1073807358;
public const int VI_ATTR_RSRC_IMPL_VERSION = 1073676291;
public const int VI_ATTR_RSRC_LOCK_STATE = 1073676292;
public const int VI_ATTR_MAX_QUEUE_LENGTH = 1073676293;
public const int VI_ATTR_USER_DATA = 1073676295;
public const int VI_ATTR_FDC_CHNL = 1073676301;
public const int VI_ATTR_FDC_MODE = 1073676303;
public const int VI_ATTR_FDC_GEN_SIGNAL_EN = 1073676305;
public const int VI_ATTR_FDC_USE_PAIR = 1073676307;
public const int VI_ATTR_SEND_END_EN = 1073676310;
public const int VI_ATTR_TERMCHAR = 1073676312;
public const int VI_ATTR_TMO_VALUE = 1073676314;
public const int VI_ATTR_GPIB_READDR_EN = 1073676315;
public const int VI_ATTR_IO_PROT = 1073676316;
public const int VI_ATTR_DMA_ALLOW_EN = 1073676318;
public const int VI_ATTR_ASRL_BAUD = 1073676321;
public const int VI_ATTR_ASRL_DATA_BITS = 1073676322;
public const int VI_ATTR_ASRL_PARITY = 1073676323;
public const int VI_ATTR_ASRL_STOP_BITS = 1073676324;
public const int VI_ATTR_ASRL_FLOW_CNTRL = 1073676325;
public const int VI_ATTR_RD_BUF_OPER_MODE = 1073676330;
public const int VI_ATTR_RD_BUF_SIZE = 1073676331;
public const int VI_ATTR_WR_BUF_OPER_MODE = 1073676333;
public const int VI_ATTR_WR_BUF_SIZE = 1073676334;
public const int VI_ATTR_SUPPRESS_END_EN = 1073676342;
public const int VI_ATTR_TERMCHAR_EN = 1073676344;
public const int VI_ATTR_DEST_ACCESS_PRIV = 1073676345;
public const int VI_ATTR_DEST_BYTE_ORDER = 1073676346;
public const int VI_ATTR_SRC_ACCESS_PRIV = 1073676348;
public const int VI_ATTR_SRC_BYTE_ORDER = 1073676349;
public const int VI_ATTR_SRC_INCREMENT = 1073676352;
public const int VI_ATTR_DEST_INCREMENT = 1073676353;
public const int VI_ATTR_WIN_ACCESS_PRIV = 1073676357;
public const int VI_ATTR_WIN_BYTE_ORDER = 1073676359;
public const int VI_ATTR_GPIB_ATN_STATE = 1073676375;
public const int VI_ATTR_GPIB_ADDR_STATE = 1073676380;
public const int VI_ATTR_GPIB_CIC_STATE = 1073676382;
public const int VI_ATTR_GPIB_NDAC_STATE = 1073676386;
public const int VI_ATTR_GPIB_SRQ_STATE = 1073676391;
public const int VI_ATTR_GPIB_SYS_CNTRL_STATE = 1073676392;
public const int VI_ATTR_GPIB_HS488_CBL_LEN = 1073676393;
public const int VI_ATTR_CMDR_LA = 1073676395;
public const int VI_ATTR_VXI_DEV_CLASS = 1073676396;
public const int VI_ATTR_MAINFRAME_LA = 1073676400;
public const int VI_ATTR_MANF_NAME = -1073807246;
public const int VI_ATTR_MODEL_NAME = -1073807241;
public const int VI_ATTR_VXI_VME_INTR_STATUS = 1073676427;
public const int VI_ATTR_VXI_TRIG_STATUS = 1073676429;
public const int VI_ATTR_VXI_VME_SYSFAIL_STATE = 1073676436;
public const int VI_ATTR_WIN_BASE_ADDR = 1073676440;
public const int VI_ATTR_WIN_SIZE = 1073676442;
public const int VI_ATTR_ASRL_AVAIL_NUM = 1073676460;
public const int VI_ATTR_MEM_BASE = 1073676461;
public const int VI_ATTR_ASRL_CTS_STATE = 1073676462;
public const int VI_ATTR_ASRL_DCD_STATE = 1073676463;
public const int VI_ATTR_ASRL_DSR_STATE = 1073676465;
public const int VI_ATTR_ASRL_DTR_STATE = 1073676466;
public const int VI_ATTR_ASRL_END_IN = 1073676467;
public const int VI_ATTR_ASRL_END_OUT = 1073676468;
public const int VI_ATTR_ASRL_REPLACE_CHAR = 1073676478;
public const int VI_ATTR_ASRL_RI_STATE = 1073676479;
public const int VI_ATTR_ASRL_RTS_STATE = 1073676480;
public const int VI_ATTR_ASRL_XON_CHAR = 1073676481;
public const int VI_ATTR_ASRL_XOFF_CHAR = 1073676482;
public const int VI_ATTR_WIN_ACCESS = 1073676483;
public const int VI_ATTR_RM_SESSION = 1073676484;
public const int VI_ATTR_VXI_LA = 1073676501;
public const int VI_ATTR_MANF_ID = 1073676505;
public const int VI_ATTR_MEM_SIZE = 1073676509;
public const int VI_ATTR_MEM_SPACE = 1073676510;
public const int VI_ATTR_MODEL_CODE = 1073676511;
public const int VI_ATTR_SLOT = 1073676520;
public const int VI_ATTR_INTF_INST_NAME = -1073807127;
public const int VI_ATTR_IMMEDIATE_SERV = 1073676544;
public const int VI_ATTR_INTF_PARENT_NUM = 1073676545;
public const int VI_ATTR_RSRC_SPEC_VERSION = 1073676656;
public const int VI_ATTR_INTF_TYPE = 1073676657;
public const int VI_ATTR_GPIB_PRIMARY_ADDR = 1073676658;
public const int VI_ATTR_GPIB_SECONDARY_ADDR = 1073676659;
public const int VI_ATTR_RSRC_MANF_NAME = -1073806988;
public const int VI_ATTR_RSRC_MANF_ID = 1073676661;
public const int VI_ATTR_INTF_NUM = 1073676662;
public const int VI_ATTR_TRIG_ID = 1073676663;
public const int VI_ATTR_GPIB_REN_STATE = 1073676673;
public const int VI_ATTR_GPIB_UNADDR_EN = 1073676676;
public const int VI_ATTR_DEV_STATUS_BYTE = 1073676681;
public const int VI_ATTR_FILE_APPEND_EN = 1073676690;
public const int VI_ATTR_VXI_TRIG_SUPPORT = 1073676692;
public const int VI_ATTR_TCPIP_ADDR = -1073806955;
public const int VI_ATTR_TCPIP_HOSTNAME = -1073806954;
public const int VI_ATTR_TCPIP_PORT = 1073676695;
public const int VI_ATTR_TCPIP_DEVICE_NAME = -1073806951;
public const int VI_ATTR_TCPIP_NODELAY = 1073676698;
public const int VI_ATTR_TCPIP_KEEPALIVE = 1073676699;
public const int VI_ATTR_4882_COMPLIANT = 1073676703;
public const int VI_ATTR_USB_SERIAL_NUM = -1073806944;
public const int VI_ATTR_USB_INTFC_NUM = 1073676705;
public const int VI_ATTR_USB_PROTOCOL = 1073676711;
public const int VI_ATTR_USB_MAX_INTR_SIZE = 1073676719;
public const int VI_ATTR_JOB_ID = 1073692678;
public const int VI_ATTR_EVENT_TYPE = 1073692688;
public const int VI_ATTR_SIGP_STATUS_ID = 1073692689;
public const int VI_ATTR_RECV_TRIG_ID = 1073692690;
public const int VI_ATTR_INTR_STATUS_ID = 1073692707;
public const int VI_ATTR_STATUS = 1073692709;
public const int VI_ATTR_RET_COUNT = 1073692710;
public const int VI_ATTR_BUFFER = 1073692711;
public const int VI_ATTR_RECV_INTR_LEVEL = 1073692737;
public const int VI_ATTR_OPER_NAME = -1073790910;
public const int VI_ATTR_GPIB_RECV_CIC_STATE = 1073693075;
public const int VI_ATTR_RECV_TCPIP_ADDR = -1073790568;
public const int VI_ATTR_USB_RECV_INTR_SIZE = 1073693104;
public const int VI_ATTR_USB_RECV_INTR_DATA = -1073790543;
#endregion
#region - Event Types -----------------------------------------------------------
public const int VI_EVENT_IO_COMPLETION = 1073684489;
public const int VI_EVENT_TRIG = -1073799158;
public const int VI_EVENT_SERVICE_REQ = 1073684491;
public const int VI_EVENT_CLEAR = 1073684493;
public const int VI_EVENT_EXCEPTION = -1073799154;
public const int VI_EVENT_GPIB_CIC = 1073684498;
public const int VI_EVENT_GPIB_TALK = 1073684499;
public const int VI_EVENT_GPIB_LISTEN = 1073684500;
public const int VI_EVENT_VXI_VME_SYSFAIL = 1073684509;
public const int VI_EVENT_VXI_VME_SYSRESET = 1073684510;
public const int VI_EVENT_VXI_SIGP = 1073684512;
public const int VI_EVENT_VXI_VME_INTR = -1073799135;
public const int VI_EVENT_TCPIP_CONNECT = 1073684534;
public const int VI_EVENT_USB_INTR = 1073684535;
public const int VI_ALL_ENABLED_EVENTS = 1073709055;
#endregion
#region - Completion and Error Codes --------------------------------------------
public const int VI_SUCCESS = 0;
public const int VI_SUCCESS_EVENT_EN = 1073676290;
public const int VI_SUCCESS_EVENT_DIS = 1073676291;
public const int VI_SUCCESS_QUEUE_EMPTY = 1073676292;
public const int VI_SUCCESS_TERM_CHAR = 1073676293;
public const int VI_SUCCESS_MAX_CNT = 1073676294;
public const int VI_SUCCESS_DEV_NPRESENT = 1073676413;
public const int VI_SUCCESS_TRIG_MAPPED = 1073676414;
public const int VI_SUCCESS_QUEUE_NEMPTY = 1073676416;
public const int VI_SUCCESS_NCHAIN = 1073676440;
public const int VI_SUCCESS_NESTED_SHARED = 1073676441;
public const int VI_SUCCESS_NESTED_EXCLUSIVE = 1073676442;
public const int VI_SUCCESS_SYNC = 1073676443;
public const int VI_WARN_QUEUE_OVERFLOW = 1073676300;
public const int VI_WARN_CONFIG_NLOADED = 1073676407;
public const int VI_WARN_NULL_OBJECT = 1073676418;
public const int VI_WARN_NSUP_ATTR_STATE = 1073676420;
public const int VI_WARN_UNKNOWN_STATUS = 1073676421;
public const int VI_WARN_NSUP_BUF = 1073676424;
public const int VI_WARN_EXT_FUNC_NIMPL = 1073676457;
public const int VI_ERROR_SYSTEM_ERROR = -1073807360;
public const int VI_ERROR_INV_OBJECT = -1073807346;
public const int VI_ERROR_RSRC_LOCKED = -1073807345;
public const int VI_ERROR_INV_EXPR = -1073807344;
public const int VI_ERROR_RSRC_NFOUND = -1073807343;
public const int VI_ERROR_INV_RSRC_NAME = -1073807342;
public const int VI_ERROR_INV_ACC_MODE = -1073807341;
public const int VI_ERROR_TMO = -1073807339;
public const int VI_ERROR_CLOSING_FAILED = -1073807338;
public const int VI_ERROR_INV_DEGREE = -1073807333;
public const int VI_ERROR_INV_JOB_ID = -1073807332;
public const int VI_ERROR_NSUP_ATTR = -1073807331;
public const int VI_ERROR_NSUP_ATTR_STATE = -1073807330;
public const int VI_ERROR_ATTR_READONLY = -1073807329;
public const int VI_ERROR_INV_LOCK_TYPE = -1073807328;
public const int VI_ERROR_INV_ACCESS_KEY = -1073807327;
public const int VI_ERROR_INV_EVENT = -1073807322;
public const int VI_ERROR_INV_MECH = -1073807321;
public const int VI_ERROR_HNDLR_NINSTALLED = -1073807320;
public const int VI_ERROR_INV_HNDLR_REF = -1073807319;
public const int VI_ERROR_INV_CONTEXT = -1073807318;
public const int VI_ERROR_NENABLED = -1073807313;
public const int VI_ERROR_ABORT = -1073807312;
public const int VI_ERROR_RAW_WR_PROT_VIOL = -1073807308;
public const int VI_ERROR_RAW_RD_PROT_VIOL = -1073807307;
public const int VI_ERROR_OUTP_PROT_VIOL = -1073807306;
public const int VI_ERROR_INP_PROT_VIOL = -1073807305;
public const int VI_ERROR_BERR = -1073807304;
public const int VI_ERROR_IN_PROGRESS = -1073807303;
public const int VI_ERROR_INV_SETUP = -1073807302;
public const int VI_ERROR_QUEUE_ERROR = -1073807301;
public const int VI_ERROR_ALLOC = -1073807300;
public const int VI_ERROR_INV_MASK = -1073807299;
public const int VI_ERROR_IO = -1073807298;
public const int VI_ERROR_INV_FMT = -1073807297;
public const int VI_ERROR_NSUP_FMT = -1073807295;
public const int VI_ERROR_LINE_IN_USE = -1073807294;
public const int VI_ERROR_NSUP_MODE = -1073807290;
public const int VI_ERROR_SRQ_NOCCURRED = -1073807286;
public const int VI_ERROR_INV_SPACE = -1073807282;
public const int VI_ERROR_INV_OFFSET = -1073807279;
public const int VI_ERROR_INV_WIDTH = -1073807278;
public const int VI_ERROR_NSUP_OFFSET = -1073807276;
public const int VI_ERROR_NSUP_VAR_WIDTH = -1073807275;
public const int VI_ERROR_WINDOW_NMAPPED = -1073807273;
public const int VI_ERROR_RESP_PENDING = -1073807271;
public const int VI_ERROR_NLISTENERS = -1073807265;
public const int VI_ERROR_NCIC = -1073807264;
public const int VI_ERROR_NSYS_CNTLR = -1073807263;
public const int VI_ERROR_NSUP_OPER = -1073807257;
public const int VI_ERROR_INTR_PENDING = -1073807256;
public const int VI_ERROR_ASRL_PARITY = -1073807254;
public const int VI_ERROR_ASRL_FRAMING = -1073807253;
public const int VI_ERROR_ASRL_OVERRUN = -1073807252;
public const int VI_ERROR_TRIG_NMAPPED = -1073807250;
public const int VI_ERROR_NSUP_ALIGN_OFFSET = -1073807248;
public const int VI_ERROR_USER_BUF = -1073807247;
public const int VI_ERROR_RSRC_BUSY = -1073807246;
public const int VI_ERROR_NSUP_WIDTH = -1073807242;
public const int VI_ERROR_INV_PARAMETER = -1073807240;
public const int VI_ERROR_INV_PROT = -1073807239;
public const int VI_ERROR_INV_SIZE = -1073807237;
public const int VI_ERROR_WINDOW_MAPPED = -1073807232;
public const int VI_ERROR_NIMPL_OPER = -1073807231;
public const int VI_ERROR_INV_LENGTH = -1073807229;
public const int VI_ERROR_INV_MODE = -1073807215;
public const int VI_ERROR_SESN_NLOCKED = -1073807204;
public const int VI_ERROR_MEM_NSHARED = -1073807203;
public const int VI_ERROR_LIBRARY_NFOUND = -1073807202;
public const int VI_ERROR_NSUP_INTR = -1073807201;
public const int VI_ERROR_INV_LINE = -1073807200;
public const int VI_ERROR_FILE_ACCESS = -1073807199;
public const int VI_ERROR_FILE_IO = -1073807198;
public const int VI_ERROR_NSUP_LINE = -1073807197;
public const int VI_ERROR_NSUP_MECH = -1073807196;
public const int VI_ERROR_INTF_NUM_NCONFIG = -1073807195;
public const int VI_ERROR_CONN_LOST = -1073807194;
#endregion
#region - Other VISA Definitions ------------------------------------------------
public const short VI_FIND_BUFLEN = 256;
public const short VI_NULL = 0;
public const short VI_TRUE = 1;
public const short VI_FALSE = 0;
public const short VI_INTF_GPIB = 1;
public const short VI_INTF_VXI = 2;
public const short VI_INTF_GPIB_VXI = 3;
public const short VI_INTF_ASRL = 4;
public const short VI_INTF_TCPIP = 6;
public const short VI_INTF_USB = 7;
public const short VI_PROT_NORMAL = 1;
public const short VI_PROT_FDC = 2;
public const short VI_PROT_HS488 = 3;
public const short VI_PROT_4882_STRS = 4;
public const short VI_PROT_USBTMC_VENDOR = 5;
public const short VI_FDC_NORMAL = 1;
public const short VI_FDC_STREAM = 2;
public const short VI_LOCAL_SPACE = 0;
public const short VI_A16_SPACE = 1;
public const short VI_A24_SPACE = 2;
public const short VI_A32_SPACE = 3;
public const short VI_OPAQUE_SPACE = -1;
public const short VI_UNKNOWN_LA = -1;
public const short VI_UNKNOWN_SLOT = -1;
public const short VI_UNKNOWN_LEVEL = -1;
public const short VI_QUEUE = 1;
public const short VI_ALL_MECH = -1;
public const short VI_TRIG_ALL = -2;
public const short VI_TRIG_SW = -1;
public const short VI_TRIG_TTL0 = 0;
public const short VI_TRIG_TTL1 = 1;
public const short VI_TRIG_TTL2 = 2;
public const short VI_TRIG_TTL3 = 3;
public const short VI_TRIG_TTL4 = 4;
public const short VI_TRIG_TTL5 = 5;
public const short VI_TRIG_TTL6 = 6;
public const short VI_TRIG_TTL7 = 7;
public const short VI_TRIG_ECL0 = 8;
public const short VI_TRIG_ECL1 = 9;
public const short VI_TRIG_PANEL_IN = 27;
public const short VI_TRIG_PANEL_OUT = 28;
public const short VI_TRIG_PROT_DEFAULT = 0;
public const short VI_TRIG_PROT_ON = 1;
public const short VI_TRIG_PROT_OFF = 2;
public const short VI_TRIG_PROT_SYNC = 5;
public const short VI_READ_BUF = 1;
public const short VI_WRITE_BUF = 2;
public const short VI_READ_BUF_DISCARD = 4;
public const short VI_WRITE_BUF_DISCARD = 8;
public const short VI_IO_IN_BUF = 16;
public const short VI_IO_OUT_BUF = 32;
public const short VI_IO_IN_BUF_DISCARD = 64;
public const short VI_IO_OUT_BUF_DISCARD = 128;
public const short VI_FLUSH_ON_ACCESS = 1;
public const short VI_FLUSH_WHEN_FULL = 2;
public const short VI_FLUSH_DISABLE = 3;
public const short VI_NMAPPED = 1;
public const short VI_USE_OPERS = 2;
public const short VI_DEREF_ADDR = 3;
public const int VI_TMO_IMMEDIATE = 0;
public const int VI_TMO_INFINITE = -1;
public const short VI_NO_LOCK = 0;
public const short VI_EXCLUSIVE_LOCK = 1;
public const short VI_SHARED_LOCK = 2;
public const short VI_LOAD_CONFIG = 4;
public const short VI_NO_SEC_ADDR = -1;
public const short VI_ASRL_PAR_NONE = 0;
public const short VI_ASRL_PAR_ODD = 1;
public const short VI_ASRL_PAR_EVEN = 2;
public const short VI_ASRL_PAR_MARK = 3;
public const short VI_ASRL_PAR_SPACE = 4;
public const short VI_ASRL_STOP_ONE = 10;
public const short VI_ASRL_STOP_ONE5 = 15;
public const short VI_ASRL_STOP_TWO = 20;
public const short VI_ASRL_FLOW_NONE = 0;
public const short VI_ASRL_FLOW_XON_XOFF = 1;
public const short VI_ASRL_FLOW_RTS_CTS = 2;
public const short VI_ASRL_FLOW_DTR_DSR = 4;
public const short VI_ASRL_END_NONE = 0;
public const short VI_ASRL_END_LAST_BIT = 1;
public const short VI_ASRL_END_TERMCHAR = 2;
public const short VI_ASRL_END_BREAK = 3;
public const short VI_STATE_ASSERTED = 1;
public const short VI_STATE_UNASSERTED = 0;
public const short VI_STATE_UNKNOWN = -1;
public const short VI_BIG_ENDIAN = 0;
public const short VI_LITTLE_ENDIAN = 1;
public const short VI_DATA_PRIV = 0;
public const short VI_DATA_NPRIV = 1;
public const short VI_PROG_PRIV = 2;
public const short VI_PROG_NPRIV = 3;
public const short VI_BLCK_PRIV = 4;
public const short VI_BLCK_NPRIV = 5;
public const short VI_D64_PRIV = 6;
public const short VI_D64_NPRIV = 7;
public const short VI_WIDTH_8 = 1;
public const short VI_WIDTH_16 = 2;
public const short VI_WIDTH_32 = 4;
public const short VI_GPIB_REN_DEASSERT = 0;
public const short VI_GPIB_REN_ASSERT = 1;
public const short VI_GPIB_REN_DEASSERT_GTL = 2;
public const short VI_GPIB_REN_ASSERT_ADDRESS = 3;
public const short VI_GPIB_REN_ASSERT_LLO = 4;
public const short VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5;
public const short VI_GPIB_REN_ADDRESS_GTL = 6;
public const short VI_GPIB_ATN_DEASSERT = 0;
public const short VI_GPIB_ATN_ASSERT = 1;
public const short VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2;
public const short VI_GPIB_ATN_ASSERT_IMMEDIATE = 3;
public const short VI_GPIB_HS488_DISABLED = 0;
public const short VI_GPIB_HS488_NIMPL = -1;
public const short VI_GPIB_UNADDRESSED = 0;
public const short VI_GPIB_TALKER = 1;
public const short VI_GPIB_LISTENER = 2;
public const short VI_VXI_CMD16 = 512;
public const short VI_VXI_CMD16_RESP16 = 514;
public const short VI_VXI_RESP16 = 2;
public const short VI_VXI_CMD32 = 1024;
public const short VI_VXI_CMD32_RESP16 = 1026;
public const short VI_VXI_CMD32_RESP32 = 1028;
public const short VI_VXI_RESP32 = 4;
public const short VI_ASSERT_SIGNAL = -1;
public const short VI_ASSERT_USE_ASSIGNED = 0;
public const short VI_ASSERT_IRQ1 = 1;
public const short VI_ASSERT_IRQ2 = 2;
public const short VI_ASSERT_IRQ3 = 3;
public const short VI_ASSERT_IRQ4 = 4;
public const short VI_ASSERT_IRQ5 = 5;
public const short VI_ASSERT_IRQ6 = 6;
public const short VI_ASSERT_IRQ7 = 7;
public const short VI_UTIL_ASSERT_SYSRESET = 1;
public const short VI_UTIL_ASSERT_SYSFAIL = 2;
public const short VI_UTIL_DEASSERT_SYSFAIL = 3;
public const short VI_VXI_CLASS_MEMORY = 0;
public const short VI_VXI_CLASS_EXTENDED = 1;
public const short VI_VXI_CLASS_MESSAGE = 2;
public const short VI_VXI_CLASS_REGISTER = 3;
public const short VI_VXI_CLASS_OTHER = 4;
#endregion
#region - Backward Compatibility Macros -----------------------------------------
public const int VI_ERROR_INV_SESSION = -1073807346;
public const int VI_INFINITE = -1;
public const short VI_NORMAL = 1;
public const short VI_FDC = 2;
public const short VI_HS488 = 3;
public const short VI_ASRL488 = 4;
public const short VI_ASRL_IN_BUF = 16;
public const short VI_ASRL_OUT_BUF = 32;
public const short VI_ASRL_IN_BUF_DISCARD = 64;
public const short VI_ASRL_OUT_BUF_DISCARD = 128;
#endregion
#endregion
}