UL for Linux
A user library to access supported MCC hardware in Linux
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Data Structures | Macros | Typedefs | Enumerations | Functions
uldaq.h File Reference

Go to the source code of this file.

Data Structures

struct  DaqDeviceDescriptor
 A structure that defines a particular DAQ device, usually obtained using ulGetDaqDeviceInventory(). More...
 
struct  TransferStatus
 A structure containing information about the progress of the specified scan operation. More...
 
struct  AiQueueElement
 A structure that defines an analog input queue element. More...
 
struct  DaqInChanDescriptor
 A structure that defines an input channel and its properties. More...
 
struct  DaqOutChanDescriptor
 A structure that defines an output channel and its properties. More...
 
struct  MemDescriptor
 A structure that defines the location and access properties of the physical memory of a device. More...
 

Macros

#define ERR_MSG_LEN   512
 
#define NOSCALEDATA   1 << 0
 
#define NOCALIBRATEDATA   1 << 1
 
#define SIMULTANEOUS   1 << 2
 
#define NOCLEAR   1 << 3
 

Typedefs

typedef struct DaqDeviceDescriptor DaqDeviceDescriptor
 A structure that defines a particular DAQ device, usually obtained using ulGetDaqDeviceInventory(). More...
 
typedef long long DaqDeviceHandle
 The DAQ device. More...
 
typedef struct TransferStatus TransferStatus
 A structure containing information about the progress of the specified scan operation. More...
 
typedef struct AiQueueElement AiQueueElement
 A structure that defines an analog input queue element. More...
 
typedef struct DaqInChanDescriptor DaqInChanDescriptor
 A structure that defines an input channel and its properties. More...
 
typedef struct DaqOutChanDescriptor DaqOutChanDescriptor
 A structure that defines an output channel and its properties. More...
 
typedef void(* DaqEventCallback )(DaqDeviceHandle, DaqEventType, unsigned long long, void *)
 The callback function called in response to an event condition. More...
 
typedef struct MemDescriptor MemDescriptor
 A structure that defines the location and access properties of the physical memory of a device. More...
 

Enumerations

enum  DaqDeviceInterface { USB_IFC = 1 << 0, BLUETOOTH_IFC = 1 << 1, ETHERNET_IFC = 1 << 2, ANY_IFC = USB_IFC | BLUETOOTH_IFC | ETHERNET_IFC }
 A bitmask defining the physical connection interface used to communicate with a DAQ device. More...
 
enum  UlError {
  ERR_NO_ERROR = 0, ERR_UNHANDLED_EXCEPTION = 1, ERR_BAD_DEV_HANDLE = 2, ERR_BAD_DEV_TYPE = 3,
  ERR_USB_DEV_NO_PERMISSION = 4, ERR_USB_INTERFACE_CLAIMED = 5, ERR_DEV_NOT_FOUND = 6, ERR_DEV_NOT_CONNECTED = 7,
  ERR_DEAD_DEV = 8, ERR_BAD_BUFFER_SIZE = 9, ERR_BAD_BUFFER = 10, ERR_BAD_MEM_TYPE = 11,
  ERR_BAD_MEM_REGION = 12, ERR_BAD_RANGE = 13, ERR_BAD_AI_CHAN = 14, ERR_BAD_INPUT_MODE = 15,
  ERR_ALREADY_ACTIVE = 16, ERR_BAD_TRIG_TYPE = 17, ERR_OVERRUN = 18, ERR_UNDERRUN = 19,
  ERR_TIMEDOUT = 20, ERR_BAD_OPTION = 21, ERR_BAD_RATE = 22, ERR_BAD_BURSTIO_COUNT = 23,
  ERR_CONFIG_NOT_SUPPORTED = 24, ERR_BAD_CONFIG_VAL = 25, ERR_BAD_AI_CHAN_TYPE = 26, ERR_ADC_OVERRUN = 27,
  ERR_BAD_TC_TYPE = 28, ERR_BAD_UNIT = 29, ERR_BAD_QUEUE_SIZE = 30, ERR_BAD_CONFIG_ITEM = 31,
  ERR_BAD_INFO_ITEM = 32, ERR_BAD_FLAG = 33, ERR_BAD_SAMPLE_COUNT = 34, ERR_INTERNAL = 35,
  ERR_BAD_COUPLING_MODE = 36, ERR_BAD_SENSOR_SENSITIVITY = 37, ERR_BAD_IEPE_MODE = 38, ERR_BAD_AI_CHAN_QUEUE = 39,
  ERR_BAD_AI_GAIN_QUEUE = 40, ERR_BAD_AI_MODE_QUEUE = 41, ERR_FPGA_FILE_NOT_FOUND = 42, ERR_UNABLE_TO_READ_FPGA_FILE = 43,
  ERR_NO_FPGA = 44, ERR_BAD_ARG = 45, ERR_MIN_SLOPE_VAL_REACHED = 46, ERR_MAX_SLOPE_VAL_REACHED = 47,
  ERR_MIN_OFFSET_VAL_REACHED = 48, ERR_MAX_OFFSET_VAL_REACHED = 49, ERR_BAD_PORT_TYPE = 50, ERR_WRONG_DIG_CONFIG = 51,
  ERR_BAD_BIT_NUM = 52, ERR_BAD_PORT_VAL = 53, ERR_BAD_RETRIG_COUNT = 54, ERR_BAD_AO_CHAN = 55,
  ERR_BAD_DA_VAL = 56, ERR_BAD_TMR = 57, ERR_BAD_FREQUENCY = 58, ERR_BAD_DUTY_CYCLE = 59,
  ERR_BAD_INITIAL_DELAY = 60, ERR_BAD_CTR = 61, ERR_BAD_CTR_VAL = 62, ERR_BAD_DAQI_CHAN_TYPE = 63,
  ERR_BAD_NUM_CHANS = 64, ERR_BAD_CTR_REG = 65, ERR_BAD_CTR_MEASURE_TYPE = 66, ERR_BAD_CTR_MEASURE_MODE = 67,
  ERR_BAD_DEBOUNCE_TIME = 68, ERR_BAD_DEBOUNCE_MODE = 69, ERR_BAD_EDGE_DETECTION = 70, ERR_BAD_TICK_SIZE = 71,
  ERR_BAD_DAQO_CHAN_TYPE = 72, ERR_NO_CONNECTION_ESTABLISHED = 73, ERR_BAD_EVENT_TYPE = 74, ERR_EVENT_ALREADY_ENABLED = 75,
  ERR_BAD_EVENT_PARAMETER = 76, ERR_BAD_CALLBACK_FUCNTION = 77, ERR_BAD_MEM_ADDRESS = 78, ERR_MEM_ACCESS_DENIED = 79,
  ERR_DEV_UNAVAILABLE = 80, ERR_BAD_RETRIG_TRIG_TYPE = 81, ERR_BAD_DEV_VER = 82, ERR_BAD_DIG_OPERATION = 83,
  ERR_BAD_PORT_INDEX = 84, ERR_OPEN_CONNECTION = 85, ERR_DEV_NOT_READY = 86, ERR_PACER_OVERRUN = 87,
  ERR_BAD_TRIG_CHANNEL = 88, ERR_BAD_TRIG_LEVEL = 89, ERR_BAD_CHAN_ORDER = 90, ERR_TEMP_OUT_OF_RANGE = 91,
  ERR_TRIG_THRESHOLD_OUT_OF_RANGE = 92, ERR_INCOMPATIBLE_FIRMWARE = 93
}
 UL error codes. More...
 
enum  AiInputMode { AI_DIFFERENTIAL = 1, AI_SINGLE_ENDED = 2, AI_PSEUDO_DIFFERENTIAL = 3 }
 A/D channel input modes. More...
 
enum  AiChanType {
  AI_VOLTAGE = 1 << 0, AI_TC = 1 << 1, AI_RTD = 1 << 2, AI_THERMISTOR = 1 << 3,
  AI_SEMICONDUCTOR = 1 << 4, AI_DISABLED = 1 << 30
}
 Analog input channel types. More...
 
enum  TcType {
  TC_J = 1, TC_K = 2, TC_T = 3, TC_E = 4,
  TC_R = 5, TC_S = 6, TC_B = 7, TC_N = 8
}
 Thermocouple types. More...
 
enum  SensorConnectionType { SCT_2_WIRE_1 = 1, SCT_2_WIRE_2 = 2, SCT_3_WIRE = 3, SCT_4_WIRE = 4 }
 Sensor connection types. More...
 
enum  Range {
  BIP60VOLTS = 1, BIP30VOLTS = 2, BIP15VOLTS = 3, BIP20VOLTS = 4,
  BIP10VOLTS = 5, BIP5VOLTS = 6, BIP4VOLTS = 7, BIP2PT5VOLTS = 8,
  BIP2VOLTS = 9, BIP1PT25VOLTS = 10, BIP1VOLTS = 11, BIPPT625VOLTS = 12,
  BIPPT5VOLTS = 13, BIPPT25VOLTS = 14, BIPPT125VOLTS = 15, BIPPT2VOLTS = 16,
  BIPPT1VOLTS = 17, BIPPT078VOLTS = 18, BIPPT05VOLTS = 19, BIPPT01VOLTS = 20,
  BIPPT005VOLTS = 21, BIP3VOLTS = 22, BIPPT312VOLTS = 23, BIPPT156VOLTS = 24,
  UNI60VOLTS = 1001, UNI30VOLTS = 1002, UNI15VOLTS = 1003, UNI20VOLTS = 1004,
  UNI10VOLTS = 1005, UNI5VOLTS = 1006, UNI4VOLTS = 1007, UNI2PT5VOLTS = 1008,
  UNI2VOLTS = 1009, UNI1PT25VOLTS = 1010, UNI1VOLTS = 1011, UNIPT625VOLTS = 1012,
  UNIPT5VOLTS = 1013, UNIPT25VOLTS = 1014, UNIPT125VOLTS = 1015, UNIPT2VOLTS = 1016,
  UNIPT1VOLTS = 1017, UNIPT078VOLTS = 1018, UNIPT05VOLTS = 1019, UNIPT01VOLTS = 1020,
  UNIPT005VOLTS = 1021, MA0TO20 = 2000
}
 Used with many analog input and output functions, as well as a return value for the infoValue argument to ulAIGetInfo() when used with AI_INFO_DIFF_RANGE or AI_INFO_SE_RANGE,
and the infoValue argument to ulAOGetInfo() when used with AO_INFO_RANGE. More...
 
enum  TempUnit { TU_CELSIUS = 1, TU_FAHRENHEIT = 2, TU_KELVIN = 3 }
 Temperature units. More...
 
enum  TempScale {
  TS_CELSIUS = TU_CELSIUS, TS_FAHRENHEIT = TU_FAHRENHEIT, TS_KELVIN = TU_KELVIN, TS_VOLTS = 4,
  TS_NOSCALE = 5
}
 Temperature units. More...
 
enum  AutoZeroMode { AZM_NONE = 1, AZM_EVERY_SAMPLE = 2, AZM_ONCE = 3 }
 Auto zero modes. More...
 
enum  AdcTimingMode { ADC_TM_AUTO = 1, ADC_TM_HIGH_RES = 2, ADC_TM_HIGH_SPEED = 3 }
 ADC timing modes. More...
 
enum  IepeMode { IEPE_DISABLED = 1, IEPE_ENABLED = 2 }
 IEPE modes. More...
 
enum  CouplingMode { CM_DC = 1, CM_AC = 2 }
 Coupling modes. More...
 
enum  OtdMode { OTD_DISABLED = 1, OTD_ENABLED = 2 }
 Open Thermocouple detection modes. More...
 
enum  AiQueueType { CHAN_QUEUE = 1 << 0, GAIN_QUEUE = 1 << 1, MODE_QUEUE = 1 << 2 }
 Bitmask indicating supported queue types. More...
 
enum  AiChanQueueLimitation { UNIQUE_CHAN = 1 << 0, ASCENDING_CHAN = 1 << 1, CONSECUTIVE_CHAN = 1 << 2 }
 Device queue limitations. More...
 
enum  DigitalPortType {
  AUXPORT = 1, AUXPORT0 = 1, AUXPORT1 = 2, AUXPORT2 = 3,
  FIRSTPORTA = 10, FIRSTPORTB = 11, FIRSTPORTC = 12, FIRSTPORTCL = 12,
  FIRSTPORTCH = 13, SECONDPORTA = 14, SECONDPORTB = 15, SECONDPORTCL = 16,
  SECONDPORTCH = 17, THIRDPORTA = 18, THIRDPORTB = 19, THIRDPORTCL = 20,
  THIRDPORTCH = 21, FOURTHPORTA = 22, FOURTHPORTB = 23, FOURTHPORTCL = 24,
  FOURTHPORTCH = 25, FIFTHPORTA = 26, FIFTHPORTB = 27, FIFTHPORTCL = 28,
  FIFTHPORTCH = 29, SIXTHPORTA = 30, SIXTHPORTB = 31, SIXTHPORTCL = 32,
  SIXTHPORTCH = 33, SEVENTHPORTA = 34, SEVENTHPORTB = 35, SEVENTHPORTCL = 36,
  SEVENTHPORTCH = 37, EIGHTHPORTA = 38, EIGHTHPORTB = 39, EIGHTHPORTCL = 40,
  EIGHTHPORTCH = 41
}
 Used with all digital I/O functions and with ulDIOGetInfo() as the infoValue argument value when used with DIO_INFO_PORT_IO_TYPE. More...
 
enum  DigitalPortIoType {
  DPIOT_IN = 1, DPIOT_OUT = 2, DPIOT_IO = 3, DPIOT_BITIO = 4,
  DPIOT_NONCONFIG = 5
}
 Used with ulDIOGetInfo() as the infoValue argument value when used with DIO_INFO_PORT_IO_TYPE. More...
 
enum  DigitalDirection { DD_INPUT = 1, DD_OUTPUT = 2 }
 Used with ulDConfigPort() and ulDConfigBit() as the direction argument value. More...
 
enum  TimerType { TMR_STANDARD = 1, TMR_ADVANCED = 2 }
 Types of timer channels. More...
 
enum  TmrIdleState { TMRIS_LOW = 1, TMRIS_HIGH = 2 }
 Timer idle state. More...
 
enum  TmrStatus { TMRS_IDLE = 0, TMRS_RUNNING = 1 }
 Used with ulTmrPulseOutStatus() as the status argument value returned (if supported) for the specified device. More...
 
enum  TriggerType {
  TRIG_NONE = 0, TRIG_POS_EDGE = 1 << 0, TRIG_NEG_EDGE = 1 << 1, TRIG_HIGH = 1 << 2,
  TRIG_LOW = 1 << 3, GATE_HIGH = 1 << 4, GATE_LOW = 1 << 5, TRIG_RISING = 1 << 6,
  TRIG_FALLING = 1 << 7, TRIG_ABOVE = 1 << 8, TRIG_BELOW = 1 << 9, GATE_ABOVE = 1 << 10,
  GATE_BELOW = 1 << 11, GATE_IN_WINDOW = 1 << 12, GATE_OUT_WINDOW = 1 << 13, TRIG_PATTERN_EQ = 1 << 14,
  TRIG_PATTERN_NE = 1 << 15, TRIG_PATTERN_ABOVE = 1 << 16, TRIG_PATTERN_BELOW = 1 << 17
}
 Used as an individual value with the subsystem SetTrigger functions as the type argument value, or as a bitmask value with the subsystem GetInfo functions as the infoValue argument value. More...
 
