// © Copyright 1997 National Instruments // // Constant definitions for ComponentWorks CWDAQ controls // // Constants that specify where a DAQ error occurred. typedef enum { cwdaqConfiguringChannelLimits = 1, cwdaqConfiguringChannels = 2, cwdaqConfiguringChannelClock = 4, cwdaqConfiguringIntervalClock = 4, cwdaqConfiguringScanClock = 8, cwdaqConfiguringUpdateClock = 8, cwdaqConfiguringStartCondition = 16, cwdaqConfiguringPauseCondition = 32, cwdaqConfiguringStopCondition = 64, cwdaqStarting = 128, cwdaqStopping = 256, cwdaqResuming = 512, cwdaqResetting = 1024, cwdaqReadingData = 2048, cwdaqReadingDataContinuous = 4096, cwdaqReadingDataSWAnalog = 8192, cwdaqConfiguringInternalBuffer = 16384, cwdaqWritingData = 32768, cwdaqConfiguringEvent = 65536, cwdaqConfiguringHandshaking = 131072, cwdaqConfiguringClockMode = 262144, cwdaqConfiguringPulse = 524288, cwdaqConfiguringHoldoffClock = 1048576 } CWDAQErrorContexts; // typedef enum { cwaiConfiguringChannelLimits = 1, // Configuring channel limits, input mode and coupling cwaiConfiguringChannels = 2, // Configuring channels cwaiConfiguringChannelClock = 4, // Configuring channel clock cwaiConfiguringScanClock = 8, // Configuring scan clock cwaiConfiguringStartCondition = 16, // Configuring trigger signal for start condition cwaiConfiguringPauseCondition = 32, // Configuring gate signal for pause condition cwaiConfiguringStopCondition = 64, // Configuring trigger signal for stop condition cwaiStartingAcquisition = 128, // Starting acquisition cwaiStoppingAcquisition = 256, // Stopping acquisition cwaiResumingAcquisition = 512, // Resuming acquisition cwaiResettingAcquisition = 1024, // Resetting acquisition cwaiReadingData = 2048, // Reading data cwaiReadingDataContinuous = 4096, // Reading data of a continuous acquisition cwaiReadingDataSWAnalog = 8192, // Reading data of a continuous acquisition using software analog triggering cwaiConfiguringInternalBuffer = 16384 // Configuring internal DAQ buffer } CWAIErrorContexts; // Constants for the Capabilities property of the CWDIOPort object. typedef enum { cwdioNoCapabilities = 0, // The port cannot be used for DIO operations cwdioInputOrOutput = 1, // The port is capable of either input or output operations All lines on the port must be used for input or output as a group cwdioInputOnly = 2, // The port is capable of input operations only cwdioOutputOnly = 3, // The port is capable of output operations only cwdioLineConfigurable = 4 // Any line on the port can be configured for input or output independent of the other lines } CWDIOPortCapabilities; // Constants for the Assignment property of the CWDIOPort and CWDIOLine objects. typedef enum { cwdioUnused = 0, // The port or line is not used cwdioInput = 1, // The port or line is used for input only cwdioOutput = 2, // The port or line is used for output only cwdioLineConfigured = 3 // The port configuration is determined by the LineDirection property } CWDIOAssignments; // Constants for the AcquisitionState property of the CWDIReadSpec object. typedef enum { cwdiRunning = 0, // The acquisition is running cwdiFinishedWithBacklog = 1, // The acquisition has completed, and there is data that was acquired but has not been read by the user cwdiFinishedWithNoBacklog = 2, // The acquisition has completed, and that all data that was acquired has been read by the user cwdiPaused = 3, // The acquisition is paused cwdiNoAcquisition = 4 // There is no running acquitision } CWDIAcquisitionStates; // Constants for the ReadMode property of the CWDIReadSpec object. typedef enum { cwdiFromReadMark = 1, // Read relative to the read mark The read mark is cwdiFromStartOfBuffer = 2, // Read relative to the start of the acquisition buffer Together with the ReadOffset property, you can specify an absolute pattern number to read For example, setting ReadOffset to 0 and ReadMode to cwdiFromStartOfBuffer, will read starting from the f cwdiFromEndOfData = 3 // Read relative to the last data received Set the ReadOffset to -10 and the ReadMode to cwdiFromEndOfData to read the most recently acquired 10 points } CWDIReadModes; // Constants for the AcknowledgePolarity and RequestPolarity properties of the CWDIOHandshake object. typedef enum { cwdioActiveHigh = 2, // Active High signal cwdioActiveLow = 1 // Active Low signal } CWDIOPolarities; // Constants for the TimeBaseSource property of the CWDIOClock object. typedef enum { cwdioInternalFrequencyTB = 1 // Use the internal frequency as a timebase } CWDIOTimebaseSources; // Constants for the EdgeMode property of the CWDIOHandshake object. typedef enum { cwdioEdgeLeading = 1, // Leading edges cwdioEdgeTrailing = 2 // Trailing edges } CWDIOEdgeModes; // Constants for the SingalMode property of the CWDIOHandshake object. typedef enum { cwdioSignalLevel = 1, // Level handshaking signals cwdioSignalEdge = 2, // Edge handshaking signals cwdioSignal8255 = 3, // Request polarity and acknowledge polarity will be ignored This mode applies to the DIO-32HS only cwdioSignalBurst = 4 // This mode applies to the DIO-32HS only } CWDIOSignalModes; // Constants for the AcknowledgeModifyMode property of the CWDIOHandshake object. typedef enum { cwdioAckModeNone = 1, // Do not modify the acknowledge pulse cwdioAckModeDelay = 2, // Delay the acknowledge pulse cwdioAckModeDuration = 3 // Change the duration of the acknowledge pulse } CWDIOAckModModes; // Constants for the property of the AcknowledgeModifyAmount property of the CWDIOHandshake object. typedef enum { cwdioAckAmt0ns = 0, // 0 ns cwdioAckAmt100ns = 1, // 100 ns cwdioAckAmt200ns = 2, // 200 ns cwdioAckAmt300ns = 3, // 300 ns cwdioAckAmt400ns = 4, // 400 ns cwdioAckAmt500ns = 5, // 500 ns cwdioAckAmt600ns = 6, // 600 ns cwdioAckAmt700ns = 7 // 700 ns } CWDIOAckModifyAmounts; // Constants for the ClockSourceType property of the CWDIOClock object. typedef enum { cwdioCSInternalClock = 1, // Use internal clock cwdioCSIOConnector = 2, // Use I/O connection cwdioCSRTSI = 3, // Use RTSI connection cwdioCSExternalClock = 4 // Use external clock } CWDIOClockSources; // Constants for the InputMode property on CWAIChannel typedef enum { cwaiDIFF = 1, // Differential channels cwaiRSE = 2, // Referenced Single-Ended channels cwaiNRSE = 3 // Non-Referenced Single-Ended channels } CWAIInputModes; // Constants for the Coupling property on CWAIChannel typedef enum { cwaiDC = 1, // DC Coupling cwaiAC = 2 // AC Coupling } CWAICouplings; // Constants for the TimebaseSource property on CWAIClock typedef enum { cwaiNIDAQChoosesTB = 0, // Let NI-DAQ choose an appropriate timebase source cwaiInternalFrequencyTB = 1, // Internal frequency (Hz) cwaiSourceNTB = 2, // Counter source n cwaiPFILoToHiTB = 3, // PFI, low to high cwaiPFIHiToLoTB = 4, // PFI, high to low cwaiRTSILoToHiTB = 5, // RTSI, low to high cwaiRTSIHiToLoTB = 6, // RTSI, high to low cwaiATCOutLoToHiTB = 7, // ATCOut, low to high cwaiATCOutHiToLoTB = 8 // ATCOut, high to low } CWAITimebaseSources; // Constants for the ClockSourceType property on CWAIClock typedef enum { cwaiNIDAQChoosesCS = 0, // Let NI-DAQ choose an appropriate clock source cwaiInternalCS = 1, // Use internal clock cwaiIOConnectionCS = 2, // I/O Connection cwaiRTSINonESeriesCS = 3, // RTSI (non-E Series only) cwaiPFILoToHiCS = 4, // PFI, low to high cwaiPFIHiToLoCS = 5, // PFI, high to low cwaiRTSILoToHiCS = 6, // RTSI, low to high cwaiRTSIHiToLoCS = 7, // RTSI, high to low cwaiGPCTRLoToHiCS = 8, // GPCTR output, low to high cwaiGPCTRHiToLoCS = 9, // GPCTR output, high to low cwaiATCOutLoToHiCS = 10, // ATCOut, low to high cwaiATCOutHiToLoCS = 11 // ATCOut, high to low } CWAIClockSources; // Constants for the InternalClockMode property on CWAIClock typedef enum { cwaiFrequency = 0, // Use frequency setting (Hz) cwaiPeriod = 1, // Use period setting (seconds) cwaiTimebase = 2 // Use timebase setting } CWAIInternalClockModes; // Constants for the InternalClockMode property of the CWDIOClock object. typedef enum { cwdioFrequency = 0, cwdioPeriod = 1, cwdioTimebase = 2 } CWDIOInternalClockModes; // Constants for the Type property on CWAICondition typedef enum { cwaiNoActiveCondition = 0, // No active condition cwaiHWDigital = 1, // Hardware Digital Trigger or Gate cwaiHWAnalog = 2, // Hardware Analog Trigger or Gate cwaiSWAnalog = 3, // Software Analog Trigger (continuous) cwaiContinuous = 4, // Continuous acquisition cwaiSWAnalogOneShot = 5 // Software Analog Trigger (continuous) } CWAIConditionTypes; // Constants for the Mode property on CWAICondition typedef enum { cwaiRising = 1, // Trigger on rising edge or slope cwaiFalling = 2, // Trigger on falling edge or slope cwaiEntering = 3, // Trigger on entering window cwaiLeaving = 4, // Trigger on leaving window cwaiInside = 5, // Pause while inside window cwaiOutside = 6, // Pause while outside window cwaiAbove = 7, // Pause while above level or high cwaiBelow = 8 // Pause while below level or low } CWAITriggerPauseModes; // Constants for the ReturnDataType property on CWAI. typedef enum { cwaiVoltages = 1, // Return data scaled to voltages cwaiBinaryCodes = 2, // Return unscaled binary codes cwaiVoltagesAndBinaryCodes = 3, // Return both scaled and unscaled data cwaiNothingReturned = 4 // Return no data } CWAIReturnDataTypes; // typedef enum { cwaoScaledData = 1, // Scaled data cwaoBinaryCodes = 2, // Unscaled data as binary codes cwaoNothingOutput = 3 // Do not write any data } CWAOOutputDataTypes; // Constants for the ReferenceSource property on the CWAOPoint control. typedef enum { cwaoInternal = 1, // Internal reference cwaoExternal = 2 // External reference } CWAOReferenceSources; // Constants for the ChannelType property on the CWAOPoint control. typedef enum { cwaoVoltage = 1, // Voltage (volts) cwaoCurrent = 2 // Current (milliamps) } CWAOChannelTypes; // Constants for the TCType parameter of the ConvertTC function. typedef enum { cwE = 1, // E-type thermocouple cwJ = 2, // J-type thermocouple cwK = 3, // K-type thermocouple cwR = 4, // R-type thermocouple cwS = 5, // S-type thermocouple cwT = 6, // T-type thermocouple cwB = 7 // B-type thermocouple } CWThermocouples; // Constants for the TempScale parameter in the transducer conversion functions. typedef enum { cwCelsius = 1, // Celsius temperature scale cwFahrenheit = 2, // Fahrenheit temperature scale cwKelvin = 3, // Kelvin temperature scale cwRankine = 4 // Rankine temperature scale } CWTempScales; // Constants for the BridgeType parameter of the ConvertStrain function. typedef enum { cwQuarterBridge1 = 0, // Quarter Bridge 1 strain gauge configuration cwQuarterBridge2 = 1, // Quarter Bridge 2 strain gauge configuration cwHalfBridge1 = 2, // Half Bridge 1 strain gauge configuration cwHalfBridge2 = 3, // Half Bridge 2 strain gauge configuration cwFullBridge1 = 4, // Full Bridge 1 strain gauge configuration cwFullBridge2 = 5, // Full Bridge 2 strain gauge configuration cwFullBridge3 = 6 // Full Bridge 3 strain gauge configuration } CWBridgeTypes; // Constants used for the Type parameter of the ConvertThermistor function. The constants specify measurement types. typedef enum { cwVoltRef = 0, // Voltage divider configuration cwThermCurrent = 1 // Ohms configuration } CWThermistorMeasTypes; // Constants used for the Type property on CWPulse. typedef enum { cwctrEvents = 0, // Count events on the counters source cwctrTime = 1, // Measure elapsed time cwctrFrequency = 2, // Count frequency over a fixed period of time and convert to Hz cwctrHiPulseWidth = 3, // Measure the high phase of a pulse connected to the counters gate cwctrLoPulseWidth = 4, // Measure the low phase of a pulse connected to the counters gate cwctrSingleShotHiPulseWidth = 5, // Measure the width of the high phase of the next pulse cwctrSingleShotLoPulseWidth = 6, // Measure the width of the low phase of a pulse cwctrPulsePeriodRisingEdge = 7, // Measure the period from rising edges of a pulse connected to the counters gate cwctrPulsePeriodFallingEdge = 8, // Measure the period from falling edges of a pulse connected to the counters gate cwctrSemiPeriods = 9 // Count both the low and high phases of a pulse connected to the counters gate } CWCtrTypes; // Controls which way the counter count typedef enum { cwctrNIDAQChoosesDirMode = 0, // Use NI-DAQ defaul cwctrUpDir = 1, // Count up cwctrDownDir = 2, // Count down cwctrUpDownDir = 3 // Count direction controlled by an external signal } CWCtrCountDirModes; // Constants used for the GateMode property on CWCounter. typedef enum { cwctrNIDAQChoosesGateMode = 0, // Use NI-DAQ default gate mode (cwctrUngated) cwctrUngated = 1, // Start counting when start is called cwctrHighGate = 2, // Count only while the gate signal is high cwctrLowGate = 3, // Count only while the gate signal is low cwctrRisingEdgeGate = 4, // Start countring when the gate signal rises cwctrFallingEdgeGate = 5 // Start countring when the gate signal falls } CWCtrGateModes; // Constants used for the SourceEdge property on CWCounter. typedef enum { cwctrNIDAQChoosesSE = 0, // Let NI-DAQ choose the edge to count cwctrRisingSE = 1, // Count rising edges cwctrFallingSE = 2 // Count falling edges } CWCtrSourceEdgeModes; // Constants used for the GateSource property on CWCounter. typedef enum { cwctrNIDAQChoosesGS = 0, // Use the NI-DAQ default gate source (cwctrCtrGateGS) cwctrCtrGateGS = 1, // Gate of the counter cwctrNextCtrGateGS = 2, // Gate of the next counter cwctrPrevCtrGateGS = 3, // Gate of the previous counter cwctrPrevCtrTCGS = 4, // TC (terminal count) of the previous counter cwctrPFIGS = 5, // PFI signal n, n defined by GateSignal (DAQ-STC devices only) cwctrRTSIGS = 6, // RTSI signal n, n defined by GateSignal (DAQ-STC devices only) cwctrAIStartGS = 7, // AI start trigger (DAQ-STC devices only) cwctrAIStopGS = 8, // AI stop trigger (DAQ-STC devices only) cwctrATCOutGS = 9 // ATCOut (DAQ-STC devices only) } CWCtrGateSources; // Constants used for the Timebase property on CWCounter. typedef enum { cwctrNIDAQChoosesTB = 0, // Use the NI-DAQ default timebase source cwctrFrequencyTB = 1, // An internal clock of frequency i n Hz, frequency defined by TimebaseSignal cwctrSourceNTB = 2, // Counter Source signal from counter n, n defined by TimebaseSignal cwctrGateNTB = 3, // The gate signal from counter n, n defined by TimebaseSignal cwctrTCNTB = 4, // TC (Terminal Count) signal from the previous counter cwctrPFITB = 5, // PFI signal n, n defined by TimebaseSignal (DAQ-STC devices only) cwctrRTSITB = 6, // RTSI signal n, n defined by TimebaseSignal (DAQ-STC devices only) cwctrATCOutTB = 7 // ATCOut (Analog Trigger) signal (DAQ-STC devices only) } CWCtrTimebaseSources; // Constants used for the Type property on CWPulse. typedef enum { cwpulseSingle = 0, // Single pulse cwpulseContinuous = 1, // Continuous Pulse Train cwpulseFinite = 2, // Pulse train for N pulses cwpulseFSK = 3, // Frequency shifting pulse train cwpulseIncrementalDelay = 4, // Pulse train with an incrementing delay phase cwpulseRetrigRisingEdge = 5, // Retriggerable pulse cwpulseRetrigFallingEdge = 6 // Retriggerable pulse } CWPulseTypes; // Constants used for the Polarity property on CWPulse. typedef enum { cwpulseNIDAQChoosesPolarity = 0, // Use the NI-DAQ default polarity cwpulseHighPulse = 1, // Delay phase is low, active phase is high cwpulseLowPulse = 2 // Delay phase is high, active phase is low } CWPulsePolarityModes; // Constants used for the SourceEdge property on CWPulse. typedef enum { cwpulseNIDAQChoosesSE = 0, // Let NI-DAQ choose the edge to count cwpulseRisingSE = 1, // Count rising edges cwpulseFallingSE = 2 // Count falling edges } CWPulseSourceEdgeModes; // Constants used for the GateMode property on CWPulse. typedef enum { cwpulseNIDAQChoosesGateMode = 0, // Use the NI-DAQ default gate mode (cwpulseUngated) cwpulseUngated = 1, // Start when the CWPulseStart method is called, the GateSignal and GateSource property are not used cwpulseHighGate = 2, // Generate pulse train only while the gate signal is high cwpulseLowGate = 3, // Generate the pusle train only while the gate signal is low cwpulseRisingEdgeGate = 4, // Start pulses on the rising edge of the gate signal cwpulseFallingEdgeGate = 5, // Start pulses on the falling edge of the gate signal cwpulseFSKGate = 6 // Pulse Frequency shifts from primary to alternate setting when gate signal is high } CWPulseGateModes; // Constants used for the GateSource property on CWPulse. typedef enum { cwpulseNIDAQChoosesGS = 0, // Use the NI-DAQ default gate source (cwpulseCtrGateGS) cwpulseCtrGateGS = 1, // Gate of the counter cwpulseNextCtrGateGS = 2, // Gate of the next counter cwpulsePrevCtrGateGS = 3, // Gate of the previous counter cwpulsePrevCtrTCGS = 4, // TC (terminal count) of the previous counter cwpulsePFIGS = 5, // PFI signal n, n defined by GateSignal (DAQ-STC devices only) cwpulseRTSIGS = 6, // RTSI signal n, n defined by GateSignal (DAQ-STC devices only) cwpulseAIStartGS = 7, // AI start trigger (DAQ-STC devices only) cwpulseAIStopGS = 8, // AI stop trigger (DAQ-STC devices only) cwpulseATCOutGS = 9 // Analog trigger signal (DAQ-STC devices only) } CWPulseGateSources; // Constants for the InternalClockMode property on CWPulse. typedef enum { cwpulseFrequency = 0, // Frequency and DutyCycle properties are used to configure the pulse cwpulsePeriod = 1, // Period and DutyCycle properties are used to configure the pulse cwpulseTimebase = 2, // Phase1, Phase2, TimebaseSource, and TimebaseSignal propertiesare used to configure the pulse cwpulseDelayWidth = 3 // Delay and Width properties are used to configure the pulse } CWPulseInternalClockModes; // Constants used for the Timebase property on CWPulse. typedef enum { cwpulseNIDAQChoosesTB = 0, // Use the NI-DAQ default timebase source cwpulseFrequencyTB = 1, // An internal clock of frequency i n Hz, frequency defined by TimebaseSignal cwpulseSourceNTB = 2, // Counter Source signal from counter n, n defined by TimebaseSignal cwpulseGateNTB = 3, // The gate signal from counter n, n defined by TimebaseSignal cwpulseTCNTB = 4, // TC (Terminal Count) signal from the previous counter. cwpulsePFITB = 5, // PFI signal n, n defined by TimebaseSignal (DAQ-STC devices only) cwpulseRTSITB = 6, // RTSI signal n, n defined by TimebaseSignal (DAQ-STC devices only) cwpulseATCOutTB = 7 // ATCOut (Analog Trigger) signal (DAQ-STC devices only) } CWPulseTimebaseSources; // Constants for the ClockSourceType property on CWAOClock. typedef enum { cwaoNIDAQChoosesCS = 0, // Let NI-DAQ choose an appropriate clock source cwaoInternalCS = 1, // Use internal clock cwaoCounter1CS = 2, // Counter 1 cwaoCounter2CS = 3, // Counter 2 cwaoCounter3CS = 4, // Counter 3 cwaoCounter5CS = 5, // Counter 5 cwaoIOConnectionCS = 6, // I/O Connection cwaoRTSINonESeriesCS = 7, // RTSI (non-E Series only) cwaoPFILoToHiCS = 8, // PFI, low to high cwaoPFIHiToLoCS = 9, // PFI, high to low cwaoRTSILoToHiCS = 10, // RTSI, low to high cwaoRTSIHiToLoCS = 11, // RTSI, high to low cwaoGPCTRLoToHiCS = 12, // GPCTR1 output, low to high cwaoGPCTRHiToLoCS = 13, // GPCTR1 output, high to low cwaoATCOutLoToHiCS = 14, // ATCOut, low to high cwaoATCOutHiToLoCS = 15 // ATCOut, high to low } CWAOClockSources; // Constants for the TimebaseSource property on CWAOClock. typedef enum { cwaoNIDAQChoosesTB = 0, // Lets NI-DAQ choose an appropriate timebase source cwaoInternalFrequencyTB = 1, // Internal frequency (Hz) cwaoSourceNTB = 2, // Counter source n cwaoGateNTB = 3, // Gate n cwaoPFILoToHiTB = 5, // PFI, low to high cwaoPFIHiToLoTB = 6, // PFI, high to low cwaoRTSILoToHiTB = 7, // RTSI, low to high cwaoRTSIHiToLoTB = 8, // RTSI, high to low cwaoATCOutLoToHiTB = 9, // ATCOut, low to high cwaoATCOutHiToLoTB = 10 // ATCOut, high to low } CWAOTimebaseSources; // Constants for the InternalClockMode property on CWAOClock. typedef enum { cwaoFrequency = 0, // Use frequency setting (Hz) cwaoPeriod = 1, // Use period setting (seconds) cwaoTimebase = 2 // Use timebase setting } CWAOInternalClockModes; // typedef enum { cwaoHostMemory = 3, // Host memory cwaoVXIMemory = 4, // VXI memory cwaoOnBoardFIFO = 6, // Onboard FIFO cwaoDDSMemory = 7, // DDS memory buffer cwaoARBMemory = 8 // ARB memory buffer } CWAOAllocationModes; // Constants for the AllocationMode property on CWAI. typedef enum { cwaiHostMemory = 2, // Host memory cwaiVXIMemory = 3 // VXI memory } CWAIAllocationModes; // Constants for the Type property on ???? typedef enum { cwaoNoActiveCondition = 1, // No active condition cwaoDigitalPFI = 2, // PFI pin cwaoDigitalRTSI = 3, // RTSI signal cwaoAIStartTrigger = 4, // The digital signal that starts the analog input acquisition cwaoAnalogTrigger = 5, // Hardware analog trigger cwaoDigitalTrigger = 6 // Hardware digital trigger pin } CWAOConditionTypes; // typedef enum { cwaoRising = 1, // Trigger on rising edge or slope cwaoFalling = 2, // Trigger on falling edge or slope cwaoEntering = 3, // Trigger on entering window cwaoLeaving = 4 // Trigger on leaving window } CWAOTriggerModes; // Constants for the DAQTools.ConfigureATCOut method. typedef enum { cwdaqRising = 1, // Trigger on rising edge or slope cwdaqFalling = 2, // Trigger on falling edge or slope cwdaqEntering = 3 // Trigger on entering window } CWDAQTriggerModes; // typedef enum { cwaiFromReadMark = 1, // Relative to next unread scan cwaiFromStartOfBuffer = 2, // Relative to first scan acquired in buffer cwaiFromEndOfData = 3, // Relative to most recently acquired scan cwaiFromTriggerPoint = 4 // Relative to first scan acquired after stop trigger condition } CWAIReadModes; // Constants for the Polarity property on CWAIChannel typedef enum { cwaiBipolar = 1, // Bipolar channel configuration cwaiUnipolar = 2 // Unipolar channel configuration } CWAIPolarities; // typedef enum { cwaiRunning = 0, // Acquisition is in progress cwaiFinishedWithBacklog = 1, // Acquisition is finished with acquired but unread data cwaiFinishedWithNoBacklog = 2, // Acquisition is finished with no unread data cwaiPaused = 3, // Acquisition is stopped cwaiNoAcquisition = 4 // No acquisition is currently running or stopped } CWAIAcquisitionStates; // typedef enum { cwaoNoGeneration = 0, // No waveform buffer has been configured cwaoRunning = 1, // Waveform generation is in progress cwaoFinished = 2, // Waveform has been generated cwaoWaitingForData = 3, // Buffer has been allocated but no data has been written yet cwaoReady = 4 // Data has been written to buffer but waveform generation has not started yet } CWAOAcquisitionStates; // typedef enum { cwaoUpdateClock1 = 1, // Update clock 1 cwaoIntervalClock1 = 2, // Interval clock 1 cwaoUpdateClock2 = 3 // Update clock 2 } CWAOInternalClocks; // Constants for the InfoType parameter of the GetDAQDeviceInfo function. typedef enum { cwGetNIDAQVersion = 0, // NI-DAQ Version cwGetDeviceName = 1, // Device Name cwGetBaseAddress = 2, // Base Address cwGetAITransferMode = 3, // Data transfer mode for analog input cwGetAOGroup1TransferMode = 4, // Data transfer mode for analog output Group 1 cwGetAOGroup2TransferMode = 5, // Data transfer mode for analog output Group 2 cwGetGPCTR0TransferMode = 6, // Data transfer mode for GPCTR 0 cwGetGPCTR1TransferMode = 7, // Data transfer mode for GPCTR 1 cwGetDIOGroup1TransferMode = 8, // Data transfer mode for digital I/O Group 1 cwGetDIOGroup2TransferMode = 9, // Data transfer mode for digital I/O Group 2 cwGetDeviceTypeCode = 10, // Device type code cwGetDMAALevel = 11, // DMA A level cwGetDMABLevel = 12, // DMA B level cwGetDMACLevel = 13, // DMA C level cwGetInterruptALevel = 14, // Interrupt A level cwGetInterruptBLevel = 15, // Interrupt B level cwGetLPTDeviceMode = 17, // LPT device mode cwGetDAQCard700CounterSource = 18, // DAQCard-700 counter source cwGetInterruptGenerationMode = 19 // Interrupt generation mode } CWGetDAQDeviceInfoTypes; // Constants for the InfoType parameter of the SetDAQDeviceInfo function. typedef enum { cwSetAITransferMode = 0, // Data transfer mode for analog input cwSetAOGroup1TransferMode = 1, // Data transfer mode for analog output group 1 cwSetAOGroup2TransferMode = 2, // Data transfer mode for analog output group 1 cwSetGPCTR0TransferMode = 3, // Data transfer mode for general purpose counter 0 cwSetGPCTR1TransferMode = 4, // Data transfer mode for general purpose counter 1 cwSetDIOGroup1TransferMode = 5, // Data transfer mode for digital I/O group 1 cwSetDIOGroup2TransferMode = 6, // Data transfer mode for digital I/O group 2 cwSetLPTDeviceMode = 7, // LPT device mode cwSetDAQCard700CounterSource = 8, // DAQCard-700 counter 1 source cwSetInterruptGenerationMode = 9 // Interrupt generation mode } CWSetDAQDeviceInfoTypes; // Constants for the InfoValue parameter of the SetDAQDeviceInfo function. typedef enum { cwSetValueInterrupts = 0, // Interrupts cwSetValueUpTo1DMA = 1, // Up to one DMA channel cwSetValueUpTo2DMA = 2, // Up to two DMA channels cwSetValueDisable = 3, // Disable cwSetValueEnable = 4, // Enable cwSetValueIntervalTimer = 5, // Interval timer cwSetValueIOConnector = 6, // I/O connector cwSetValueAutomatic = 7, // Automatic cwSetValueInterruptEverySample = 8, // Generate interrupt every sample cwSetValueInterruptEveryHalfFIFO = 9 // Generate interrupt every half FIFO } CWSetDAQDeviceInfoValues; // Constants for the SignalName parameter of the RouteSignal function. typedef enum { cwrsPinPFI0 = 1, // PFI0 cwrsPinPFI1 = 2, // PFI1 cwrsPinPFI2 = 3, // PFI2 cwrsPinPFI3 = 4, // PFI3 cwrsPinPFI4 = 5, // PFI4 cwrsPinPFI5 = 6, // PFI5 cwrsPinPFI6 = 7, // PFI6 cwrsPinPFI7 = 8, // PFI7 cwrsPinPFI8 = 9, // PFI8 cwrsPinPFI9 = 10, // PFI9 cwrsPinGPCTR0Out = 11, // GPCTR0 out cwrsPinRTSI0 = 12, // RTSI0 cwrsPinRTSI1 = 13, // RTSI1 cwrsPinRTSI2 = 14, // RTSI2 cwrsPinRTSI3 = 15, // RTSI3 cwrsPinRTSI4 = 16, // RTSI4 cwrsPinRTSI5 = 17, // RTSI5 cwrsPinRTSI6 = 18, // RTSI6 cwrsPinRTSIClock = 19, // RTSI clock cwrsPinBoardClock = 20 // Board clock } CWRouteSignalPins; // Constants for the SignalSource parameter of the RouteSignal function. typedef enum { cwrsSourceNone = 1, // None cwrsSourceAIStartTrigger = 2, // AI Start Trigger cwrsSourceAIStopTrigger = 3, // AI Stop Trigger cwrsSourceAIConvert = 4, // AI Convert cwrsSourceGPCTR1Source = 5, // GPCTR1 Source cwrsSourceGPCTR1Gate = 6, // GPCTR1 Gate cwrsSourceAOUpdate = 7, // AO Update cwrsSourceAOStartTrigger = 8, // AO Start Trigger cwrsSourceAIScanStart = 9, // AI Scan Start cwrsSourceGPCTR0Source = 10, // GPCTR0 Source cwrsSourceGPCTR0Gate = 11, // GPCTR0 Gate cwrsSourceGPCTR0Output = 12, // GPCTR0 Output cwrsSourceRTSI0 = 13, // RTSI0 cwrsSourceRTSI1 = 14, // RTSI1 cwrsSourceRTSI2 = 15, // RTSI2 cwrsSourceRTSI3 = 16, // RTSI3 cwrsSourceRTSI4 = 17, // RTSI4 cwrsSourceRTSI5 = 18, // RTSI5 cwrsSourceRTSI6 = 19, // RTSI6 cwrsSourceRTSIClock = 20, // RTSI Clock cwrsSourceBoardClock = 21 // Board Clock } CWRouteSignalSources; // Constants for the Operation parameter of the CalibrateESeries function. typedef enum { cwCalESeriesOpSetLoadArea = 1, // Set default load area cwCalESeriesOpSelfCalibrate = 2, // Self calibrate cwCalESeriesOpExternalCalibrate = 3 // External calibrate } CWCalibrateESeriesOperations; // Constants for the CalibrationSet parameter of the CalibrateESeries function. typedef enum { cwCalESeriesFactoryEEPROMSet = 1, // Factory EEPROM area cwCalESeriesNIDAQSet = 2, // NI-DAQ software area cwCalEseriesUserEEPROMSet = 3 // User EEPROM area } CWCalibrateESeriesSets; // Constants for the Operation parameter of the CalibrateMIO function. typedef enum { cwCalMIOpLoadConstants = 1, // Load calibration constants from EEPROM location cwCalMIOpCalibrateADC = 2, // Calibrate the ADC using internal reference voltage calibration constants cwCalMIOpCalibrateDAC = 3, // Calibrate the DACs using internal voltage calibration constants cwCalMIOpCalibrateRefVoltage = 4, // Calibrate the internal reference voltage cwCalMIOpCopyADCConstants = 5, // Copy ADC calibration constants cwCalMIOpCopyDACConstants = 6 // Copy DAC calibration constants } CWCalibrateMIOOperations; // Constants for the EEPROMLocation parameter of the CalibrateMIO function. typedef enum { cwCalMIOEEPROMLocUser1 = 1, // User calibration area 1 cwCalMIOEEPROMLocUser2 = 2, // User calibration area 2 cwCalMIOEEPROMLocUser3 = 3, // User calibration area 3 cwCalMIOEEPROMLocUser4 = 4, // User calibration area 4 cwCalMIOEEPROMLocUser5 = 5, // User calibration area 5 (load area for the AT-MIO-16F-5) cwCalMIOEEPROMLocUser6 = 6, // User calibration area 6 (AT-MIO-16X and AT-MIO-64F-5 only) cwCalMIOEEPROMLocUser7 = 7, // User calibration area 7 (AT-MIO-16X and AT-MIO-64F-5 only) cwCalMIOEEPROMLoc16XArea = 8, // Load area for the AT-MIO-16X cwCalMIOEEPROMLoc64F5Area = 8, // Load area for the AT-MIO-64F-5 cwCalMIOEEPROMLocUnipolar = 9, // Factory calibration area for unipolar (AT-MIO-16X and AT-MIO-64F-5 only) cwCalMIOEEPROMLocBipolar = 10, // Factory calibration area for bipolar (AT-MIO-16X and AT-MIO-64F-5 only) cwCalMIOEEPROMLoc16F5Area = 11 // AT-MIO-16F-5 factory calibration area } CWCalibrateMIOEEPROMLocations; // Constants for the RefLocation parameter of the CalibrateMIO function. typedef enum { cwCalMIORefLocUser1 = 1, // User reference area 1 cwCalMIORefLocUser2 = 2, // User reference area 2 cwCalMIORefLocUser3 = 3, // User reference area 3 (AT-MIO-16X and AT-MIO-64F-5 only) cwCalMIORefLocUser4 = 4, // User reference area 4 (AT-MIO-16X and AT-MIO-64F-5 only) cwCalMIORefLocFactory = 6 // Factory reference area (user cannot write into this area) } CWCalibrateMIOReferenceLocations; // Constants for the Control parameter of the RouteRTSI function. typedef enum { cwRouteRTSIControlClear = 1, // Clear cwRouteRTSIControlConnect = 2, // Connect cwRouteRTSIControlDisconnect = 3, // Disconnect cwRouteRTSIControlConstruct = 4 // Construct the trigger line UseMap only } CWRouteRTSIControls; // Constants for the Direction parameter of the RouteRTSI function. typedef enum { cwRouteRTSIDirBoardRecieve = 0, // The board receives the signal from the bus cwRouteRTSIDirBoardTransmit = 1 // The board transmits the signal to the bus } CWRouteRTSIDirections; // Constants for SCXI module types. typedef enum { cwSCXIModuleEmpty = -1, // The slot is empty cwSCXIModule1121 = 2, // SCXI-1121 cwSCXIModule1120 = 4, // SCXI-1120 cwSCXIModule1100 = 6, // SCXI-1100 cwSCXIModule1140 = 8, // SCXI-1140 cwSCXIModule1122 = 10, // SCXI-1122 cwSCXIModule1160 = 12, // SCXI-1160 cwSCXIModule1161 = 14, // SCXI-1161 cwSCXIModule1162 = 16, // SCXI-1162 cwSCXIModule1163 = 18, // SCXI-1163 cwSCXIModule1124 = 20, // SCXI-1124 cwSCXIModule1162HV = 24, // SCXI-1162HV cwSCXIModule1163R = 28, // SCXI-1163R cwSCXIModule1102 = 30, // SCXI-1102 cwSCXIModule1141 = 32, // SCXI-1141 cwSCXIModule1200 = 38, // SCXI-1200 cwSCXIModule2400 = 40, // SCXI-2400 cwSCXIModule1120D = 68 // SCXI-1120D } CWSCXIModuleTypes; // Constants for SCXI chassis types. typedef enum { cwSCXIChassisNone = 0, // No chassis is configured for this ID cwSCXIChassis1000 = 1, // SCXI-1000 4-slot chassis cwSCXIChassis1001 = 2, // SCXI-1001 12-slot chassis cwSCXIChassis2000 = 3, // SCXI-2000 4-slot chassis cwSCXIChassisVXI = 4 // VXI-SCXI } CWSCXIChassisTypes; // Constants for SCXI operating modes. typedef enum { cwSCXIOpModeMultiplexed = 0, // Multiplexed mode cwSCXIOpModeParallel = 1 // Parallel mode } CWSCXIOperatingModes; // Constants for SCXI communication modes. typedef enum { cwSCXIComModeDisabled = 0, // Communication disabled cwSCXIComModeDigital = 1, // A digital port of a DAQ device that is cabled to a module in the chassis is used to communicate serially with the chassis cwSCXIComModeParallel = 2, // A parallel port of the PC that is cabled to the SCXI-1200 module is used to communicate with the chassis cwSCXIComModeSerial = 3 // A serial port of the PC that is cabled to the Remote SCXI unit is used to communicate with the chassis } CWSCXICommunicationModes; // Constants for the ParamName parameter of the AIParameter function. typedef enum { cwaiNotchFilterFrequency = 0, // Notch filter frequency cwaiMeasurementMode = 1, // Measurement mode cwaiOpenTCDetection = 2, // Open thermocouple detection cwaiGroundReferencing = 3, // Ground referencing cwaiProbeAttenuation = 4, // Probe attenuation cwaiActualRISCount = 5, // Actual RIS count cwaiPhysicalTimeBins = 6, // Total number of physical time bins cwaiMinimalRISCount = 7, // Minimal RIS count cwaiMaximalOversampling = 8, // Maximal oversampling cwaiMaximalScanRate = 9 // Maximal scan rate } CWAIParameterNames; // Constants for the ParamName parameter of the AOParameter function. typedef enum { cwaoFIFOTransferCondition = 0, // FIFO transfer condition cwaoFIFOTransferCount = 1, // FIFO transfer count cwaoReglitching = 2, // Reglitching cwaoGroundDACReference = 3, // Ground DAC Reference cwaoAnalogFilterEnable = 4, // Analog fitler enable cwaoDigitalFilterEnable = 5, // Digital filter enable cwaoOutputAttenuation = 7, // Output attenuation cwaoOutputEnable = 8, // Output enable cwaoOutputImpedance = 9, // Output impedance cwaoOutputOffset = 10, // Output offset cwaoPLLRefFrequency = 11, // Phase locked loop (PLL) reference frequency cwaoSyncDutyCycleHigh = 12, // SYNC duty cycle high cwaoTriggerMode = 13, // Trigger mode cwaoFilterCorrectionFreq = 15 // Filter correction frequency } CWAOParameterNames; // Constants for the ParamName parameter of the DIOParameter function. typedef enum { cwdioInputPortLogicThreshold = 0 // Input port logic theshold } CWDIOParameterNames; // Constants for the Operation parameter of the AIParameter, AOParameter, and DIOParameter functions of the CWDAQTools control. typedef enum { cwdaqParameterSet = 0, // Set parameter cwdaqParameterGet = 1, // Get parameter cwdaqParameterTranslate = 2 // Translate parameter } CWDAQParameterOperations; // Constants for the ValueIn and ValueOut parameters of the AIParameter function. typedef enum { cwaiAutomatic = 0, // Automatic cwaiVolts = 1, // Volts cwaiVoltsRMS = 2, // Volts RMS cwaiOhms = 3, // Ohms cwaiDiodes = 4 // Diodes } CWAIParameterValues; // Constants for the ValueIn and ValueOut parameters of the AOParameter function. typedef enum { cwaoAutomatic = 0, // Automatic cwaoFIFONotFull = 1, // FIFO not full cwaoFIFOHalfFullOrLess = 2, // FIFO half full or less cwaoFIFOEmpty = 3, // FIFO empty cwaoFIFOHalfFullOrLessUntilFull = 4 // FIFO half full or less until full (DMA only) } CWAOParameterValues; // Constants for the ValueIn and ValueOut parameters of the DIOParameter function. typedef enum { cwdioAutomatic = 0 // Automatic } CWDIOParameterValues;