File MIES_DataConfigurator.ipf¶
DC Handle preparations before data acquisition or test pulse related to the DAQ data and config waves
Functions
-
static variable DC_UpdateGlobals(string device, variable dataAcqOrTP)¶
Update global variables used by the Testpulse or DAQ.
-
variable DC_Configure(string device, variable dataAcqOrTP, variable multiDevice = defaultValue)¶
Prepare test pulse/data acquisition.
- Parameters:
device – panel title
dataAcqOrTP – one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
multiDevice – [optional: defaults to false] Fine tune data handling for single device (false) or multi device (true)
- Throws:
Abort – configuration failure
-
static variable DC_UpdateHSProperties(string device, wave ADCs)¶
-
static variable DC_NoOfChannelsSelected(string device, variable type)¶
Return the number of selected checkboxes for the given type.
-
static variable DC_ChannelCalcForDAQConfigWave(string device, variable dataAcqOrTP)¶
Returns the total number of combined channel types (DA, AD, and front TTLs) selected in the DA_Ephys Gui.
- Parameters:
device – panel title
dataAcqOrTP – acquisition mode, one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
-
static variable DC_AreTTLsInRackChecked(string device, variable rackNo)¶
Returns the ON/OFF status of the front TTLs on a specified rack.
- Parameters:
device – device
rackNo – Only the ITC1600 can have two racks. For all other ITC devices RackNo = 0.
-
static variable DC_LongestOutputWave(string device, variable dataAcqOrTP, variable channelType)¶
Returns the number of points in the longest stimset.
- Parameters:
device – device
dataAcqOrTP – acquisition mode, one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
channelType – channel type, one of ChannelTypeAndControlConstants
-
static variable DC_CalculateDAQDataWaveLength(string device, variable dataAcqOrTP)¶
Calculate the required length of the DAQDataWave.
ITC Hardware:
The DAQDataWave length = 2^x where is the first integer large enough to contain the longest output wave plus one. X also has a minimum value of 17 to ensure sufficient time for communication with the ITC device to prevent FIFO overflow or underrun.
NI Hardware:
Returns stopCollectionPoint
- Parameters:
device – panel title
dataAcqOrTP – acquisition mode, one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
-
static variable DC_MakeDAQConfigWave(string device, variable numActiveChannels)¶
Create the DAQConfigWave used to configure the DAQ device.
- Parameters:
device – panel title
numActiveChannels – number of active channels as returned by DC_ChannelCalcForDAQConfigWave()
-
static std::tuple<WaveOrNull, WaveRefWave> DC_MakeAndGetDAQDataWave(string device, variable hardwareType, variable numActiveChannels, variable samplingInterval, variable dataAcqOrTP)¶
Creates DAQDataWave; The wave that the device takes DA and TTL data from and passes AD data to for all channels.
Config all refers to configuring all the channels at once
- Parameters:
device – panel title
hardwareType – hardware type
numActiveChannels – number of active channels as returned by DC_ChannelCalcForDAQConfigWave()
samplingInterval – sampling interval as returned by DAP_GetSampInt()
dataAcqOrTP – one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
-
static wave DC_MakeNIChannelWave(string device, variable numRows, variable samplingInterval, variable index, variable type, variable dataAcqOrTP)¶
Creates a single NIChannel wave.
Config all refers to configuring all the channels at once
- Parameters:
device – panel title
numRows – size of the 1D channel wave
samplingInterval – minimum sample intervall in microseconds
index – number of NI channel
type – numeric data type of NI channel
dataAcqOrTP – one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
- Returns:
Wave Reference to NI Channel wave
-
static variable DC_MakeHelperWaves(string device, variable dataAcqOrTP)¶
Initializes the waves used for displaying DAQ/TP results in the oscilloscope window and the scaled data wave.
- Parameters:
device – panel title
dataAcqOrTP – one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
-
static variable DC_InitDataHoldingWave(wave wv, variable numRows, variable sampleInterval, variable numDACs, variable numADCs, variable numTTLs, variable type = defaultValue, variable isFourierTransform = defaultValue)¶
Initialize data holding waves to NaN.
-
wave DC_GetFilteredChannelState(string device, variable dataAcqOrTP, variable channelType, variable DAQChannelType = defaultValue)¶
Return the list of active channels, filtered for various special cases.
- Parameters:
device – panel title
dataAcqOrTP – one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
channelType – one of the channel type constants from ChannelTypeAndControlConstants
DAQChannelType – only return channels as active if they have the desired DAQChannel type (only respected for DA channel)
-
static variable DC_PlaceDataInDAQConfigWave(string device, variable dataAcqOrTP)¶
Places channel (DA, AD, and TTL) settings data into DAQConfigWave.
- Parameters:
device – panel title
dataAcqOrTP – one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
-
static variable DC_GetDecimationFactor(string device, variable dataAcqOrTP)¶
Get the decimation factor for the current channel configuration.
This is the factor between the minimum sampling interval and the real. If the multiplier is taken into account depends on
dataAcqOrTP
.- Parameters:
device – device
dataAcqOrTP – one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
-
static variable DC_CalculateLongestSweep(string device, variable dataAcqOrTP, variable channelType)¶
Returns the longest sweep in a stimulus set across the given channel type.
- Parameters:
device – device
dataAcqOrTP – mode, either DATA_ACQUISITION_MODE or TEST_PULSE_MODE
channelType – One of ChannelTypeAndControlConstants
- Returns:
number of data points, not time
-
static variable DC_CalculateStimsetLength(wave stimSet, string device, variable dataAcqOrTP)¶
Get the stimset length for the real sampling interval.
- Parameters:
stimSet – stimset wave
device – device
dataAcqOrTP – one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
-
static variable DC_CalculateGeneratedDataSize(string device, variable dataAcqOrTP, variable genLength)¶
Get the length for the real sampling interval from a generated wave with length.
- Parameters:
device – device
dataAcqOrTP – one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
genLength – length of a generated data wave
-
static variable DC_PlaceDataInDAQDataWave(string device, variable numActiveChannels, variable dataAcqOrTP, variable multiDevice)¶
Places data from appropriate DA and TTL stimulus set(s) into DAQDataWave. Also records certain DA_Ephys GUI settings into sweepDataLNB and sweepDataTxTLNB.
- Parameters:
device – panel title
numActiveChannels – number of active channels as returned by DC_ChannelCalcForDAQConfigWave()
dataAcqOrTP – one of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
multiDevice – Fine tune data handling for single device (false) or multi device (true)
- Throws:
Abort – configuration failure
-
static variable DC_MakeTTLWave(string device, DataConfigurationResult *s)¶
-
static variable DC_WriteTTLIntoDAQDataWave(string device, DataConfigurationResult *s)¶
-
static variable DC_PrepareLBNEntries(string device, DataConfigurationResult *s)¶
-
static variable DC_FillSetEventFlag(string device, DataConfigurationResult *s)¶
-
static variable DC_FillDAQDataWaveForTP(string device, DataConfigurationResult *s)¶
-
static variable DC_FillDAQDataWaveForDAQ(string device, DataConfigurationResult *s)¶
-
static std::tuple<DataConfigurationResult> DC_GetConfiguration(string device, variable numActiveChannels, variable dataAcqOrTP, variable multiDevice)¶
-
static variable DC_SetupConfigurationTTLstimSets(string device, DataConfigurationResult *s)¶
fills in TTL stimset wave references in DataConfigurationResult structure needs: s.hardwareType, s.numXXXEntries fields
-
static variable DC_DocumentHardwareProperties(string device, variable hardwareType)¶
Document hardware type/name/serial number into the labnotebook.
-
static variable DC_GetStimsetAcqCycleID(string device, variable fingerprint, variable DAC)¶
Return the stimset acquisition cycle ID.
- Parameters:
device – device
fingerprint – fingerprint as returned by DC_GenerateStimsetFingerprint()
DAC – DA channel
-
static variable DC_GenerateStimsetFingerprint(variable raCycleID, string setName, variable setCycleCount, variable setChecksum)¶
Generate the stimset fingerprint.
This fingerprint is unique for the combination of the following properties:
Repeated acquisition cycle ID
stimset name
stimset checksum
set cycle count
Always then this fingerprint changes, a new stimset acquisition cycle ID has to be generated.
-
static std::tuple<variable, variable, variable> DC_CheckIfDataWaveHasBorderVals(string device, variable dataAcqOrTP)¶
-
variable DC_DocumentChannelProperty(string device, string entry, variable headstage, variable channelNumber, variable channelType, variable var = defaultValue, string str = defaultValue)¶
Document channel properties of DA and AD channels.
Knows about unassociated channels and creates the special key returned by CreateLBNUnassocKey().
- Parameters:
device – device
entry – name of the property
headstage – number of headstage, must be
NaN
for unassociated channelschannelNumber – number of the channel
channelType – type of the channel
var – [optional] numeric value
str – [optional] string value
-
static variable DC_ITC_MakeTTLWave(string device, DataConfigurationResult *s)¶
Combines the TTL stimulus sweeps across different TTL channels into a single wave.
- Parameters:
device – panel title
s – DataConfigurationResult structure
-
static variable DC_NI_MakeTTLWave(string device, DataConfigurationResult *s)¶
-
static std::tuple<variable, variable> DC_CalculateChannelColumnNo(string device, string setName, variable channelNo, variable channelType)¶
Returns column number/step of the stimulus set, independent of the times the set is being cycled through (as defined by SetVar_DataAcq_SetRepeats)
- Parameters:
device – panel title
setName – name of the stimulus set
channelNo – channel number
channelType – channel type, one of CHANNEL_TYPE_DAC or CHANNEL_TYPE_TTL
- Return values:
column – stimset column
setCycleCount – set cycle count
-
static variable DC_ReturnTotalLengthIncrease(DataConfigurationResult *s)¶
Returns the length increase of the DAQDataWave following onset/termination delay insertion and distributed data aquisition. Does not incorporate adaptations for oodDAQ.
All returned values are in number of points, not in time.
-
static variable DC_GetStopCollectionPoint(string device, DataConfigurationResult *s)¶
Calculate the stop collection point, includes all required global adjustments.
-
variable DC_GotTPChannelWhileDAQ(string device)¶
Returns 1 if a channel is set to TP, the check is through the stimset name from the GUI.
-
variable DC_GetChannelTypefromHS(string device, variable headstage)¶
Get the channel type of given headstage.
- Parameters:
device – panel title
headstage – head stage
- Returns:
One of DaqChannelTypeConstants