enum  ScanStatus { SS_IDLE = 0, SS_RUNNING = 1 }
 Scan status. More...
 
enum  ScanOption {
  SO_DEFAULTIO = 0, SO_SINGLEIO = 1 << 0, SO_BLOCKIO = 1 << 1, SO_BURSTIO = 1 << 2,
  SO_CONTINUOUS = 1 << 3, SO_EXTCLOCK = 1 << 4, SO_EXTTRIGGER = 1 << 5, SO_RETRIGGER = 1 << 6,
  SO_BURSTMODE = 1 << 7, SO_PACEROUT = 1 << 8, SO_EXTTIMEBASE = 1 << 9, SO_TIMEBASEOUT = 1 << 10
}
 Used with many analog input and output functions, as well as a return value for the infoValue argument to many of the subsystem GetInfo functions when used with the infoItem argument values set to one of the subsystem INFO_SCAN_OPTIONS values. More...
 
enum  AInScanFlag { AINSCAN_FF_DEFAULT = 0, AINSCAN_FF_NOSCALEDATA = NOSCALEDATA, AINSCAN_FF_NOCALIBRATEDATA = NOCALIBRATEDATA }
 Use as the flags argument value for the ulAInScan() function to set properties of data returned. More...
 
enum  AInFlag { AIN_FF_DEFAULT = 0, AIN_FF_NOSCALEDATA = NOSCALEDATA, AIN_FF_NOCALIBRATEDATA = NOCALIBRATEDATA }
 Use as the flags argument value for ulAIn() to set the properties of data returned. More...
 
enum  AOutScanFlag { AOUTSCAN_FF_DEFAULT = 0, AOUTSCAN_FF_NOSCALEDATA = NOSCALEDATA, AOUTSCAN_FF_NOCALIBRATEDATA = NOCALIBRATEDATA }
 Use as the flags argument value for ulAOutScan() to set the properties of data supplied to the function. More...
 
enum  TInFlag { TIN_FF_DEFAULT = 0 }
 Use as the flags argument value for ulTIn() to set the properties of data returned; reserved for future use. More...
 
enum  TInArrayFlag { TINARRAY_FF_DEFAULT = 0 }
 Use as the flags argument value for ulTInArray() to set the properties of data returned; reserved for future use. More...
 
enum  AOutFlag { AOUT_FF_DEFAULT = 0, AOUT_FF_NOSCALEDATA = NOSCALEDATA, AOUT_FF_NOCALIBRATEDATA = NOCALIBRATEDATA }
 Use as the flags argument value for ulAOut() to set the properties of data supplied to the function. More...
 
enum  AOutArrayFlag { AOUTARRAY_FF_DEFAULT = 0, AOUTARRAY_FF_NOSCALEDATA = NOSCALEDATA, AOUTARRAY_FF_NOCALIBRATEDATA = NOCALIBRATEDATA, AOUTARRAY_FF_SIMULTANEOUS = SIMULTANEOUS }
 Use as the flags argument value for ulAOutArray() to set the properties of data supplied to the function. More...
 
enum  AOutSyncMode { AOSM_SLAVE = 0, AOSM_MASTER = 1 }
 Use with AoConfigItem to set configuration options at runtime. More...
 
enum  CInScanFlag {
  CINSCAN_FF_DEFAULT = 0, CINSCAN_FF_CTR16_BIT = 1 << 0, CINSCAN_FF_CTR32_BIT = 1 << 1, CINSCAN_FF_CTR64_BIT = 1 << 2,
  CINSCAN_FF_NOCLEAR = NOCLEAR, CINSCAN_FF_CTR48_BIT = 1 << 4
}
 Use as the flags argument value for ulCInScan() to set counter properties. More...
 
enum  DInScanFlag { DINSCAN_FF_DEFAULT = 0 }
 Use as the flags argument value for ulDInScan() to set the properties of data returned. More...
 
enum  DOutScanFlag { DOUTSCAN_FF_DEFAULT = 0 }
 Use as the flags argument value for ulDOutScan() to set properties of data sent. More...
 
enum  DaqInScanFlag { DAQINSCAN_FF_DEFAULT = 0, DAQINSCAN_FF_NOSCALEDATA = NOSCALEDATA, DAQINSCAN_FF_NOCALIBRATEDATA = NOCALIBRATEDATA, DAQINSCAN_FF_NOCLEAR = NOCLEAR }
 Use as the flags argument value for ulDaqInScan() to set the properties of data returned. More...
 
enum  DaqOutScanFlag { DAQOUTSCAN_FF_DEFAULT = 0, DAQOUTSCAN_FF_NOSCALEDATA = NOSCALEDATA, DAQOUTSCAN_FF_NOCALIBRATEDATA = NOCALIBRATEDATA }
 Use as the flags argument value for ulDaqOutScan() to set the properties of data sent. More...
 
enum  CounterMeasurementType {
  CMT_COUNT = 1 << 0, CMT_PERIOD = 1 << 1, CMT_PULSE_WIDTH = 1 << 2, CMT_TIMING = 1 << 3,
  CMT_ENCODER = 1 << 4
}
 Use as the value for the type argument for ulCConfigScan(). More...
 
enum  CounterMeasurementMode {
  CMM_DEFAULT = 0, CMM_CLEAR_ON_READ = 1 << 0, CMM_COUNT_DOWN = 1 << 1, CMM_GATE_CONTROLS_DIR = 1 << 2,
  CMM_GATE_CLEARS_CTR = 1 << 3, CMM_GATE_TRIG_SRC = 1 << 4, CMM_OUTPUT_ON = 1 << 5, CMM_OUTPUT_INITIAL_STATE_HIGH = 1 << 6,
  CMM_NO_RECYCLE = 1 << 7, CMM_RANGE_LIMIT_ON = 1 << 8, CMM_GATING_ON = 1 << 9, CMM_INVERT_GATE = 1 << 10,
  CMM_PERIOD_X1 = 0, CMM_PERIOD_X10 = 1 << 11, CMM_PERIOD_X100 = 1 << 12, CMM_PERIOD_X1000 = 1 << 13,
  CMM_PERIOD_GATING_ON = 1 << 14, CMM_PERIOD_INVERT_GATE = 1 << 15, CMM_PULSE_WIDTH_DEFAULT = 0, CMM_PULSE_WIDTH_GATING_ON = 1 << 16,
  CMM_PULSE_WIDTH_INVERT_GATE = 1 << 17, CMM_TIMING_DEFAULT = 0, CMM_TIMING_MODE_INVERT_GATE = 1 << 18, CMM_ENCODER_X1 = 0,
  CMM_ENCODER_X2 = 1 << 19, CMM_ENCODER_X4 = 1 << 20, CMM_ENCODER_LATCH_ON_Z = 1 << 21, CMM_ENCODER_CLEAR_ON_Z = 1 << 22,
  CMM_ENCODER_NO_RECYCLE = 1 << 23, CMM_ENCODER_RANGE_LIMIT_ON = 1 << 24, CMM_ENCODER_Z_ACTIVE_EDGE = 1 << 25, CMM_LATCH_ON_INDEX = 1 << 26,
  CMM_PHB_CONTROLS_DIR = 1 << 27, CMM_DECREMENT_ON = 1 << 28
}
 Use as the value for the mode argument for ulCConfigScan(). More...
 
enum  CounterDebounceTime {
  CDT_DEBOUNCE_0ns = 0, CDT_DEBOUNCE_500ns = 1, CDT_DEBOUNCE_1500ns = 2, CDT_DEBOUNCE_3500ns = 3,
  CDT_DEBOUNCE_7500ns = 4, CDT_DEBOUNCE_15500ns = 5, CDT_DEBOUNCE_31500ns = 6, CDT_DEBOUNCE_63500ns = 7,
  CDT_DEBOUNCE_127500ns = 8, CDT_DEBOUNCE_100us = 9, CDT_DEBOUNCE_300us = 10, CDT_DEBOUNCE_700us = 11,
  CDT_DEBOUNCE_1500us = 12, CDT_DEBOUNCE_3100us = 13, CDT_DEBOUNCE_6300us = 14, CDT_DEBOUNCE_12700us = 15,
  CDT_DEBOUNCE_25500us = 16
}
 Use as the value for the debounceTime argument for ulCConfigScan() when CounterDebounceMode is not CDM_NONE. More...
 
enum  CounterDebounceMode { CDM_NONE = 0, CDM_TRIGGER_AFTER_STABLE = 1, CDM_TRIGGER_BEFORE_STABLE = 2 }
 Use as the value for the debounceTime argument for ulCConfigScan() to set the glitch rejection properties of a counter. More...
 
enum  CounterEdgeDetection { CED_RISING_EDGE = 1, CED_FALLING_EDGE = 2 }
 Use as the value for the edgeDetection argument for ulCConfigScan(). More...
 
enum  CounterTickSize {
  CTS_TICK_20PT83ns = 1, CTS_TICK_208PT3ns = 2, CTS_TICK_2083PT3ns = 3, CTS_TICK_20833PT3ns = 4,
  CTS_TICK_20ns = 11, CTS_TICK_200ns = 12, CTS_TICK_2000ns = 13, CTS_TICK_20000ns = 14
}
 Use as the value for the tickSize argument for ulCConfigScan() when CounterDebounceMode is CMT_PERIOD, CMT_PULSE_WIDTH, or CMT_TIMING. More...
 
enum  CConfigScanFlag { CF_DEFAULT = 0 }
 Use as the flags argument value for ulCConfigScan(). More...
 
enum  CounterRegisterType {
  CRT_COUNT = 1 << 0, CRT_LOAD = 1 << 1, CRT_MIN_LIMIT = 1 << 2, CRT_MAX_LIMIT = 1 << 3,
  CRT_OUTPUT_VAL0 = 1 << 4, CRT_OUTPUT_VAL1 = 1 << 5
}
 Used for the ulCLoad() registerType argument, and as the value returned by ulCtrGetInfo() for the CTR_INFO_REGISTER_TYPES infoItem. More...
 
enum  DaqInChanType {
  DAQI_ANALOG_DIFF = 1 << 0, DAQI_ANALOG_SE = 1 << 1, DAQI_DIGITAL = 1 << 2, DAQI_CTR16 = 1 << 3,
  DAQI_CTR32 = 1 << 4, DAQI_CTR48 = 1 << 5, DAQI_DAC = 1 << 7
}
 A bitmask used with synchronous input scanning operations as a field in the DaqInChanDescriptor struct, and as a value returned in the infoValue argument for ulDaqIGetInfo() used with DAQI_INFO_CHAN_TYPES. More...
 
enum  DaqOutChanType { DAQO_ANALOG = 1 << 0, DAQO_DIGITAL = 1 << 1 }
 A bitmask used with synchronous output scanning operations as a field in the DaqOutChanDescriptor struct, and as a value returned in the infoValue argument for ulDaqOGetInfo() used with DAQO_INFO_CHAN_TYPES. More...
 
enum  PulseOutOption { PO_DEFAULT = 0, PO_EXTTRIGGER = 1 << 5, PO_RETRIGGER = 1 << 6 }
 Used with ulTmrPulseOutStart() as the options argument value to set advanced options for the specified device. More...
 
enum  DaqEventType {
  DE_NONE = 0, DE_ON_DATA_AVAILABLE = 1 << 0, DE_ON_INPUT_SCAN_ERROR = 1 << 1, DE_ON_END_OF_INPUT_SCAN = 1 << 2,
  DE_ON_OUTPUT_SCAN_ERROR = 1 << 3, DE_ON_END_OF_OUTPUT_SCAN = 1 << 4
}
 A bitmask defining the types of conditions that trigger an event. More...
 
enum  MemRegion { MR_CAL = 1 << 0, MR_USER = 1 << 1, MR_SETTINGS = 1 << 2, MR_RESERVED0 = 1 << 3 }
 Used with ulMemGetInfo() as the memRegion argument value to specify the memory location on the specified device. More...
 
enum  MemAccessType { MA_READ = 1 << 0, MA_WRITE = 1 << 1 }
 A bitmask used with ulMemGetInfo() as one of the field types returned in the MemDescriptor struct. More...
 
enum  WaitType { WAIT_UNTIL_DONE = 1 << 0 }
 Used with the subsystem ScanWait functions as the waitType argument value for the specified device. More...
 
enum  UlInfoItemStr { UL_INFO_VER_STR = 2000 }
 Library version. More...
 
enum  UlConfigItem { UL_CFG_USB_XFER_PRIORITY = 1 }
 
enum  DevInfoItem {
  DEV_INFO_HAS_AI_DEV = 1, DEV_INFO_HAS_AO_DEV = 2, DEV_INFO_HAS_DIO_DEV = 3, DEV_INFO_HAS_CTR_DEV = 4,
  DEV_INFO_HAS_TMR_DEV = 5, DEV_INFO_HAS_DAQI_DEV = 6, DEV_INFO_HAS_DAQO_DEV = 7, DEV_INFO_DAQ_EVENT_TYPES = 8,
  DEV_INFO_MEM_REGIONS = 9
}
 Use with ulDevGetInfo() as an infoItem argument value to obtain information for the specified device. More...
 
enum  DevConfigItemStr { DEV_CFG_VER_STR = 2000 }
 Use with ulDevGetConfigStr() as an infoItem argument value to obtain information for the specified device. More...
 
enum  DevVersionType { DEV_VER_FW_MAIN = 0, DEV_VER_FPGA = 1, DEV_VER_RADIO = 2 }
 Used with ulDevGetConfigStr() as an index argument value with the infoItem argument set to DEV_CFG_VER_STR for the specified device. More...
 
enum  AiInfoItem {
  AI_INFO_RESOLUTION = 1, AI_INFO_NUM_CHANS = 2, AI_INFO_NUM_CHANS_BY_MODE = 3, AI_INFO_NUM_CHANS_BY_TYPE = 4,
  AI_INFO_CHAN_TYPES = 5, AI_INFO_SCAN_OPTIONS = 6, AI_INFO_HAS_PACER = 7, AI_INFO_NUM_DIFF_RANGES = 8,
  AI_INFO_NUM_SE_RANGES = 9, AI_INFO_DIFF_RANGE = 10, AI_INFO_SE_RANGE = 11, AI_INFO_TRIG_TYPES = 12,
  AI_INFO_MAX_QUEUE_LENGTH_BY_MODE = 13, AI_INFO_QUEUE_TYPES = 14, AI_INFO_QUEUE_LIMITS = 15, AI_INFO_FIFO_SIZE = 16,
  AI_INFO_IEPE_SUPPORTED = 17
}
 Use with ulAIGetInfo() to obtain information about the analog input subsystem for the specified device as an infoItem argument value. More...
 
enum  AiInfoItemDbl {
  AI_INFO_MIN_SCAN_RATE = 1000, AI_INFO_MAX_SCAN_RATE = 1001, AI_INFO_MAX_THROUGHPUT = 1002, AI_INFO_MAX_BURST_RATE = 1003,
  AI_INFO_MAX_BURST_THROUGHPUT = 1004
}
 Use with ulAIGetInfoDbl() to obtain information about the analog input subsystem for the specified device as an infoItem argument value. More...
 
enum  AiConfigItem {
  AI_CFG_CHAN_TYPE = 1, AI_CFG_CHAN_TC_TYPE = 2, AI_CFG_SCAN_CHAN_TEMP_UNIT = 3, AI_CFG_SCAN_TEMP_UNIT = 4,
  AI_CFG_ADC_TIMING_MODE = 5, AI_CFG_AUTO_ZERO_MODE = 6, AI_CFG_CAL_DATE = 7, AI_CFG_CHAN_IEPE_MODE = 8,
  AI_CFG_CHAN_COUPLING_MODE = 9, AI_CFG_CHAN_SENSOR_CONNECTION_TYPE = 10, AI_CFG_CHAN_OTD_MODE = 11
}
 Use with ulAISetConfig() and ulAIGetConfig() to configure the AI subsystem. More...
 
enum  AiConfigItemDbl { AI_CFG_CHAN_SLOPE = 1000, AI_CFG_CHAN_OFFSET = 1001, AI_CFG_CHAN_SENSOR_SENSITIVITY = 1002, AI_CFG_CHAN_DATA_RATE = 1003 }
 Use with ulAISetConfigDbl() and ulAIGetConfigDbl() to configure the AI subsystem. More...
 
enum  AiConfigItemStr { AI_CFG_CAL_DATE_STR = 2000, AI_CFG_CHAN_COEFS_STR = 2001 }
 
enum  AoInfoItem {
  AO_INFO_RESOLUTION = 1, AO_INFO_NUM_CHANS = 2, AO_INFO_SCAN_OPTIONS = 3, AO_INFO_HAS_PACER = 4,
  AO_INFO_NUM_RANGES = 5, AO_INFO_RANGE = 6, AO_INFO_TRIG_TYPES = 7, AO_INFO_FIFO_SIZE = 8
}
 Use with ulAOGetInfo() to obtain information about the analog output subsystem for the specified device as an infoItem argument value. More...
 
enum  AoInfoItemDbl { AO_INFO_MIN_SCAN_RATE = 1000, AO_INFO_MAX_SCAN_RATE = 1001, AO_INFO_MAX_THROUGHPUT = 1002 }
 Use with ulAOGetInfoDbl() to obtain information about the analog output subsystem for the specified device as an infoItem argument value. More...
 
enum  AoConfigItem { AO_CFG_SYNC_MODE = 1 }
 Use with ulAOSetConfig() and ulAOGetConfig() to configure the AO subsystem. More...
 
enum  DioInfoItem {
  DIO_INFO_NUM_PORTS = 1, DIO_INFO_PORT_TYPE = 2, DIO_INFO_PORT_IO_TYPE = 3, DIO_INFO_NUM_BITS = 4,
  DIO_INFO_HAS_PACER = 5, DIO_INFO_SCAN_OPTIONS = 6, DIO_INFO_TRIG_TYPES = 7, DIO_INFO_FIFO_SIZE = 8
}
 Use with ulDIOGetInfo() to obtain information about the DIO subsystem for the specified device as an infoItem argument value. More...
 
enum  DioInfoItemDbl { DIO_INFO_MIN_SCAN_RATE = 1000, DIO_INFO_MAX_SCAN_RATE = 1001, DIO_INFO_MAX_THROUGHPUT = 1002 }
 Use with ulDIOGetInfoDbl() as an infoItem argument to obtain information about the DIO subsystem for the specified device. More...
 
enum  DioConfigItem { DIO_CFG_PORT_DIRECTION_MASK = 1, DIO_CFG_PORT_INITIAL_OUTPUT_VAL = 2, DIO_CFG_PORT_ISO_FILTER_MASK = 3, DIO_CFG_PORT_LOGIC = 4 }
 Use with ulDIOGetConfig() and/or ulDIOSetConfig() as a configItem argument value to get the current configuration of the specified digital port on the specified device. More...
 
enum  CtrInfoItem {
  CTR_INFO_NUM_CTRS = 1, CTR_INFO_MEASUREMENT_TYPES = 2, CTR_INFO_MEASUREMENT_MODES = 3, CTR_INFO_REGISTER_TYPES = 4,
  CTR_INFO_RESOLUTION = 5, CTR_INFO_HAS_PACER = 6, CTR_INFO_SCAN_OPTIONS = 7, CTR_INFO_TRIG_TYPES = 8,
  CTR_INFO_FIFO_SIZE = 9
}
 Use with ulCtrGetInfo() to obtain information about the counter subsystem for the specified device as an infoItem argument value. More...
 
enum  CtrInfoItemDbl { CTR_INFO_MIN_SCAN_RATE = 1000, CTR_INFO_MAX_SCAN_RATE = 1001, CTR_INFO_MAX_THROUGHPUT = 1002 }
 Use with ulCtrGetInfoDbl() to obtain information about the counter subsystem for the specified device as an infoItem argument value. More...
 
enum  CtrConfigItem { CTR_CFG_REG = 1 }
 Use with ulCtrSetConfig() and ulCtrGetConfig() to configure the Ctr subsystem. More...
 
enum  TmrInfoItem { TMR_INFO_NUM_TMRS = 1, TMR_INFO_TYPE = 2 }
 Use with ulTmrGetInfo() to obtain information about the timer subsystem for the specified device as an infoItem argument value. More...
 
enum  TmrInfoItemDbl { TMR_INFO_MIN_FREQ = 1000, TMR_INFO_MAX_FREQ = 1001 }
 Use with ulTmrGetInfoDbl() to obtain information about the timer subsystem for the specified device as an infoItem argument value. More...
 
enum  DaqIInfoItem { DAQI_INFO_CHAN_TYPES = 1, DAQI_INFO_SCAN_OPTIONS = 2, DAQI_INFO_TRIG_TYPES = 3, DAQI_INFO_FIFO_SIZE = 4 }
 Use with ulDaqIGetInfo() to obtain information about the DAQ input subsystem for the specified device as an infoItem argument value. More...
 
enum  DaqIInfoItemDbl { DAQI_INFO_MIN_SCAN_RATE = 1000, DAQI_INFO_MAX_SCAN_RATE = 1001, DAQI_INFO_MAX_THROUGHPUT = 1002 }
 Use with ulDaqIGetInfoDbl() to obtain information about the DAQ input subsystem for the specified device as an infoItem argument value. More...
 
enum  DaqOInfoItem { DAQO_INFO_CHAN_TYPES = 1, DAQO_INFO_SCAN_OPTIONS = 2, DAQO_INFO_TRIG_TYPES = 3, DAQO_INFO_FIFO_SIZE = 4 }
 Use with ulDaqOGetInfo() to obtain information about the DAQ output subsystem for the specified device as an infoItem argument value. More...
 
enum  DaqOInfoItemDbl { DAQO_INFO_MIN_SCAN_RATE = 1000, DAQO_INFO_MAX_SCAN_RATE = 1001, DAQO_INFO_MAX_THROUGHPUT = 1002 }
 Use with ulDaqOGetInfoDbl() to obtain information about the DAQ output subsystem for the specified device as an infoItem argument value. More...
 

Functions

UlError ulGetDaqDeviceInventory (DaqDeviceInterface interfaceTypes, DaqDeviceDescriptor daqDevDescriptors[], unsigned int *numDescriptors)
 Get the list of MCC devices available to the system. More...
 
DaqDeviceHandle ulCreateDaqDevice (DaqDeviceDescriptor daqDevDescriptor)
 Create a device object within the Universal Library for the DAQ device specified by the descriptor. More...
 
UlError ulGetDaqDeviceDescriptor (DaqDeviceHandle daqDeviceHandle, DaqDeviceDescriptor *daqDeviceDescriptor)
 Get descriptor information for a device. More...
 
UlError ulConnectDaqDevice (DaqDeviceHandle daqDeviceHandle)
 Establish a connection to a physical DAQ device. More...
 
UlError ulDisconnectDaqDevice (DaqDeviceHandle daqDeviceHandle)
 Disconnect from a device. More...
 
UlError ulReleaseDaqDevice (DaqDeviceHandle daqDeviceHandle)
 Remove a device from the Universal Library, and release all resources associated with that device. More...
 
UlError ulIsDaqDeviceConnected (DaqDeviceHandle daqDeviceHandle, int *connected)
 The connection status of a DAQ device. More...
 
UlError ulFlashLed (DaqDeviceHandle daqDeviceHandle, int flashCount)
 Causes the LED on a DAQ device to flash. More...
 
UlError ulAIn (DaqDeviceHandle daqDeviceHandle, int channel, AiInputMode inputMode, Range range, AInFlag flags, double *data)
 Returns the value read from an A/D channel. More...
 
UlError ulAInScan (DaqDeviceHandle daqDeviceHandle, int lowChan, int highChan, AiInputMode inputMode, Range range, int samplesPerChan, double *rate, ScanOption options, AInScanFlag flags, double data[])
 Scans a range of A/D channels, and stores the samples in an array. More...
 
UlError ulAInScanStatus (DaqDeviceHandle daqDeviceHandle, ScanStatus *status, TransferStatus *xferStatus)
 Returns the status, count, and index of an A/D scan operation. More...
 
UlError ulAInScanStop (DaqDeviceHandle daqDeviceHandle)
 Stops the analog input operation currently running. More...
 
UlError ulAInScanWait (DaqDeviceHandle daqDeviceHandle, WaitType waitType, long long waitParam, double timeout)
 Returns when the scan operation completes on the specified device, or the time specified by the timeout argument elapses. More...
 
UlError ulAInLoadQueue (DaqDeviceHandle daqDeviceHandle, AiQueueElement queue[], unsigned int numElements)
 Loads the A/D queue of a specified device. More...
 
UlError ulAInSetTrigger (DaqDeviceHandle daqDeviceHandle, TriggerType type, int trigChan, double level, double variance, unsigned int retriggerSampleCount)
 Configures the trigger parameters that will be used when ulAInScan() is called with the SO_RETRIGGER or SO_EXTTRIGGER ScanOption. More...
 
UlError ulTIn (DaqDeviceHandle daqDeviceHandle, int channel, TempScale scale, TInFlag flags, double *data)
 Returns a temperature value read from an A/D channel. More...
 
UlError ulTInArray (DaqDeviceHandle daqDeviceHandle, int lowChan, int highChan, TempScale scale, TInArrayFlag flags, double data[])
 Scans a range of A/D temperature channels, and stores the samples in an array. More...
 
UlError ulAOut (DaqDeviceHandle daqDeviceHandle, int channel, Range range, AOutFlag flags, double data)
 Writes the value of a D/A output. More...
 
UlError ulAOutArray (DaqDeviceHandle daqDeviceHandle, int lowChan, int highChan, Range range[], AOutArrayFlag flags, double data[])
 Writes values to a range of D/A channels. More...
 
UlError ulAOutScan (DaqDeviceHandle daqDeviceHandle, int lowChan, int highChan, Range range, int samplesPerChan, double *rate, ScanOption options, AOutScanFlag flags, double data[])
 Writes values to a range of D/A channels. More...
 
UlError ulAOutScanWait (DaqDeviceHandle daqDeviceHandle, WaitType waitType, long long waitParam, double timeout)
 Returns when the scan operation completes on the specified device, or the time specified by the timeout argument elapses. More...
 
UlError ulAOutScanStatus (DaqDeviceHandle daqDeviceHandle, ScanStatus *status, TransferStatus *xferStatus)
 Returns the status, count, and index of a D/A scan operation. More...
 
UlError ulAOutScanStop (DaqDeviceHandle daqDeviceHandle)
 Stops the analog output operation currently running. More...
 
UlError ulAOutSetTrigger (DaqDeviceHandle daqDeviceHandle, TriggerType type, int trigChan, double level, double variance, unsigned int retriggerSampleCount)
 Configures the trigger parameters that will be used when ulAOutScan() is called with the SO_RETRIGGER or SO_EXTTRIGGER ScanOption. More...
 
UlError ulDConfigPort (DaqDeviceHandle daqDeviceHandle, DigitalPortType portType, DigitalDirection direction)
 Configures a digital port as input or output. More...
 
UlError ulDConfigBit (DaqDeviceHandle daqDeviceHandle, DigitalPortType portType, int bitNum, DigitalDirection direction)
 Configures a digital bit as input or output. More...
 
UlError ulDIn (DaqDeviceHandle daqDeviceHandle, DigitalPortType portType, unsigned long long *data)
 Returns the value read from a digital port. More...
 
UlError ulDOut (DaqDeviceHandle daqDeviceHandle, DigitalPortType portType, unsigned long long data)
 Writes the specified value to a digital output port. More...
 
UlError ulDInArray (DaqDeviceHandle daqDeviceHandle, DigitalPortType lowPort, DigitalPortType highPort, unsigned long long data[])
 Reads the specified digital ports, and Returns the data in an array. More...
 
UlError ulDOutArray (DaqDeviceHandle daqDeviceHandle, DigitalPortType lowPort, DigitalPortType highPort, unsigned long long data[])
 Sets the values of the specified digital ports. More...
 
UlError ulDBitIn (DaqDeviceHandle daqDeviceHandle, DigitalPortType portType, int bitNum, unsigned int *bitValue)
 Returns the value of a digital bit. More...
 
UlError ulDBitOut (DaqDeviceHandle daqDeviceHandle, DigitalPortType portType, int bitNum, unsigned int bitValue)
 Writes a value to a digital bit. More...
 
UlError ulDInScan (DaqDeviceHandle daqDeviceHandle, DigitalPortType lowPort, DigitalPortType highPort, int samplesPerPort, double *rate, ScanOption options, DInScanFlag flags, unsigned long long data[])
 Reads a range of digital ports. More...
 
UlError ulDInScanStatus (DaqDeviceHandle daqDeviceHandle, ScanStatus *status, TransferStatus *xferStatus)
 The status of a digital scan operation. More...
 
UlError ulDInScanStop (DaqDeviceHandle daqDeviceHandle)
 Stops the digital input operation currently running. More...
 
UlError ulDInScanWait (DaqDeviceHandle daqDeviceHandle, WaitType waitType, long long waitParam, double timeout)
 Returns when the scan operation completes on the specified device, or the time specified by the timeout argument elapses. More...
 
UlError ulDInSetTrigger (DaqDeviceHandle daqDeviceHandle, TriggerType type, int trigChan, double level, double variance, unsigned int retriggerSampleCount)
 Configures the trigger parameters that will be used when ulDInScan() is called with the SO_RETRIGGER or SO_EXTTRIGGER ScanOption. More...
 
UlError ulDOutScan (DaqDeviceHandle daqDeviceHandle, DigitalPortType lowPort, DigitalPortType highPort, int samplesPerPort, double *rate, ScanOption options, DOutScanFlag flags, unsigned long long data[])
 Writes data to a range of digital ports. More...
 
UlError ulDOutScanStatus (DaqDeviceHandle daqDeviceHandle, ScanStatus *status, TransferStatus *xferStatus)
 Returns the status of the digital output operation. More...
 
UlError ulDOutScanStop (DaqDeviceHandle daqDeviceHandle)
 Stops the digital output operation currently running. More...
 
UlError ulDOutScanWait (DaqDeviceHandle daqDeviceHandle, WaitType waitType, long long waitParam, double timeout)
 Returns when the scan operation completes on the specified device, or the time specified by the timeout argument elapses. More...
 
UlError ulDOutSetTrigger (DaqDeviceHandle daqDeviceHandle, TriggerType type, int trigChan, double level, double variance, unsigned int retriggerSampleCount)
 Configures the trigger parameters that will be used when ulDOutScan() is called with the SO_RETRIGGER or SO_EXTTRIGGER ScanOption. More...
 
UlError ulCIn (DaqDeviceHandle daqDeviceHandle, int counterNum, unsigned long long *data)
 Reads the value of a count register. More...
 
UlError ulCRead (DaqDeviceHandle daqDeviceHandle, int counterNum, CounterRegisterType regType, unsigned long long *data)
 Reads the value of the specified counter register. More...
 
UlError ulCLoad (DaqDeviceHandle daqDeviceHandle, int counterNum, CounterRegisterType registerType, unsigned long long loadValue)
 Loads a value into the specified counter register. More...
 
UlError ulCClear (DaqDeviceHandle daqDeviceHandle, int counterNum)
 Sets the count of the specified counter to 0. More...
 
UlError ulCConfigScan (DaqDeviceHandle daqDeviceHandle, int counterNum, CounterMeasurementType type, CounterMeasurementMode mode, CounterEdgeDetection edgeDetection, CounterTickSize tickSize, CounterDebounceMode debounceMode, CounterDebounceTime debounceTime, CConfigScanFlag flags)
 Configures a counter channel, for counters with programmable types. More...
 
UlError ulCInScan (DaqDeviceHandle daqDeviceHandle, int lowCounterNum, int highCounterNum, int samplesPerCounter, double *rate, ScanOption options, CInScanFlag flags, unsigned long long data[])
 Reads a range of counter channels. More...
 
UlError ulCInSetTrigger (DaqDeviceHandle daqDeviceHandle, TriggerType type, int trigChan, double level, double variance, unsigned int retriggerSampleCount)
 Configures the trigger parameters that will be used when ulCInScan() is called with the SO_RETRIGGER or SO_EXTTRIGGER ScanOption. More...
 
UlError ulCInScanStatus (DaqDeviceHandle daqDeviceHandle, ScanStatus *status, TransferStatus *xferStatus)
 Returns the status of a counter input operation. More...
 
UlError ulCInScanStop (DaqDeviceHandle daqDeviceHandle)
 Stops the counter input operation currently running. More...
 
UlError ulCInScanWait (DaqDeviceHandle daqDeviceHandle, WaitType waitType, long long waitParam, double timeout)
 Returns when the scan operation completes on the specified device, or the time specified by the timeout argument elapses. More...
 
UlError ulTmrPulseOutStart (DaqDeviceHandle daqDeviceHandle, int timerNum, double *frequency, double *dutyCycle, unsigned long long pulseCount, double *initialDelay, TmrIdleState idleState, PulseOutOption options)
 Starts a timer to generate digital pulses at a specified frequency and duty cycle. More...
 
UlError ulTmrPulseOutStop (DaqDeviceHandle daqDeviceHandle, int timerNum)
 Stops a timer output. More...
 
UlError ulTmrPulseOutStatus (DaqDeviceHandle daqDeviceHandle, int timerNum, TmrStatus *status)
 The status of the timer output operation, if supported. More...
 
UlError ulTmrSetTrigger (DaqDeviceHandle daqDeviceHandle, TriggerType type, int trigChan, double level, double variance, unsigned int retriggerSampleCount)
 Configures the trigger parameters that will be used when ulTmrPulseOutStart() is called with the PO_RETRIGGER or PO_EXTTRIGGER PulseOutOption, when supported. More...
 
UlError ulDaqInScan (DaqDeviceHandle daqDeviceHandle, DaqInChanDescriptor chanDescriptors[], int numChans, int samplesPerChan, double *rate, ScanOption options, DaqInScanFlag flags, double data[])
 Allows scanning of multiple input subsystems, such as analog, digital, counter, and stores the samples in an array. More...
 
UlError ulDaqInScanStatus (DaqDeviceHandle daqDeviceHandle, ScanStatus *status, TransferStatus *xferStatus)
 Returns the status of a synchronous input operation. More...
 
UlError ulDaqInScanStop (DaqDeviceHandle daqDeviceHandle)
 Stops the synchronous input operation currently running. More...
 
UlError ulDaqInScanWait (DaqDeviceHandle daqDeviceHandle, WaitType waitType, long long waitParam, double timeout)
 Returns when the scan operation completes on the specified device, or the time specified by the timeout argument elapses. More...
 
UlError ulDaqInSetTrigger (DaqDeviceHandle daqDeviceHandle, TriggerType type, DaqInChanDescriptor trigChanDescriptor, double level, double variance, unsigned int retriggerSampleCount)
 Configures the trigger parameters that will be used when ulDaqInScan() is called with the SO_RETRIGGER or SO_EXTTRIGGER ScanOption. More...
 
UlError ulDaqOutScan (DaqDeviceHandle daqDeviceHandle, DaqOutChanDescriptor chanDescriptors[], int numChans, int samplesPerChan, double *rate, ScanOption options, DaqOutScanFlag flags, double data[])
 Outputs values synchronously to analog output channels and digital output ports. More...
 
UlError ulDaqOutScanStatus (DaqDeviceHandle daqDeviceHandle, ScanStatus *status, TransferStatus *xferStatus)
 Returns the status of a synchronous output operation. More...
 
UlError ulDaqOutScanStop (DaqDeviceHandle daqDeviceHandle)
 Stops the synchronous output operation currently running. More...
 
UlError ulDaqOutScanWait (DaqDeviceHandle daqDeviceHandle, WaitType waitType, long long waitParam, double timeout)
 Returns when the scan operation completes on the specified device, or the time specified by the timeout argument elapses. More...
 
UlError ulDaqOutSetTrigger (DaqDeviceHandle daqDeviceHandle, TriggerType type, DaqInChanDescriptor trigChanDescriptor, double level, double variance, unsigned int retriggerSampleCount)
 Configures the trigger parameters that will be used when ulDaqOutScan() is called with the SO_RETRIGGER or SO_EXTTRIGGER ScanOptions. More...
 
UlError ulEnableEvent (DaqDeviceHandle daqDeviceHandle, DaqEventType eventTypes, unsigned long long eventParameter, DaqEventCallback eventCallbackFunction, void *userData)
 Binds one or more event conditions to a DaqEventCallback function. More...
 
UlError ulDisableEvent (DaqDeviceHandle daqDeviceHandle, DaqEventType eventTypes)
 Disables one or more event conditions, and disconnects their user-defined handlers. More...
 
UlError ulMemRead (DaqDeviceHandle daqDeviceHandle, MemRegion memRegion, unsigned int address, unsigned char *buffer, unsigned int count)
 Reads a value read from a specified region in memory; use with ulMemGetInfo() to retrieve information about the memory region on a DAQ device. More...
 
UlError ulMemWrite (DaqDeviceHandle daqDeviceHandle, MemRegion memRegion, unsigned int address, unsigned char *buffer, unsigned int count)
 Writes a value to a specified region in memory. More...
 
UlError ulGetErrMsg (UlError errCode, char errMsg[ERR_MSG_LEN])
 Returns the error message associated with an error code. More...
 
UlError ulGetInfoStr (UlInfoItemStr infoItem, unsigned int index, char *infoStr, unsigned int *maxConfigLen)
 Use with UlInfoItemStr to retrieve device information as a null-terminated string. More...
 
UlError ulSetConfig (UlConfigItem configItem, unsigned int index, long long configValue)
 Use with UlConfigItem to change device configuration options at runtime. More...
 
UlError ulGetConfig (UlConfigItem configItem, unsigned int index, long long *configValue)
 Returns a configuration option set for the device. More...
 
UlError ulDevGetInfo (DaqDeviceHandle daqDeviceHandle, DevInfoItem infoItem, unsigned int index, long long *infoValue)
 Use with DevInfoItem to retrieve information about the device subsystem to determine which subsystem types are supported for the device. More...
 
UlError ulDevGetConfigStr (DaqDeviceHandle daqDeviceHandle, DevConfigItemStr configItem, unsigned int index, char *configStr, unsigned int *maxConfigLen)
 Use with DevConfigItemStr to retrieve the current configuration as a null-terminated string. More...
 
UlError ulAIGetInfo (DaqDeviceHandle daqDeviceHandle, AiInfoItem infoItem, unsigned int index, long long *infoValue)
 Use with AiInfoItem to retrieve information about the AI subsystem. More...
 
UlError ulAIGetInfoDbl (DaqDeviceHandle daqDeviceHandle, AiInfoItemDbl infoItem, unsigned int index, double *infoValue)
 Use with AiInfoItemDbl to retrieve information about the AI subsystem. More...
 
UlError ulAISetConfig (DaqDeviceHandle daqDeviceHandle, AiConfigItem configItem, unsigned int index, long long configValue)
 Use with AiConfigItem to set configuration options at runtime. More...
 
UlError ulAIGetConfig (DaqDeviceHandle daqDeviceHandle, AiConfigItem configItem, unsigned int index, long long *configValue)
 Use with AiConfigItem to retrieve configuration options set for a device. More...
 
UlError ulAISetConfigDbl (DaqDeviceHandle daqDeviceHandle, AiConfigItemDbl configItem, unsigned int index, double configValue)
 Use with AiConfigItemDbl to set configuration options at runtime. More...
 
UlError ulAIGetConfigDbl (DaqDeviceHandle daqDeviceHandle, AiConfigItemDbl configItem, unsigned int index, double *configValue)
 Use with AiConfigItem to retrieve configuration options set for a device. More...
 
UlError ulAIGetConfigStr (DaqDeviceHandle daqDeviceHandle, AiConfigItemStr configItem, unsigned int index, char *configStr, unsigned int *maxConfigLen)
 Use with DevConfigItemStr to retrieve configuration information as a null-terminated string. More...
 
UlError ulAOGetInfo (DaqDeviceHandle daqDeviceHandle, AoInfoItem infoItem, unsigned int index, long long *infoValue)
 Use with AoInfoItem to retrieve information about the AO subsystem. More...
 
UlError ulAOGetInfoDbl (DaqDeviceHandle daqDeviceHandle, AoInfoItemDbl infoItem, unsigned int index, double *infoValue)
 Use with AoInfoItemDbl to retrieve information about the AO subsystem. More...
 
UlError ulAOSetConfig (DaqDeviceHandle daqDeviceHandle, AoConfigItem configItem, unsigned int index, long long configValue)
 Use with AoConfigItem to set configuration options at runtime. More...
 
UlError ulAOGetConfig (DaqDeviceHandle daqDeviceHandle, AoConfigItem configItem, unsigned int index, long long *configValue)
 Use with AoConfigItem to retrieve configuration options set for a device. More...
 
UlError ulDIOGetInfo (DaqDeviceHandle daqDeviceHandle, DioInfoItem infoItem, unsigned int index, long long *infoValue)
 Use with DioInfoItem to retrieve information about the DIO subsystem. More...
 
UlError ulDIOGetInfoDbl (DaqDeviceHandle daqDeviceHandle, DioInfoItemDbl infoItem, unsigned int index, double *infoValue)
 Use with DioInfoItemDbl to retrieve information about the DIO subsystem. More...
 
UlError ulDIOSetConfig (DaqDeviceHandle daqDeviceHandle, DioConfigItem configItem, unsigned int index, long long configValue)
 Use with DioConfigItem to retrieve information about the DIO subsystem. More...
 
UlError ulDIOGetConfig (DaqDeviceHandle daqDeviceHandle, DioConfigItem configItem, unsigned int index, long long *configValue)
 Use with DioConfigItem to retrieve the current configuration about the DIO subsystem. More...
 
UlError ulCtrGetInfo (DaqDeviceHandle daqDeviceHandle, CtrInfoItem infoItem, unsigned int index, long long *infoValue)
 Use with CtrInfoItem to retrieve information about the counter subsystem. More...
 
UlError ulCtrGetInfoDbl (DaqDeviceHandle daqDeviceHandle, CtrInfoItemDbl infoItem, unsigned int index, double *infoValue)
 Use with CtrInfoItemDbl to retrieve information about the counter subsystem. More...
 
UlError ulCtrGetConfig (DaqDeviceHandle daqDeviceHandle, CtrConfigItem configItem, unsigned int index, long long *configValue)
 Use with CtrConfigItem to retrieve configuration options set for a device. More...
 
UlError ulCtrSetConfig (DaqDeviceHandle daqDeviceHandle, CtrConfigItem configItem, unsigned int index, long long configValue)
 Use with CtrConfigItem to set configuration options at runtime. More...
 
UlError ulTmrGetInfo (DaqDeviceHandle daqDeviceHandle, TmrInfoItem infoItem, unsigned int index, long long *infoValue)
 Use with TmrInfoItem to retrieve information about the timer subsystem. More...
 
UlError ulTmrGetInfoDbl (DaqDeviceHandle daqDeviceHandle, TmrInfoItemDbl infoItem, unsigned int index, double *infoValue)
 Use with TmrInfoItemDbl to retrieve information about the timer subsystem. More...
 
UlError ulDaqIGetInfo (DaqDeviceHandle daqDeviceHandle, DaqIInfoItem infoItem, unsigned int index, long long *infoValue)
 Use with DaqIInfoItem to retrieve information about the synchronous input subsystem. More...
 
UlError ulDaqIGetInfoDbl (DaqDeviceHandle daqDeviceHandle, DaqIInfoItemDbl infoItem, unsigned int index, double *infoValue)
 Use with DaqIInfoItemDbl to retrieve information about the synchronous input subsystem. More...
 
UlError ulDaqOGetInfo (DaqDeviceHandle daqDeviceHandle, DaqOInfoItem infoItem, unsigned int index, long long *infoValue)
 Use with DaqOInfoItem to retrieve information about the synchronous output subsystem. More...
 
UlError ulDaqOGetInfoDbl (DaqDeviceHandle daqDeviceHandle, DaqOInfoItemDbl infoItem, unsigned int index, double *infoValue)
 Use with DaqOInfoItemDbl to retrieve information about the synchronous output subsystem. More...
 
UlError ulMemGetInfo (DaqDeviceHandle daqDeviceHandle, MemRegion memRegion, MemDescriptor *memDescriptor)
 Use with MemDescriptor to retrieve information about the memory region on a DAQ device. More...
 
DaqDeviceHandle ulCreateDaqDevicePtr (DaqDeviceDescriptor *daqDevDescriptor)
 Create a device object within the Universal Library for the DAQ device specified by the descriptor. More...
 

Macro Definition Documentation

#define ERR_MSG_LEN   512
#define NOCALIBRATEDATA   1 << 1
#define NOCLEAR   1 << 3
#define NOSCALEDATA   1 << 0
#define SIMULTANEOUS   1 << 2

Typedef Documentation

A structure that defines an analog input queue element.

A structure that defines a particular DAQ device, usually obtained using ulGetDaqDeviceInventory().

typedef long long DaqDeviceHandle

The DAQ device.

typedef void(* DaqEventCallback)(DaqDeviceHandle, DaqEventType, unsigned long long, void *)

The callback function called in response to an event condition.

A structure that defines an input channel and its properties.

Used with ulDaqInScan()

A structure that defines an output channel and its properties.

Used with ulDaqOutScan().

typedef struct MemDescriptor MemDescriptor

A structure that defines the location and access properties of the physical memory of a device.

A structure containing information about the progress of the specified scan operation.

Enumeration Type Documentation

ADC timing modes.

Enumerator
ADC_TM_AUTO 

The timing mode is set automatically.

ADC_TM_HIGH_RES 

Acquires data in samples per 1000 seconds per channel.

ADC_TM_HIGH_SPEED 

High speed timing mode.

Device queue limitations.

Bitmask indicating all queue limitations. Returned to the infoValue argument by ulAIGetInfo() using AiInfoItem AI_INFO_QUEUE_LIMITS.
See also AI_INFO_QUEUE_TYPES and AI_INFO_MAX_QUEUE_LENGTH_BY_MODE to determine queue capabilities.

Enumerator
UNIQUE_CHAN 

A particular channel number cannot appear more than once in the queue.

ASCENDING_CHAN 

Channel numbers must be listed in ascending order within the queue.

CONSECUTIVE_CHAN 

Channel numbers must be listed in contiguous order within the queue.

enum AiChanType

Analog input channel types.

Bitmask indicating all supported channel types. Returned to the infoValue argument by ulAIGetInfo() using AiInfoItem AI_INFO_CHAN_TYPES.

Enumerator
AI_VOLTAGE 

Voltage.

AI_TC 

Thermocouple.

AI_RTD 

Resistance Temperature Detector (RTD)

AI_THERMISTOR 

Thermistor.

AI_SEMICONDUCTOR 

Semiconductor.

AI_DISABLED 

Disabled.

Use with ulAISetConfig() and ulAIGetConfig() to configure the AI subsystem.

Enumerator
AI_CFG_CHAN_TYPE 

The channel type of the specified channel.

Set with AiChanType.

AI_CFG_CHAN_TC_TYPE 

The thermocouple type of the specified channel.

Set with TcType.

AI_CFG_SCAN_CHAN_TEMP_UNIT 

The temperature unit of the specified analog input scan channel.

Set with TempUnit.

AI_CFG_SCAN_TEMP_UNIT 

The analog input scan temperature unit.

Set with TempUnit.

AI_CFG_ADC_TIMING_MODE 

The timing mode.

Set with AdcTimingMode.

AI_CFG_AUTO_ZERO_MODE 

The auto zero mode.

Set with AutoZeroMode.

AI_CFG_CAL_DATE 

The date when the device was calibrated last in UNIX Epoch time.

AI_CFG_CHAN_IEPE_MODE 

The IEPE current excitation mode for the specified channel.

Set with IepeMode.

AI_CFG_CHAN_COUPLING_MODE 

The coupling mode for the specified device.

Set with CouplingMode.

AI_CFG_CHAN_SENSOR_CONNECTION_TYPE 

The connection type of the sensor connected to the specified channel.

AI_CFG_CHAN_OTD_MODE 

The open thermocouple detection mode for the specified channel.

Set with OtdMode.

Use with ulAISetConfigDbl() and ulAIGetConfigDbl() to configure the AI subsystem.

Enumerator
AI_CFG_CHAN_SLOPE 

The custom slope of the specified channel.

AI_CFG_CHAN_OFFSET 

The custom offset of the specified channel.

AI_CFG_CHAN_SENSOR_SENSITIVITY 

The sensitivity of the sensor connected to the specified channel.

AI_CFG_CHAN_DATA_RATE 

The data rate of the specified channel.

Enumerator
AI_CFG_CAL_DATE_STR 

Calibration date.

AI_CFG_CHAN_COEFS_STR 

The channel coefficients used for the configured sensor.

enum AiInfoItem

Use with ulAIGetInfo() to obtain information about the analog input subsystem for the specified device as an infoItem argument value.

Enumerator
AI_INFO_RESOLUTION 

Returns the A/D resolution in number of bits to the infoValue argument.

Index is ignored.

AI_INFO_NUM_CHANS 

Returns the total number of A/D channels to the infoValue argument.

Index is ignored.

AI_INFO_NUM_CHANS_BY_MODE 

Returns the number of A/D channels for the specified channel mode to the infoValue argument.

Set index to one of the AiInputMode enum values.

AI_INFO_NUM_CHANS_BY_TYPE 

Returns the number of A/D channels for the specified channel type to the infoValue argument.

Set index to one of the AiChanType enum values.

AI_INFO_CHAN_TYPES 

Returns a bitmask of supported AiChanType values to the infoValue argument.

Index is ignored.

AI_INFO_SCAN_OPTIONS 

Returns a bitmask of supported ScanOption values to the infoValue argument.

Index is ignored.

AI_INFO_HAS_PACER 

Returns a zero or non-zero value to the infoValue argument.

If non-zero, paced operations are supported. Index is ignored.

AI_INFO_NUM_DIFF_RANGES 

Returns the number of differential ranges supported to the infoValue argument.

Index is ignored.

AI_INFO_NUM_SE_RANGES 

Returns the number of single-ended ranges supported to the infoValue argument.

Index is ignored.

AI_INFO_DIFF_RANGE 

Returns a Range value to the infoValue argument based on the value of the index argument specified.

Index should be a number between zero and (the number of differential ranges supported) – 1. See AI_INFO_NUM_DIFF_RANGES.

AI_INFO_SE_RANGE 

Returns a Range value to the infoValue argument based on the value of the index argument specified.

Index should be a number between zero and (the number of single-ended ranges supported) – 1. See AI_INFO_NUM_SE_RANGES.

AI_INFO_TRIG_TYPES 

Returns a bitmask of supported TriggerType values to the infoValue argument.

Index is ignored.

AI_INFO_MAX_QUEUE_LENGTH_BY_MODE 

Returns the maximum length of the queue for the specified channel mode to the infoValue argument.

Set index to one of the AiInputMode enum values.

AI_INFO_QUEUE_TYPES 

Returns a bitmask of supported AiQueueType values to the infoValue argument.

Index is ignored.

AI_INFO_QUEUE_LIMITS 

Returns a bitmask of AiChanQueueLimitation values to the infoValue argument that apply to the queue.

Index is ignored.

AI_INFO_FIFO_SIZE 

Returns the FIFO size in bytes to the infoValue argument.

Index is ignored.

AI_INFO_IEPE_SUPPORTED 

Returns a zero or non-zero value to the infoValue argument.

If non-zero, IEPE mode is supported. Index is ignored.

Use with ulAIGetInfoDbl() to obtain information about the analog input subsystem for the specified device as an infoItem argument value.

Enumerator
AI_INFO_MIN_SCAN_RATE 

Returns the minimum scan rate in samples per second to the infoValue argument.

Index is ignored.

AI_INFO_MAX_SCAN_RATE 

Returns the maximum scan rate in samples per second to the infoValue argument.

Index is ignored.

AI_INFO_MAX_THROUGHPUT 

Returns the maximum throughput in samples per second to the infoValue argument.

Index is ignored.

AI_INFO_MAX_BURST_RATE 

Returns the maximum scan rate in samples per second when using the SO_BURSTIO ScanOption to the infoValue argument.

Index is ignored.

AI_INFO_MAX_BURST_THROUGHPUT 

Returns the maximum throughput in samples per second when using the SO_BURSTIO ScanOption to the infoValue argument.

Index is ignored.

A/D channel input modes.

Enumerator
AI_DIFFERENTIAL 

Differential.

AI_SINGLE_ENDED 

Single-ended.

AI_PSEUDO_DIFFERENTIAL 

Pseudo-differential.

enum AInFlag

Use as the flags argument value for ulAIn() to set the properties of data returned.

Enumerator
AIN_FF_DEFAULT 

Data is returned with scaling and calibration factors applied.

AIN_FF_NOSCALEDATA 

Data is returned in native format, without scaling applied.

AIN_FF_NOCALIBRATEDATA 

Data is returned without calibration factors applied.

Use as the flags argument value for the ulAInScan() function to set properties of data returned.

Enumerator
AINSCAN_FF_DEFAULT 

Data is returned with scaling and calibration factors applied.

AINSCAN_FF_NOSCALEDATA 

Data is returned in native format, without scaling applied.

AINSCAN_FF_NOCALIBRATEDATA 

Data is returned without calibration factors applied.

Bitmask indicating supported queue types.

Returned to the infoValue argument by ulAIGetInfo() using AiInfoItem AI_INFO_QUEUE_TYPES.

Enumerator
CHAN_QUEUE 

The AI subsystem supports a channel queue.

GAIN_QUEUE 

The AI subsystem supports a gain queue.

MODE_QUEUE 

The AI subsystem supports a mode queue.

Use with ulAOSetConfig() and ulAOGetConfig() to configure the AO subsystem.

Enumerator
AO_CFG_SYNC_MODE 

The sync mode.

Set with AOutSyncMode.

enum AoInfoItem

Use with ulAOGetInfo() to obtain information about the analog output subsystem for the specified device as an infoItem argument value.

Enumerator
AO_INFO_RESOLUTION 

Returns the D/A resolution in number of bits to the infoValue argument.

Index is ignored.

AO_INFO_NUM_CHANS 

Returns the total number of D/A channels to the infoValue argument.

Index is ignored.

AO_INFO_SCAN_OPTIONS 

Returns a bitmask of supported ScanOption values to the infoValue argument.

Index is ignored.

AO_INFO_HAS_PACER 

Returns a zero or non-zero value to the infoValue argument.

If non-zero, paced operations are supported. Index is ignored.

AO_INFO_NUM_RANGES 

Returns the number of analog output ranges supported to the infoValue argument.

Index is ignored.

AO_INFO_RANGE 

Returns a Range value to the infoValue argument based on the value of the index argument specified.

Index should be a number between zero and (the number of ranges supported) – 1. See AO_INFO_NUM_RANGES.

AO_INFO_TRIG_TYPES 

Returns a bitmask of supported TriggerType values to the infoValue argument.

Index is ignored.

AO_INFO_FIFO_SIZE 

Returns the FIFO size in bytes to the infoValue argument.

Index is ignored.

Use with ulAOGetInfoDbl() to obtain information about the analog output subsystem for the specified device as an infoItem argument value.

Enumerator
AO_INFO_MIN_SCAN_RATE 

Returns the minimum scan rate in samples per second to the infoValue argument.

Index is ignored.

AO_INFO_MAX_SCAN_RATE 

Returns the maximum scan rate in samples per second to the infoValue argument.

Index is ignored.

AO_INFO_MAX_THROUGHPUT 

Returns the maximum throughput in samples per second to the infoValue argument.

Index is ignored.

Use as the flags argument value for ulAOutArray() to set the properties of data supplied to the function.

Enumerator
AOUTARRAY_FF_DEFAULT 

Scaled data is supplied and calibration factors are applied to output.

AOUTARRAY_FF_NOSCALEDATA 

Data is supplied in native format (usually, values ranging from 0 to 2resolution - 1).

AOUTARRAY_FF_NOCALIBRATEDATA 

Data is output without calibration factors applied.

AOUTARRAY_FF_SIMULTANEOUS 

All of the specified channels will be updated simultaneously.

enum AOutFlag

Use as the flags argument value for ulAOut() to set the properties of data supplied to the function.

Enumerator
AOUT_FF_DEFAULT 

Scaled data is supplied and calibration factors are applied to output.

AOUT_FF_NOSCALEDATA 

Data is supplied in native format (usually, values ranging from 0 to 2resolution - 1).

AOUT_FF_NOCALIBRATEDATA 

Data is output without calibration factors applied.

Use as the flags argument value for ulAOutScan() to set the properties of data supplied to the function.

Enumerator
AOUTSCAN_FF_DEFAULT 

Scaled data is supplied and calibration factors are applied to output.

AOUTSCAN_FF_NOSCALEDATA 

Data is supplied in native format (usually, values ranging from 0 to 2resolution - 1.

AOUTSCAN_FF_NOCALIBRATEDATA 

Data is output without calibration factors applied.

Use with AoConfigItem to set configuration options at runtime.

Enumerator
AOSM_SLAVE 

Receive the D/A Load signal from an external source.

AOSM_MASTER 

Output the internal D/A Load signal.

Auto zero modes.

Enumerator
AZM_NONE 

Disabled.

AZM_EVERY_SAMPLE 

Perform auto zero on every thermocouple reading.

AZM_ONCE 

Perform auto zero before every scan.

Use as the flags argument value for ulCConfigScan().

Reserved for future use.

Enumerator
CF_DEFAULT 

Placeholder value.

Standard functionality.

Use as the flags argument value for ulCInScan() to set counter properties.

Enumerator
CINSCAN_FF_DEFAULT 

Default counter behavior.

CINSCAN_FF_CTR16_BIT 

Sets up the counter as a 16-bit counter channel.

CINSCAN_FF_CTR32_BIT 

Sets up the counter as a 32-bit counter channel.

CINSCAN_FF_CTR64_BIT 

Sets up the counter as a 64-bit counter channel.

CINSCAN_FF_NOCLEAR 

Does not clear the counter to 0 at the start of each scan.

CINSCAN_FF_CTR48_BIT 

Sets up the counter as a 48-bit counter channel.

Use as the value for the debounceTime argument for ulCConfigScan() to set the glitch rejection properties of a counter.

Enumerator
CDM_NONE 

Disables the debounce feature.

CDM_TRIGGER_AFTER_STABLE 

The counter is incremented only after the counter input is stable for a period of a length defined by CounterDebounceTime.

CDM_TRIGGER_BEFORE_STABLE 

The counter is incremented on the first edge at the counter input, then waits for a stable period of a length defined by CounterDebounceTime before counting the next edge.

Use as the value for the debounceTime argument for ulCConfigScan() when CounterDebounceMode is not CDM_NONE.

Enumerator
CDT_DEBOUNCE_0ns 

Disables debounce.

Valid only when debounceMode is set to CDM_NONE.

CDT_DEBOUNCE_500ns 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 500ns.

CDT_DEBOUNCE_1500ns 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 1500 ns.

CDT_DEBOUNCE_3500ns 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 3500 ns.

CDT_DEBOUNCE_7500ns 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 7500 ns.

CDT_DEBOUNCE_15500ns 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 15500 ns.

CDT_DEBOUNCE_31500ns 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 31500 ns.

CDT_DEBOUNCE_63500ns 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 63500 ns.

CDT_DEBOUNCE_127500ns 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 127500 ns.

CDT_DEBOUNCE_100us 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 100 us.

CDT_DEBOUNCE_300us 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 300 us.

CDT_DEBOUNCE_700us 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 700 us.

CDT_DEBOUNCE_1500us 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 1500 us.

CDT_DEBOUNCE_3100us 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 3100 us.

CDT_DEBOUNCE_6300us 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 6300 us.

CDT_DEBOUNCE_12700us 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 12700 us.

CDT_DEBOUNCE_25500us 

Sets the time period that the counter input must be stable when using CDM_TRIGGER_AFTER_STABLE or CDM_TRIGGER_BEFORE_STABLE CounterDebounceModes to 25500 us.

Use as the value for the edgeDetection argument for ulCConfigScan().

Enumerator
CED_RISING_EDGE 

Rising edge.

CED_FALLING_EDGE 

Falling edge.

Use as the value for the mode argument for ulCConfigScan().

This value should be set consistent with the type argument value.

Enumerator
CMM_DEFAULT 

Configures the counter for default counting modes for the CMT_COUNT measurement type.

CMM_CLEAR_ON_READ 

Configures the counter to clear after every read for the CMT_COUNT measurement type.

CMM_COUNT_DOWN 

Configures the counter to count down for the CMT_COUNT measurement type.

CMM_GATE_CONTROLS_DIR 

Configures the counter to increment when the gate pin is high, and decrement when the gate pin is low for the CMT_COUNT measurement type.

CMM_GATE_CLEARS_CTR 

Configures the counter to clear when the gate input is high for the CMT_COUNT measurement type.

CMM_GATE_TRIG_SRC 

Configures the counter to start counting when the gate input goes active for the CMT_COUNT measurement type.

By default, active is on the rising edge. The gate is re-armed when the counter is loaded and when ulCConfigScan() is called.

CMM_OUTPUT_ON 

Configures the counter output to go high when the counter reaches the value of output register 0 for the CMT_COUNT measurement type, and go low when the counter reaches the value of output register 1.

Use ulCLoad() to set or read the value of the output registers.

CMM_OUTPUT_INITIAL_STATE_HIGH 

Configures the initial state of the counter output pin high for the CMT_COUNT measurement type.

CMM_NO_RECYCLE 

Configures the counter to restart when a clear or load operation is performed, or the count direction changes for the CMT_COUNT measurement type.

CMM_RANGE_LIMIT_ON 

When counting up, configures the counter to roll over to the min limit when the max limit is reached for the CMT_COUNT measurement type.

When counting down, configures the counter to roll over to max limit when the min limit is reached. When counting up with CMM_NO_RECYCLE enabled, the counter freezes whenever the count reaches the value that was loaded into the max limit register. When counting down with CMM_NO_RECYCLE enabled, the counter freezes whenever the count reaches the value that was loaded into the min limit register. Counting resumes if the counter is reset or the direction changes.

CMM_GATING_ON 

Enables the counter when the mapped channel or gate pin is high for the CMT_COUNT measurement type.

CMM_INVERT_GATE 

Inverts the polarity of the gate input for the CMT_COUNT measurement type.

CMM_PERIOD_X1 

Latches the counter measurement each time 1 complete period is observed for the CMT_PERIOD measurement type.

CMM_PERIOD_X10 

Latches the counter measurement each time 10 complete periods are observed for the CMT_PERIOD measurement type.

CMM_PERIOD_X100 

Latches the counter measurement each time 100 complete periods are observed for the CMT_PERIOD measurement type.

CMM_PERIOD_X1000 

Latches the counter measurement each time 1000 complete periods are observed for the CMT_PERIOD measurement type.

CMM_PERIOD_GATING_ON 

Enables the counter when the mapped channel or gate pin is high for the CMT_PERIOD measurement type.

CMM_PERIOD_INVERT_GATE 

Inverts the polarity of the gate input for the CMT_PERIOD measurement type.

CMM_PULSE_WIDTH_DEFAULT 

Configures the counter for default pulse width modes for the CMT_PULSE_WIDTH measurement type.

CMM_PULSE_WIDTH_GATING_ON 

Enables the counter when the mapped channel or gate pin is high for the CMT_PULSE_WIDTH measurement type.

CMM_PULSE_WIDTH_INVERT_GATE 

Inverts the polarity of the gate input for the CMT_PULSE_WIDTH measurement type.

CMM_TIMING_DEFAULT 

Configures the counter for default timing modes for the CMT_TIMING measurement type.

CMM_TIMING_MODE_INVERT_GATE 

Inverts the polarity of the gate input for the CMT_TIMING measurement type.

CMM_ENCODER_X1 

Sets the encoder measurement mode to X1 for the CMT_ENCODER measurement type.

CMM_ENCODER_X2 

Sets the encoder measurement mode to X2 for the CMT_ENCODER measurement type.

CMM_ENCODER_X4 

Sets the encoder measurement mode to X4 for the CMT_ENCODER measurement type.

CMM_ENCODER_LATCH_ON_Z 

Configures the encoder Z mapped signal to latch the counter outputs for the CMT_ENCODER measurement type.

CMM_ENCODER_CLEAR_ON_Z 

Clears the counter when the index (Z input) goes active for the CMT_ENCODER measurement type.

CMM_ENCODER_NO_RECYCLE 

Disables the counter when a count overflow or underflow occurs for the CMT_ENCODER measurement type; re-enables when a clear or load operation is performed on the counter.

CMM_ENCODER_RANGE_LIMIT_ON 

Enables upper and lower limits for the CMT_ENCODER measurement type.

CMM_ENCODER_Z_ACTIVE_EDGE 

Sets the encoder Z signal as the active edge for the CMT_ENCODER measurement type.

CMM_LATCH_ON_INDEX 

Configures the counter to be latched by the signal on the index pin for the CMT_COUNT measurement type.

CMM_PHB_CONTROLS_DIR 

Configures the counter to increment when the phase B pin is high, and decrement when the phase B pin is low for the CMT_COUNT measurement type.

CMM_DECREMENT_ON 

Configures the counter to decrement by the signal on the mapped channel for the CMT_COUNT measurement type.

Use as the value for the type argument for ulCConfigScan().

Use ulCtrGetInfo() with the CTR_INFO_MEASUREMENT_TYPES infoItem to check compatibility.

Enumerator
CMT_COUNT 

Counter measurement.

The counter increments on the active edge of the input.

CMT_PERIOD 

Period measurement.

Measures the number of ticks between active edges of the input, with the granularity of measurement set by the tickSize argument of ulCConfigScan().

CMT_PULSE_WIDTH 

Pulsewidth measurement.

Measures the number of ticks between the active edge of the counter input and the following edge of the counter input, with the granularity of measurement set by the tickSize argument of ulCConfigScan().

CMT_TIMING 

Timing measurement.

Measures the number of ticks between the active edge of the counter input and the active edge of the gate input, with granularity of measurement set by the tickSize argument of ulCConfigScan().

CMT_ENCODER 

Encoder measurement.

Configures the counter as an encoder, if supported.

Used for the ulCLoad() registerType argument, and as the value returned by ulCtrGetInfo() for the CTR_INFO_REGISTER_TYPES infoItem.

Enumerator
CRT_COUNT 

Counter register.

CRT_LOAD 

Load register.

CRT_MIN_LIMIT 

Max Limit register.

CRT_MAX_LIMIT 

Min Limit register.

CRT_OUTPUT_VAL0 

The register that sets the count value at which the counter output will change state from its original state.

CRT_OUTPUT_VAL1 

The register that sets the count value at which the counter output will reset to its original state.

Use as the value for the tickSize argument for ulCConfigScan() when CounterDebounceMode is CMT_PERIOD, CMT_PULSE_WIDTH, or CMT_TIMING.

Refer to the device hardware manual to determine which sizes are compatible with your device.

Enumerator
CTS_TICK_20PT83ns 

Sets the tick size to 20.83 ns.

CTS_TICK_208PT3ns 

Sets the tick size to 208.3 ns.

CTS_TICK_2083PT3ns 

Sets the tick size to 2083.3 ns.

CTS_TICK_20833PT3ns 

Sets the tick size to 20833.3 ns.

CTS_TICK_20ns 

Sets the tick size to 20 ns.

CTS_TICK_200ns 

Sets the tick size to 200 ns.

CTS_TICK_2000ns 

Sets the tick size to 2000 ns.

CTS_TICK_20000ns 

Sets the tick size to 20000 ns.

Coupling modes.

Enumerator
CM_DC 

DC coupling.

CM_AC 

AC coupling.

Use with ulCtrSetConfig() and ulCtrGetConfig() to configure the Ctr subsystem.

Enumerator
CTR_CFG_REG 

Returns or writes a bitmask indicating the configuration of one or more counters.

Use with ulCtrGetInfo() to obtain information about the counter subsystem for the specified device as an infoItem argument value.

Enumerator
CTR_INFO_NUM_CTRS 

Returns the total number of counters to the infoValue argument.

Index is ignored.

CTR_INFO_MEASUREMENT_TYPES 

Returns a bitmask of supported CounterMeasurementType values of the counter specified by the index argument to the infoValue argument.

CTR_INFO_MEASUREMENT_MODES 

Returns a bitmask of supported CounterMeasurementMode values compatible with the CounterMeasurementType specified by the index argument to the infoValue argument.

CTR_INFO_REGISTER_TYPES 

Returns a bitmask of supported CounterRegisterType values to the infoValue argument.

Index is ignored.

CTR_INFO_RESOLUTION 

Returns the resolution to the infoValue argument.

Index is ignored.

CTR_INFO_HAS_PACER 

Returns a zero or non-zero value to the infoValue argument.

If non-zero, paced operations are supported. Index is ignored.

CTR_INFO_SCAN_OPTIONS 

Returns a bitmask of supported ScanOption values to the infoValue argument.

Index is ignored.

CTR_INFO_TRIG_TYPES 

Returns a bitmask of supported TriggerType values to the infoValue argument.

Index is ignored.

CTR_INFO_FIFO_SIZE 

Returns the FIFO size in bytes to the infoValue argument.

Index is ignored.

Use with ulCtrGetInfoDbl() to obtain information about the counter subsystem for the specified device as an infoItem argument value.

Enumerator
CTR_INFO_MIN_SCAN_RATE 

Returns the minimum scan rate in samples per second to the infoValue argument.

Index is ignored.

CTR_INFO_MAX_SCAN_RATE 

Returns the maximum scan rate in samples per second to the infoValue argument.

Index is ignored.

CTR_INFO_MAX_THROUGHPUT 

Returns the maximum throughput in samples per second to the infoValue argument.

Index is ignored.

A bitmask defining the physical connection interface used to communicate with a DAQ device.

Used with ulGetDaqDeviceInventory() as an interfaceTypes argument value.

Enumerator
USB_IFC 

USB interface.

BLUETOOTH_IFC 

Bluetooth interface.

ETHERNET_IFC 

Ethernet interface.

ANY_IFC 

Any interface.

A bitmask defining the types of conditions that trigger an event.

Used with ulDevGetInfo() as return values for DEV_INFO_DAQ_EVENT_TYPES, and as the eventType argument value for ulEnableEvent() and ulDisableEvent().

Enumerator
DE_NONE 

No event type.

Possible return value for ulDevGetInfo(). Not a valid value for ulEnableEvent() and ulDisableEvent().

DE_ON_DATA_AVAILABLE 

Defines an event trigger condition that occurs when a specified number of samples are available.

DE_ON_INPUT_SCAN_ERROR 

Defines an event trigger condition that occurs when an input scan error occurs.

DE_ON_END_OF_INPUT_SCAN 

Defines an event trigger condition that occurs upon completion of an input scan operation such as ulAInScan().

DE_ON_OUTPUT_SCAN_ERROR 

Defines an event trigger condition that occurs when an output scan error occurs.

DE_ON_END_OF_OUTPUT_SCAN 

Defines an event trigger condition that occurs upon completion of an output scan operation such as ulAOutScan().

Use with ulDaqIGetInfo() to obtain information about the DAQ input subsystem for the specified device as an infoItem argument value.

Enumerator
DAQI_INFO_CHAN_TYPES 

Returns a bitmask of supported DaqInChanType values to the infoValue argument.

Index is ignored.

DAQI_INFO_SCAN_OPTIONS 

Returns a bitmask of supported ScanOption values to the infoValue argument.

Index is ignored.

DAQI_INFO_TRIG_TYPES 

Returns a bitmask of supported TriggerType values to the infoValue argument.

Index is ignored.

DAQI_INFO_FIFO_SIZE 

Returns the FIFO size in bytes to the infoValue argument.

Index is ignored.

Use with ulDaqIGetInfoDbl() to obtain information about the DAQ input subsystem for the specified device as an infoItem argument value.

Enumerator
DAQI_INFO_MIN_SCAN_RATE 

Returns the minimum scan rate in samples per second to the infoValue argument.

Index is ignored.

DAQI_INFO_MAX_SCAN_RATE 

Returns the maximum scan rate in samples per second to the infoValue argument.

Index is ignored.

DAQI_INFO_MAX_THROUGHPUT 

Returns the minimum throughput to the infoValue argument.

Index is ignored.

A bitmask used with synchronous input scanning operations as a field in the DaqInChanDescriptor struct, and as a value returned in the infoValue argument for ulDaqIGetInfo() used with DAQI_INFO_CHAN_TYPES.

Enumerator
DAQI_ANALOG_DIFF 

Analog input channel, differential mode.

DAQI_ANALOG_SE 

Analog input channel, single-ended mode.

DAQI_DIGITAL 

Digital channel.

DAQI_CTR16 

16-bit counter channel.

DAQI_CTR32 

32-bit counter channel.

DAQI_CTR48 

48-bit counter channel.

DAQI_DAC 

DAQI_CTR64.

Use as the flags argument value for ulDaqInScan() to set the properties of data returned.

Enumerator
DAQINSCAN_FF_DEFAULT 

Data is returned with scaling and calibration factors applied to analog channel data.

DAQINSCAN_FF_NOSCALEDATA 

Data for analog channels is returned in native format, without scaling applied.

DAQINSCAN_FF_NOCALIBRATEDATA 

Data for analog channels is returned without calibration factors applied.

DAQINSCAN_FF_NOCLEAR 

Counters are not cleared (set to 0) when a scan starts.

Use with ulDaqOGetInfo() to obtain information about the DAQ output subsystem for the specified device as an infoItem argument value.

Enumerator
DAQO_INFO_CHAN_TYPES 

Returns a bitmask of supported DaqOutChanType values to the infoValue argument.

Index is ignored.

DAQO_INFO_SCAN_OPTIONS 

Returns a bitmask of supported ScanOption values to the infoValue argument.

Index is ignored.

DAQO_INFO_TRIG_TYPES 

Returns a bitmask of supported TriggerType values to the infoValue argument.

Index is ignored.

DAQO_INFO_FIFO_SIZE 

Returns the FIFO size in bytes to the infoValue argument.

Index is ignored.

Use with ulDaqOGetInfoDbl() to obtain information about the DAQ output subsystem for the specified device as an infoItem argument value.

Enumerator
DAQO_INFO_MIN_SCAN_RATE 

Returns the minimum scan rate in samples per second to the infoValue argument.

Index is ignored.

DAQO_INFO_MAX_SCAN_RATE 

Returns the maximum scan rate in samples per second to the infoValue argument.

Index is ignored.

DAQO_INFO_MAX_THROUGHPUT 

Returns the maximum throughput in samples per second to the infoValue argument.

Index is ignored.

A bitmask used with synchronous output scanning operations as a field in the DaqOutChanDescriptor struct, and as a value returned in the infoValue argument for ulDaqOGetInfo() used with DAQO_INFO_CHAN_TYPES.

Enumerator
DAQO_ANALOG 

Analog output.

DAQO_DIGITAL 

Digital output.

Use as the flags argument value for ulDaqOutScan() to set the properties of data sent.

Enumerator
DAQOUTSCAN_FF_DEFAULT 

The data buffer contains scaled data for analog channels, and calibration factors are applied to analog outputs.

DAQOUTSCAN_FF_NOSCALEDATA 

Data for analog channels is in native format, without scaling applied.

DAQOUTSCAN_FF_NOCALIBRATEDATA 

Data for analog channels is output without calibration factors applied.

Use with ulDevGetConfigStr() as an infoItem argument value to obtain information for the specified device.

Enumerator
DEV_CFG_VER_STR 

Returns the version of the device system defined by the DevVersionType value of the index argument.

Use with ulDevGetInfo() as an infoItem argument value to obtain information for the specified device.

Enumerator
DEV_INFO_HAS_AI_DEV 

Returns a non-zero value to infoValue if analog input is supported; otherwise, returns zero.

Index is ignored.

DEV_INFO_HAS_AO_DEV 

Returns a non-zero value to infoValue if analog output is supported; otherwise, returns zero.

Index is ignored.

DEV_INFO_HAS_DIO_DEV 

Returns a non-zero value to infoValue if digital I/O is supported; otherwise, returns zero.

Index is ignored.

DEV_INFO_HAS_CTR_DEV 

Returns a non-zero value to infoValue if counter input is supported; otherwise, returns zero.

Index is ignored.

DEV_INFO_HAS_TMR_DEV 

Returns a non-zero value to infoValue if timer output is supported; otherwise, returns zero.

Index is ignored.

DEV_INFO_HAS_DAQI_DEV 

Returns a non-zero value to infoValue if synchronous input is supported; otherwise, returns zero.

Index is ignored.

DEV_INFO_HAS_DAQO_DEV 

Returns a non-zero value to infoValue if synchronous output is supported.

Index is ignored.

DEV_INFO_DAQ_EVENT_TYPES 

Returns a bitmask of DaqEventType values to infoValue if events are supported; otherwise, returns zero.

Index is ignored.

DEV_INFO_MEM_REGIONS 

Returns a bitmask of MemRegion values to infoValue, indicating memory regions available.

Used with ulDevGetConfigStr() as an index argument value with the infoItem argument set to DEV_CFG_VER_STR for the specified device.

Enumerator
DEV_VER_FW_MAIN 

Firmware version installed on the current device is returned to the configStr argument.

DEV_VER_FPGA 

FPGA version installed on the current device is returned to the configStr argument.

DEV_VER_RADIO 

Radio firmware version installed on the current device is returned to the configStr argument.

Used with ulDConfigPort() and ulDConfigBit() as the direction argument value.

Enumerator
DD_INPUT 

Input.

DD_OUTPUT 

Output.

Used with ulDIOGetInfo() as the infoValue argument value when used with DIO_INFO_PORT_IO_TYPE.

Enumerator
DPIOT_IN 

Fixed input port.

DPIOT_OUT 

Fixed output port.

DPIOT_IO 

Bidirectional (input or output) port.

DPIOT_BITIO 

Bitwise configurable.

DPIOT_NONCONFIG 

Bidirectional (input or output) port; configuration is not required.

Used with all digital I/O functions and with ulDIOGetInfo() as the infoValue argument value when used with DIO_INFO_PORT_IO_TYPE.

Enumerator
AUXPORT 

AuxPort.

AUXPORT0 

AuxPort0.

AUXPORT1 

AuxPort1.

AUXPORT2 

AuxPort2.

FIRSTPORTA 

FirstPortA.

FIRSTPORTB 

FirstPortB.

FIRSTPORTC 

FirstPortC.

FIRSTPORTCL 

FirstPortC Low.

FIRSTPORTCH 

FirstPortC High.

SECONDPORTA 

SecondPortA.

SECONDPORTB 

SecondPortB.

SECONDPORTCL 

SecondPortC Low.

SECONDPORTCH 

SecondPortC High.

THIRDPORTA 

ThirdPortA.

THIRDPORTB 

ThirdPortB.

THIRDPORTCL 

ThirdPortC Low.

THIRDPORTCH 

ThirdPortC High.

FOURTHPORTA 

FourthPortA.

FOURTHPORTB 

FourthPortB.

FOURTHPORTCL 

FourthPortC Low.

FOURTHPORTCH 

FourthPortC High.

FIFTHPORTA 

FifthPortA.

FIFTHPORTB 

FifthPortB.

FIFTHPORTCL 

FifthPortC Low.

FIFTHPORTCH 

FifthPortC High.

SIXTHPORTA 

SixthPortA.

SIXTHPORTB 

SixthPortB.

SIXTHPORTCL 

SixthPortC Low.

SIXTHPORTCH 

SixthPortC High.

SEVENTHPORTA 

SeventhPortA.

SEVENTHPORTB 

SeventhPortB.

SEVENTHPORTCL 

SeventhPortC Low.

SEVENTHPORTCH 

SeventhPortC High.

EIGHTHPORTA 

EighthPortA.

EIGHTHPORTB 

EighthPortB.

EIGHTHPORTCL 

EighthPortC Low.

EIGHTHPORTCH 

EighthPortC High.

Use as the flags argument value for ulDInScan() to set the properties of data returned.

Enumerator
DINSCAN_FF_DEFAULT 

Standard scan properties.

Placeholder for future values

Use with ulDIOGetConfig() and/or ulDIOSetConfig() as a configItem argument value to get the current configuration of the specified digital port on the specified device.

Enumerator
DIO_CFG_PORT_DIRECTION_MASK 

Returns a bitmask value to configValue indicating the current direction of all bits in the specified port.

A 0 indicates all bits are set for input, and non-zero value indicates the bit in the equivalent bitmask location is set for output.
For example, a value of 3 indicates bits 0 and 1 are output, and any other bits in the port are input.

DIO_CFG_PORT_INITIAL_OUTPUT_VAL 

Writes a value to the specified port number.

This allows writing a value when the port is in input mode so that when the port is switched to output mode, the state of the bits is known.

DIO_CFG_PORT_ISO_FILTER_MASK 

Returns or writes the low-pass filter setting.

A 0 indicates that the filter is disabled for the corresponding bit.

DIO_CFG_PORT_LOGIC 

Returns the port logic.

A 0 indicates non-invert mode, and a non-zero value indicates output inverted.

Use with ulDIOGetInfo() to obtain information about the DIO subsystem for the specified device as an infoItem argument value.

Enumerator
DIO_INFO_NUM_PORTS 

Returns the total number of digital ports to the infoValue argument.

Index is ignored.

DIO_INFO_PORT_TYPE 

Returns a DigitalPortType value to the infoValue argument indicating the type of the port specified by the index argument value.

Index should be less than the value obtained using DIO_INFO_NUM_PORTS.

DIO_INFO_PORT_IO_TYPE 

Returns a DigitalPortIoType value to the infoValue argument indicating the input, output, and programmability information for the port specified by the index argument value.

Index should be less than the value obtained using DIO_INFO_NUM_PORTS.

DIO_INFO_NUM_BITS 

Returns a value to the infoValue argument indicating the number of bits the specified port has.

The port is specified by the index argument value. Index should be less than the value obtained using DIO_INFO_NUM_PORTS.

DIO_INFO_HAS_PACER 

Returns a non-zero value to infoValue if paced digital operation (scanning) is supported.

Otherwise, returns zero. Index is ignored.

DIO_INFO_SCAN_OPTIONS 

Returns a bitmask of supported ScanOption values to the infoValue argument for the specified digital direction.

The direction is specified by setting the index argument to one of the DigitalDirection values.

DIO_INFO_TRIG_TYPES 

Returns a bitmask of supported TriggerType values to the infoValue argument for the specified digital direction.

The direction is specified by setting the index argument to one of the DigitalDirection values.

DIO_INFO_FIFO_SIZE 

Returns the FIFO size in bytes to the infoValue argument for the specified digital direction.

The direction is specified by setting the index argument to one of the DigitalDirection values.

Use with ulDIOGetInfoDbl() as an infoItem argument to obtain information about the DIO subsystem for the specified device.

Enumerator
DIO_INFO_MIN_SCAN_RATE 

Returns the minimum scan rate to the infoValue argument for the specified digital direction.

The direction is specified by setting the index argument to one of the DigitalDirection values.

DIO_INFO_MAX_SCAN_RATE 

Returns the maximum scan rate to the infoValue argument for the specified digital direction.

The direction is specified by setting the index argument to one of the DigitalDirection values.

DIO_INFO_MAX_THROUGHPUT 

Returns the maximum throughput to the infoValue argument for the specified digital direction.

The direction is specified by setting the index argument to one of the DigitalDirection values.

Use as the flags argument value for ulDOutScan() to set properties of data sent.

Enumerator
DOUTSCAN_FF_DEFAULT 

Standard scan properties.

Placeholder for future values.

enum IepeMode

IEPE modes.

Enumerator
IEPE_DISABLED 

IEPE excitation current is disabled.

IEPE_ENABLED 

IEPE excitation current is enabled.

A bitmask used with ulMemGetInfo() as one of the field types returned in the MemDescriptor struct.

Indicates access permissions for the location specified by MemRegion for the specified device.

Enumerator
MA_READ 

Indicates read access for the location specified by the memRegion argument.

MA_WRITE 

Indicates write access for the location specified by the memRegion argument.

enum MemRegion

Used with ulMemGetInfo() as the memRegion argument value to specify the memory location on the specified device.

Enumerator
MR_CAL 

Specifies the calibration data region information returned to the MemDescriptor struct.

MR_USER 

Specifies the user data region information returned to the MemDescriptor struct.

MR_SETTINGS 

Specifies the data settings region information returned to the MemDescriptor struct.

MR_RESERVED0 

Specifies the first reserved region information returned to the MemDescriptor struct.

enum OtdMode

Open Thermocouple detection modes.

Enumerator
OTD_DISABLED 

Open Thermocouple detection modes is disabled.

OTD_ENABLED 

Open Thermocouple detection modes is enabled.

Used with ulTmrPulseOutStart() as the options argument value to set advanced options for the specified device.

Enumerator
PO_DEFAULT 

No PulseOut options are applied.

PO_EXTTRIGGER 

The output operation is held off until the specified trigger condition is met.

Trigger conditions may be modified using ulTmrSetTrigger().

PO_RETRIGGER 

The output operation is held off until the specified trigger condition is met.

The trigger is re-armed when the output operation completes. Intended to be used with a non-zero value set for the pulseCount argument (non-continuous timer output). Trigger conditions may be modified using ulTmrSetTrigger().

enum Range

Used with many analog input and output functions, as well as a return value for the infoValue argument to ulAIGetInfo() when used with AI_INFO_DIFF_RANGE or AI_INFO_SE_RANGE,
and the infoValue argument to ulAOGetInfo() when used with AO_INFO_RANGE.

Enumerator
BIP60VOLTS 

-60 to +60 Volts

BIP30VOLTS 

-30 to +30 Volts

BIP15VOLTS 

-15 to +15 Volts

BIP20VOLTS 

-20 to +20 Volts

BIP10VOLTS 

-10 to +10 Volts

BIP5VOLTS 

-5 to +5 Volts

BIP4VOLTS 

-4 to +4 Volts

BIP2PT5VOLTS 

-2.5 to +2.5 Volts

BIP2VOLTS 

-2.0 to +2.0 Volts

BIP1PT25VOLTS 

-1.25 to +1.25 Volts

BIP1VOLTS 

-1 to +1 Volts

BIPPT625VOLTS 

-.625 to +.625 Volts

BIPPT5VOLTS 

-.5 to +.5 Volts

BIPPT25VOLTS 

-0.25 to +0.25 Volts

BIPPT125VOLTS 

-0.125 to +0.125 Volts

BIPPT2VOLTS 

-0.2 to +0.2 Volts

BIPPT1VOLTS 

-.1 to +.1 Volts

BIPPT078VOLTS 

-0.078 to +0.078 Volts

BIPPT05VOLTS 

-.05 to +.05 Volts

BIPPT01VOLTS 

-.01 to +.01 Volts

BIPPT005VOLTS 

-.005 to +.005 Volts

BIP3VOLTS 

-3.0 to +3.0 Volts

BIPPT312VOLTS 

-.312 to +.312 Volts

BIPPT156VOLTS 

-.156 to +.156 Volts

UNI60VOLTS 

0 to +60 Volts

UNI30VOLTS 

0 to +30 Volts

UNI15VOLTS 

0 to +15 Volts

UNI20VOLTS 

0 to +20 Volts

UNI10VOLTS 

0 to +10 Volts

UNI5VOLTS 

0 to +5 Volts

UNI4VOLTS 

0 to +4 Volts

UNI2PT5VOLTS 

0 to +2.5 Volts

UNI2VOLTS 

0 to +2.0 Volts

UNI1PT25VOLTS 

0 to +1.25 Volts

UNI1VOLTS 

0 to +1 Volts

UNIPT625VOLTS 

0 to +.625 Volts

UNIPT5VOLTS 

0 to +.5 Volts

UNIPT25VOLTS 

0 to +0.25 Volts

UNIPT125VOLTS 

0 to +0.125 Volts

UNIPT2VOLTS 

0 to +0.2 Volts

UNIPT1VOLTS 

0 to +.1 Volts

UNIPT078VOLTS 

0 to +0.078 Volts

UNIPT05VOLTS 

0 to +.05 Volts

UNIPT01VOLTS 

0 to +.01 Volts

UNIPT005VOLTS 

0 to +.005 Volts

MA0TO20 

0 to 20 Milliamps

enum ScanOption

Used with many analog input and output functions, as well as a return value for the infoValue argument to many of the subsystem GetInfo functions when used with the infoItem argument values set to one of the subsystem INFO_SCAN_OPTIONS values.

Enumerator
SO_DEFAULTIO 

Transfers A/D data based on the board type and sampling speed.

SO_SINGLEIO 

Transfers one packet of data at a time.

SO_BLOCKIO 

Transfers A/D data in blocks.

SO_BURSTIO 

Transfers A/D data from the FIFO after the scan completes.

Allows maximum rates for finite scans up to the full capacity of the FIFO. Not recommended for slow acquisition rates.

SO_CONTINUOUS 

Scans data in an endless loop.

The only way to stop the operation is with ulAInScanStop().

SO_EXTCLOCK 

Data conversions are controlled by an external clock signal.

SO_EXTTRIGGER 

Sampling begins when a trigger condition is met.

SO_RETRIGGER 

Re-arms the trigger after a trigger event is performed.

SO_BURSTMODE 

Enables burst mode sampling, minimizing the channel skew.

SO_PACEROUT 

Enables or disables the internal pacer output on a DAQ device.

SO_EXTTIMEBASE 

Changes the internal clock's timebase to an external timebase source.

This can allow synchronization of multiple DAQ devices.

SO_TIMEBASEOUT 

Enables or disables the internal timebase output on a DAQ device.

enum ScanStatus

Scan status.

Enumerator
SS_IDLE 

Scan is idle.

SS_RUNNING 

Scan is running.

Sensor connection types.

Enumerator
SCT_2_WIRE_1 

2-wire with a single sensor per differential channel pair

SCT_2_WIRE_2 

2-wire with two sensors per differential channel pair

SCT_3_WIRE 

3-wire with a single sensor per differential channel pair

SCT_4_WIRE 

4-wire with a single sensor per differential channel pair

enum TcType

Thermocouple types.

Enumerator
TC_J 

Type J.

TC_K 

Type K.

TC_T 

Type T.

TC_E 

Type E.

TC_R 

Type R.

TC_S 

Type S.

TC_B 

Type B.

TC_N 

Type N.

enum TempScale

Temperature units.

Enumerator
TS_CELSIUS 

Celcius.

TS_FAHRENHEIT 

Fahrenheit.

TS_KELVIN 

Kelvin.

TS_VOLTS 

Volts.

TS_NOSCALE 

No scale (Raw)

enum TempUnit

Temperature units.

Enumerator
TU_CELSIUS 

Celcius.

TU_FAHRENHEIT 

Fahrenheit.

TU_KELVIN 

Kelvin.

enum TimerType

Types of timer channels.

Enumerator
TMR_STANDARD 

Programmable frequency timer.

TMR_ADVANCED 

Programmable frequency timer, plus other attributes such as pulse width.

Use as the flags argument value for ulTInArray() to set the properties of data returned; reserved for future use.

Enumerator
TINARRAY_FF_DEFAULT 

Placeholder value.

Standard functionality.

enum TInFlag

Use as the flags argument value for ulTIn() to set the properties of data returned; reserved for future use.

Enumerator
TIN_FF_DEFAULT 

Placeholder value.

Standard functionality.

Timer idle state.

Enumerator
TMRIS_LOW 

Idle low.

TMRIS_HIGH 

Idle high.

Use with ulTmrGetInfo() to obtain information about the timer subsystem for the specified device as an infoItem argument value.

Enumerator
TMR_INFO_NUM_TMRS 

Returns the total number of timers to the infoValue argument.

Index is ignored.

TMR_INFO_TYPE 

Returns a TimerType value to the infoValue argument, indicating the type of the timer specified by the index argument value.

Index should be less than the value obtained using TMR_INFO_NUM_TMRS.

Use with ulTmrGetInfoDbl() to obtain information about the timer subsystem for the specified device as an infoItem argument value.

Enumerator
TMR_INFO_MIN_FREQ 

Returns the minimum output frequency to the infoValue argument.

Index is ignored.

TMR_INFO_MAX_FREQ 

Returns the maximum output frequency to the infoValue argument.

Index is ignored.

enum TmrStatus

Used with ulTmrPulseOutStatus() as the status argument value returned (if supported) for the specified device.

Enumerator
TMRS_IDLE 

The timer is currently idle.

TMRS_RUNNING 

The timer is currently running.

Used as an individual value with the subsystem SetTrigger functions as the type argument value, or as a bitmask value with the subsystem GetInfo functions as the infoValue argument value.

The trigger input is specified by the trigChan argument, or the channel field of the DaqInChanDescriptor struct, when using the subsystem SetTrigger functions.

Enumerator
TRIG_NONE 

No trigger type.

Valid for subsystem GetInfo functions; not a valid value for subsystem SetTrigger functions.

TRIG_POS_EDGE 

A digital trigger.

The trigger condition is met when the trigger input transitions from a logic low level to a logic high level. This is the default condition used when triggering is enabled. All others require configuration using the subsystem SetTrigger functions.

TRIG_NEG_EDGE 

A digital trigger.

The trigger condition is met when the trigger input transitions from a logic high level to a logic low level.

TRIG_HIGH 

A digital trigger.

The trigger condition is met when the trigger input is at a logic high level.

TRIG_LOW 

A digital trigger.

The trigger condition is met when the trigger input is at a logic low level.

GATE_HIGH 

A digital gate.

The operation is enabled only when the trigger input is at a logic high level.

GATE_LOW 

A digital gate.

The operation is enabled only when the trigger input is at a logic low level.

TRIG_RISING 

An analog trigger.

The trigger condition is met when the trigger input transitions from below the threshold specified by (the level argument value minus the variance argument value) to above the threshold specified by the level argument value.

TRIG_FALLING 

An analog trigger.

The trigger condition is met when the trigger input transitions from above the threshold specified by (the level argument value plus the variance argument value) to below the threshold specified by the level argument value.

TRIG_ABOVE 

An analog trigger.

The trigger condition is met when the trigger input is above the threshold specified by the level argument value.

TRIG_BELOW 

An analog trigger.

The trigger condition is met when the trigger input is below the threshold specified by the level argument value.

GATE_ABOVE 

An analog trigger.

The operation is enabled only when the trigger input is above the threshold specified by the level argument value.

GATE_BELOW 

An analog trigger.

The operation is enabled only when the trigger input is below the threshold specified by the level argument value.

GATE_IN_WINDOW 

Scanning is enabled as long as the external analog trigger is inside the region defined by the level argument value and the variance argument value.

GATE_OUT_WINDOW 

Scanning is enabled as long as the external analog trigger is outside the region defined by the level argument value and the variance argument value.

TRIG_PATTERN_EQ 

A digital pattern trigger.

The trigger condition is met when the digital pattern at the trigger input is equal to the pattern specified by the level argument value ANDed with bitwise mask specified by the variance argument value of the SetTrigger function for each subsystem.

TRIG_PATTERN_NE 

A digital pattern trigger.

The trigger condition is met when the digital pattern at the trigger input is not equal to the pattern specified by the level argument value ANDed with bitwise mask specified by the variance argument value of the SetTrigger function for each subsystem.

TRIG_PATTERN_ABOVE 

A digital pattern trigger.

The trigger condition is met when the digital pattern at the trigger input is greater than the pattern specified by the level argument value ANDed with bitwise mask specified by the variance argument value of the SetTrigger function for each subsystem. Value is determined by additive bit weights.

TRIG_PATTERN_BELOW 

A digital pattern trigger.

The trigger condition is met when the digital pattern at the trigger input is less than the pattern specified by the level argument value ANDed with bitwise mask specified by the variance argument value of the SetTrigger function for each subsystem. Value is determined by additive bit weights.

Enumerator
UL_CFG_USB_XFER_PRIORITY 
enum UlError

UL error codes.

Enumerator
ERR_NO_ERROR 

No error has occurred.

ERR_UNHANDLED_EXCEPTION 

Unhandled internal exception.

ERR_BAD_DEV_HANDLE 

Invalid device handle.

ERR_BAD_DEV_TYPE 

This function cannot be used with this device.

ERR_USB_DEV_NO_PERMISSION 

Insufficient permission to access this device.

ERR_USB_INTERFACE_CLAIMED 

USB interface is already claimed.

ERR_DEV_NOT_FOUND 

Device not found.

ERR_DEV_NOT_CONNECTED 

Device not connected or connection lost.

ERR_DEAD_DEV 

Device no longer responding.

ERR_BAD_BUFFER_SIZE 

Buffer too small for operation.

ERR_BAD_BUFFER 

Invalid buffer.

ERR_BAD_MEM_TYPE 

Invalid memory type.

ERR_BAD_MEM_REGION 

Invalid memory region.

ERR_BAD_RANGE 

Invalid range.

ERR_BAD_AI_CHAN 

Invalid analog input channel specified.

ERR_BAD_INPUT_MODE 

Invalid input mode specified.

ERR_ALREADY_ACTIVE 

A background process is already in progress.

ERR_BAD_TRIG_TYPE 

Invalid trigger type specified.

ERR_OVERRUN 

FIFO overrun, data was not transferred from device fast enough.

ERR_UNDERRUN 

FIFO underrun, data was not transferred to device fast enough.

ERR_TIMEDOUT 

Operation timed out.

ERR_BAD_OPTION 

Invalid option specified.

ERR_BAD_RATE 

Invalid sampling rate specified.

ERR_BAD_BURSTIO_COUNT 

Sample count cannot be greater than FIFO size for BURSTIO scans.

ERR_CONFIG_NOT_SUPPORTED 

Configuration not supported.

ERR_BAD_CONFIG_VAL 

Invalid configuration value.

ERR_BAD_AI_CHAN_TYPE 

Invalid analog input channel type specified.

ERR_ADC_OVERRUN 

ADC overrun occurred.

ERR_BAD_TC_TYPE 

Invalid thermocouple type specified.

ERR_BAD_UNIT 

Invalid unit specified.

ERR_BAD_QUEUE_SIZE 

Invalid queue size.

ERR_BAD_CONFIG_ITEM 

Invalid config item specified.

ERR_BAD_INFO_ITEM 

Invalid info item specified.

ERR_BAD_FLAG 

Invalid flag specified.

ERR_BAD_SAMPLE_COUNT 

Invalid sample count specified.

ERR_INTERNAL 

Internal error.

ERR_BAD_COUPLING_MODE 

Invalid coupling mode.

ERR_BAD_SENSOR_SENSITIVITY 

Invalid sensor sensitivity.

ERR_BAD_IEPE_MODE 

Invalid IEPE mode.

ERR_BAD_AI_CHAN_QUEUE 

Invalid channel queue specified.

ERR_BAD_AI_GAIN_QUEUE 

Invalid gain queue specified.

ERR_BAD_AI_MODE_QUEUE 

Invalid mode queue specified.

ERR_FPGA_FILE_NOT_FOUND 

FPGA file not found.

ERR_UNABLE_TO_READ_FPGA_FILE 

Unable to read FPGA file.

ERR_NO_FPGA 

FPGA not loaded.

ERR_BAD_ARG 

Invalid argument.

ERR_MIN_SLOPE_VAL_REACHED 

Minimum slope value reached.

ERR_MAX_SLOPE_VAL_REACHED 

Maximum slope value reached.

ERR_MIN_OFFSET_VAL_REACHED 

Minimum offset value reached.

ERR_MAX_OFFSET_VAL_REACHED 

Maximum offset value reached.

ERR_BAD_PORT_TYPE 

Invalid port type specified.

ERR_WRONG_DIG_CONFIG 

Digital I/O is configured incorrectly.

ERR_BAD_BIT_NUM 

Invalid bit number.

ERR_BAD_PORT_VAL 

Invalid port value specified.

ERR_BAD_RETRIG_COUNT 

Invalid re-trigger count.

ERR_BAD_AO_CHAN 

Invalid analog output channel specified.

ERR_BAD_DA_VAL 

Invalid D/A output value specified.

ERR_BAD_TMR 

Invalid timer specified.

ERR_BAD_FREQUENCY 

Invalid frequency specified.

ERR_BAD_DUTY_CYCLE 

Invalid duty cycle specified.

ERR_BAD_INITIAL_DELAY 

Invalid initial delay specified.

ERR_BAD_CTR 

Invalid counter specified.

ERR_BAD_CTR_VAL 

Invalid counter value specified.

ERR_BAD_DAQI_CHAN_TYPE 

Invalid DAQ input channel type specified.

ERR_BAD_NUM_CHANS 

Invalid number of channels specified.

ERR_BAD_CTR_REG 

Invalid counter register specified.

ERR_BAD_CTR_MEASURE_TYPE 

Invalid counter measurement type specified.

ERR_BAD_CTR_MEASURE_MODE 

Invalid counter measurement mode specified.

ERR_BAD_DEBOUNCE_TIME 

Invalid debounce time specified.

ERR_BAD_DEBOUNCE_MODE 

Invalid debounce mode specified.

ERR_BAD_EDGE_DETECTION 

Invalid edge detection mode specified.

ERR_BAD_TICK_SIZE 

Invalid tick size specified.

ERR_BAD_DAQO_CHAN_TYPE 

Invalid DAQ output channel type specified.

ERR_NO_CONNECTION_ESTABLISHED 

No connection established.

ERR_BAD_EVENT_TYPE 

Invalid event type specified.

ERR_EVENT_ALREADY_ENABLED 

An event handler has already been enabled for this event type.

ERR_BAD_EVENT_PARAMETER 

Invalid event parameter specified.

ERR_BAD_CALLBACK_FUCNTION 

Invalid callback function specified.

ERR_BAD_MEM_ADDRESS 

Invalid memory address.

ERR_MEM_ACCESS_DENIED 

Memory access denied.

ERR_DEV_UNAVAILABLE 

Device is not available at time of request.

ERR_BAD_RETRIG_TRIG_TYPE 

Re-trigger option is not supported for the specified trigger type.

ERR_BAD_DEV_VER 

This function cannot be used with this version of the device.

ERR_BAD_DIG_OPERATION 

This digital operation is not supported on the specified port.

ERR_BAD_PORT_INDEX 

Invalid digital port index specified.

ERR_OPEN_CONNECTION 

Temperature input has open connection.

ERR_DEV_NOT_READY 

Device is not ready to send data.

ERR_PACER_OVERRUN 

Pacer overrun, external clock rate too fast.

ERR_BAD_TRIG_CHANNEL 

Invalid trigger channel specified.

ERR_BAD_TRIG_LEVEL 

Invalid trigger level specified.

ERR_BAD_CHAN_ORDER 

Invalid channel order.

ERR_TEMP_OUT_OF_RANGE 

Temperature input is out of range.

ERR_TRIG_THRESHOLD_OUT_OF_RANGE 

Trigger threshold is out of range.

ERR_INCOMPATIBLE_FIRMWARE 

Incompatible firmware version, firmware update required.

Library version.

Enumerator
UL_INFO_VER_STR 
enum WaitType

Used with the subsystem ScanWait functions as the waitType argument value for the specified device.

Enumerator
WAIT_UNTIL_DONE 

Function returns when the scan operation completes or the time specified by the timeout argument value elapses.

Function Documentation

DaqDeviceHandle ulCreateDaqDevicePtr ( DaqDeviceDescriptor daqDevDescriptor)

Create a device object within the Universal Library for the DAQ device specified by the descriptor.

This function intended to be used by languages that don't have capability to pass structures by value. i.e LabVIEW, VB, ...

Parameters
daqDevDescriptorDaqDeviceDescriptor struct containing fields that describe the device
Returns
The device handle.