File MIES_WaveDataFolderGetters.ipf¶
Collection of Wave and Datafolder getter functions.
All functions with return types
DF
orWave
return an existing wave or datafolder.Prefer functions which return a
DFREF
over functions which return strings. The latter ones are only useful if you need to know if the folder exists.Modifying wave getter functions might require to introduce wave versioning, see Wave versioning support
Experiment Documentation
-
static const double LBN_NUMERICAL_DESCRIPTION_VERSION = 2¶
-
static const double LBN_TEXTUAL_DESCRIPTION_VERSION = 1¶
-
static const double SWEEP_SETTINGS_WAVE_VERSION = 39¶
-
dfref GetLabNotebookFolder()¶
Return the datafolder reference to the lab notebook.
-
string GetLabNotebookFolderAsString()¶
Return the full path to the lab notebook, e.g. root:MIES:LabNoteBook.
UTF_NOINSTRUMENTATION
-
dfref GetDevSpecLabNBFolder(string device)¶
Return the data folder reference to the device specific lab notebook.
-
string GetDevSpecLabNBFolderAsString(string device)¶
Return the full path to the device specific lab notebook, e.g. root:MIES:LabNoteBook:ITC18USB:Device0.
UTF_NOINSTRUMENTATION
-
wave DAQ_LBN_GETTER_PROTO(string win)¶
-
wave GetLBTextualValues(string device)¶
Returns a wave reference to the text labnotebook.
Rows:
Filled at runtime
Columns:
Filled at runtime
Layers:
0-7: data for a particular headstage using the layer index
8: headstage independent data
-
static variable UpgradeLabNotebook(string device)¶
Handle upgrades of the numerical/textual labnotebooks in one step.
This function is idempotent and must stay that way.
Supported upgrades:
Addition of the third column “TimeStampSinceIgorEpochUTC”
Addition of nineth layer for headstage independent data
Conversion of numeric labnotebook to 64bit floats
Removal of invalid units for “Stim Scale Factor”, “DA Gain” and “AD Gain”
Addition of fourth column “EntrySourceType”
Fix unit and tolerance of “Repeat Sets”
Reapplying the dimension labels as the old ones were cut off after 31 bytes
Making dimension labels valid liberal object names
Extending the row dimension to 6 for the key waves
Fixing empty column dimension labels in key waves
-
static string FixInvalidLabnotebookKey(string name)¶
-
static variable SetLBKeysRowDimensionLabels(wave wv)¶
-
wave GetLBTextualKeys(string device)¶
Return a wave reference to the text labnotebook keys.
Rows:
0: Parameter Name
1: Parameter Unit
2: Parameter Tolerance
Columns:
0: Sweep Number
1: Time Stamp in local time zone
2: Time Stamp in UTC
3: Source entry type, one of DataAcqModes
4: Acquisition state, one of AcquisitionStates
other columns are filled at runtime
-
wave GetLBNumericalKeys(string device)¶
Return a wave reference to the numeric labnotebook keys.
Rows:
0: Name
1: Units
2: Tolerance
3: Description
4: Headstage Contingency
5: ClampMode
Columns:
0: Sweep Number
1: Time Stamp in local time zone
2: Time Stamp in UTC
3: Source entry type, one of DataAcqModes
4: Acquisition state, one of AcquisitionStates
other columns are filled at runtime
-
wave GetLBNumericalDescription(variable forceReload = defaultValue)¶
Return a wave reference to the static and read-only labnotebook descriptions for the numerical entries.
Requirements for each entry [
0: Parameter Not empty
1: Units Something ParseUnit() can grok or
degC
,bitMask
,%
orOn/Off
2: Tolerance LABNOTEBOOK_NO_TOLERANCE or a positive number including zero
3: Description Not empty
4: Headstage Contingency One of
ALL
,DEPEND
,INDEP
5: Clamp Mode One of
IC
,VC
,IC;I=0
,IC;VC
,IC;VC;I=0
or empty
See also
CheckLBNDescriptions()]:
-
wave GetLBTextualDescription(variable forceReload = defaultValue)¶
-
static wave GetLBDescription_Impl(string name, variable forceReload)¶
-
variable SaveLBNumericalDescription()¶
-
variable SaveLBTextualDescription()¶
-
static variable SaveLBDescription_Impl(string name, variable version)¶
-
static variable UpgradeResultsNotebook()¶
Handle upgrades of the numerical/textual results logbooks in one step.
This function is idempotent and must stay that way.
Supported upgrades:
Fixing empty column dimension labels in key waves
-
wave GetLBNumericalValues(string device)¶
Return a wave reference to the numeric labnotebook keys.
Rows:
Filled at runtime
Columns:
Filled at runtime
Layers:
0-7: data for a particular headstage using the layer index
8: headstage independent data
-
wave GetNumericalResultsKeys()¶
Return a wave reference to the numerical results keys.
Rows:
0: Parameter Name
1: Parameter Unit
2: Parameter Tolerance
Columns:
0: Sweep Number (always NaN)
1: Time Stamp in local time zone
2: Time Stamp in UTC
3: Source entry type, one of DataAcqModes
4: Acquisition state, one of AcquisitionStates
other columns are filled at runtime
-
wave GetNumericalResultsValues()¶
Return a wave reference to the numerical results values.
Rows:
Filled at runtime
Columns:
Filled at runtime
Layers:
0-7: data for a particular headstage using the layer index
8: headstage independent data
-
wave GetTextualResultsKeys()¶
Return a wave reference to the textual results keys.
One user of the results wave is Sweep Formula. It stores the code and various meta information in it every time it is executed.
Rows:
0: Parameter Name
1: Parameter Unit
2: Parameter Tolerance
Columns:
SweepNum: Sweep number (always NaN)
TimeStamp: Time stamp in local time zone since igor epoch
TimeStampSinceIgorEpochUTC: time stamp in UTC since igor epoch
EntrySourceType: One of DataAcqModes
AcquisitionState: One of AcquisitionStates
Sweep Formula code: Executed code from SweepFormula
Sweep Formula sweeps/channels: Displayed sweeps and channels as 2D array in the form
$sweep0;$channelType0;$channelNumber0;,$sweep1;$channelType1;$channelNumber1;,...
See also
Sweep Formula displayed sweeps: Displayed sweeps (deprecated)
Sweep Formula active channels: Active channels (deprecated)
Sweep Formula experiment: Name of the experiment
Sweep Formula device: Device
Sweep Formula cursor X: Information about each available cursor, see GetCursorInfos() for the exact format.
Sweep Formula store [X]: Stored data from SweepFormula
store
operation. TheX
is dynamic and the first argument passed.Other columns are created and filled at runtime
-
wave GetTextualResultsValues()¶
Return a wave reference to the numerical results values.
Rows:
Filled at runtime
Columns:
Filled at runtime
Layers:
0-7: data for a particular headstage using the layer index
8: headstage independent data
-
wave GetLBRowCache(wave values)¶
Return the labnotebook cache wave holding the first and last rows into
values
of each sweep number.Uses the
values
wave modification count to reset itself upon a change.The stored information is the returned
first
/last
parameter from GetLastSettingNoCache().Rows:
Sweep numbers (only existing sweeps)
Columns:
0: First row
1: Last row
Layers:
One for each entrySourceType, mapped via EntrySourceTypeMapper()
-
wave GetLBIndexCache(wave values)¶
Index wave which serves as a labnotebook cache.
Rows:
Sweep numbers
Columns:
One for each LBN key
Layers:
One for each entrySourceType, mapped via EntrySourceTypeMapper()
The wave can be indexed with sweepNumber, settings column and entrySourceType to return the row index of the labnotebok wave where the desired value can be found.
Contents:
row index if the entry could be found, LABNOTEBOOK_MISSING_VALUE if it could not be found, and LABNOTEBOOK_UNCACHED_VALUE if the cache is empty.
-
wave GetLBNidCache(wave numericalValues)¶
Free wave to cache the sweeps of one RAC/SCI ID.
Type of content:
valid wave
invalid wave reference (uncached entry)
wave of size zero (non-existant entry)
Rows:
One for each sweep number
Columns:
RAC (repeated acquisition cycle IDs) sweeps
SCI (simset cycle IDs) sweeps
-
static variable SetSweepSettingsDimLabels(wave dest, WaveText sourceKey)¶
Uses the parameter names from the
sourceKey
columns and write them as dimension into the columns of dest.
-
wave GetSweepSettingsWave(string device)¶
Returns a wave reference to the sweepSettingsWave.
sweepSettingsWave is used to save stimulus settings for each data sweep and create waveNotes for tagging data sweeps
Additional columns, necessary for unassociated channels, are created on runtime.
Rows:
One row
Columns:
Same as GetSweepSettingsKeyWave
Layers:
0-7: data for a particular headstage using the layer index
8: headstage independent data
-
wave GetSweepSettingsKeyWave(string device)¶
Returns a wave reference to the sweepSettingsKeyWave.
sweepSettingsKeyWave is used to index save stimulus settings for each data sweep and create waveNotes for tagging data sweeps
Rows:
0: Parameter
1: Units
2: Tolerance Factor
Columns:
0: Stim Scale Factor
1: DAC
2: ADC
3: DA Gain
4: AD Gain
5: Set sweep count
6: Insert TP on/off
7: Inter-trial interval (used after the sweep it is documented for)
8: TTL rack zero bits (ITC hardware), bit sum in
INDEP_HEADSTAGE
layer of the active DAEphys TTL channels (called TTLBit)9: TTL rack one bits, same for the second rack
10: TTL rack zero channel (ITC hardware), device type dependent hardware channel used for acquisition in
INDEP_HEADSTAGE
layer11: TTL rack one channel (ITC hardware), same for the second rack
12: Delay onset user
13: Delay onset auto
14: Delay termination
15: Delay distributed DAQ
16: Distributed DAQ
17: Repeat Sets
18: Scaling zero
19: Indexing
20: Locked indexing
21: Repeated Acquisition
22: Random Repeated Acquisition
23: Sampling interval DA
24: Sampling interval AD
25: Sampling interval TTL
26: Sampling interval multiplier
27: Stim set length
28: oodDAQ Pre Feature
29: oodDAQ Post Feature
30: oodDAQ Resolution
31: Optimized Overlap dDAQ
32: Delay onset oodDAQ
33: Repeated Acquisition Cycle ID
34: Stim Wave Checksum (can be used to disambiguate cases where two stimsets are named the same but have different contents)
35: Multi Device mode
36: Background Testpulse
37: Background DAQ
38: Sampling interval multiplier
39: TP during ITI
40: Amplifier change via I=0
41: Skip analysis functions
42: Repeat sweep on async alarm
43: Set Cycle Count
44: Stimset cycle ID
45: Digitizer Hardware Type, one of HardwareDACTypeConstants
46: Fixed frequency acquisition
47: Headstage Active, binary flag that indicates the enabled headstage(s), the index is the headstage number
48: Clamp Mode
49: Igor Pro bitness
50: DA ChannelType, one of DaqChannelTypeConstants
51: AD ChannelType, one of DaqChannelTypeConstants
52: oodDAQ member, true if headstage takes part in oodDAQ mode, false otherwise
53: Autobias % (DAEphys->Settings->Amplifier)
54: Autobias Interval (DAEphys->Settings->Amplifier)
55: TP after DAQ
56: Epochs version
57: Get/Set Inter-trial interval
58: Double precision data
59: Save amplifier settings
60: Require amplifier
61: Skip Ahead
-
wave GetSweepSettingsTextWave(string device)¶
Returns a wave reference to SweepSettingsTxtData.
SweepSettingsTxtData is passed to ED_AddEntriesToLabnotebook to add entries to the labnotebook.
Rows:
Only one
Columns:
Same as GetSweepSettingsTextKeyWave
Layers:
0-7: data for a particular headstage using the layer index
8: headstage independent data
-
wave GetSweepSettingsTextKeyWave(string device)¶
Returns a wave reference to the SweepSettingsKeyTxtData.
SweepSettingsKeyTxtData is used to index SweepSettingsTxtData.
Rows:
Only one
Columns:
0: Stim set
1: DA unit
2: AD unit
3: TTL rack zero stim sets (ITC hardware), string list in
INDEP_HEADSTAGE
layer with empty entries indexed by [0, NUM_DA_TTL_CHANNELS[4: TTL rack one stim sets (ITC hardware), same for the second rack
5: Analysis function pre daq
6: Analysis function mid sweep
7: Analysis function post sweep
8: Analysis function post set
9: Analysis function post daq
10: Analysis function pre sweep
11: Analysis function generic
12: Analysis function pre set
13: Analysis function parameters
14: oodDAQ regions list
Format:
$begin1-$end1;$begin2-$end2;...
.Unit:
stimset build ms
.
15: Electrode
16: High precision sweep start timestamp in ISO8601 format
17: Stimset wave note
18: TTL rack zero set sweep counts (ITC hardware)
19: TTL rack one set sweep counts (ITC hardware)
20: TTL set sweep counts (NI hardware), string list in
INDEP_HEADSTAGE
layer with empty entries indexed by [0, NUM_DA_TTL_CHANNELS[21: TTL stim sets (NI hardware), string list in
INDEP_HEADSTAGE
layer with empty entries indexed by [0, NUM_DA_TTL_CHANNELS[22: TTL channels (NI hardware), string list in
INDEP_HEADSTAGE
layer with empty entries indexed by [0, NUM_DA_TTL_CHANNELS[23: Follower Device, list of follower devices (not supported anymore and therefore always empty)
24: MIES version, multi line mies version string
25: Igor Pro version
26: Digitizer Hardware Name
27: Digitizer Serial Numbers
28: Epochs
29: JSON config file [path] (
|
separated list of full file paths)30: JSON config file [SHA-256 hash] (
|
separated list of hashes)31: JSON config file [stimset nwb file path]
32: Igor Pro build
33: Indexing End Stimset
34: TTL Indexing End Stimset (hardware agnostic), string list in
INDEP_HEADSTAGE
layer with empty entries indexed by [0, NUM_DA_TTL_CHANNELS[35: TTL Stimset wave note (hardware agnostic), same string list formatting
36: TTL Stim Wave Checksum (hardware agnostic) URL-encoded payload, see URL-encoding for background information, same string list formatting
37: TTL Stim set length (hardware agnostic), same string list formatting
38: TTL rack zero set cycle counts (ITC hardware)
39: TTL rack one set cycle counts (ITC hardware)
40: TTL set cycle counts (NI hardware), string list in
INDEP_HEADSTAGE
layer with empty entries indexed by [0, NUM_DA_TTL_CHANNELS[41: Device (aka DAEphys panel name)
Wavebuilder
-
static const double WP_WAVE_LAYOUT_VERSION = 13¶
-
static const double WPT_WAVE_LAYOUT_VERSION = 11¶
-
static const double SEGWVTYPE_WAVE_LAYOUT_VERSION = 7¶
-
dfref GetWaveBuilderPath()¶
Returns a data folder reference to the base.
UTF_NOINSTRUMENTATION
-
string GetWaveBuilderPathAsString()¶
Returns the full path to the base path, e.g. root:MIES:WaveBuilder.
UTF_NOINSTRUMENTATION
-
dfref GetWaveBuilderDataPath()¶
Returns a data folder reference to the data.
UTF_NOINSTRUMENTATION
-
string GetWaveBuilderDataPathAsString()¶
Returns the full path to the data folder, e.g root:MIES:WaveBuilder:Data.
UTF_NOINSTRUMENTATION
-
dfref GetWaveBuilderDataDAPath()¶
Returns a data folder reference to the data.
UTF_NOINSTRUMENTATION
-
string GetWaveBuilderDataDAPathAsString()¶
Returns the full path to the data folder, e.g root:MIES:WaveBuilder:Data:DA.
UTF_NOINSTRUMENTATION
-
dfref GetWaveBuilderDataTTLPath()¶
Returns a data folder reference to the data.
UTF_NOINSTRUMENTATION
-
string GetWaveBuilderDataTTLPathAsString()¶
Returns the full path to the data folder, e.g root:MIES:WaveBuilder:Data:TTL.
UTF_NOINSTRUMENTATION
-
dfref GetWBSvdStimSetParamPath()¶
Returns a data folder reference to the stimulus set parameter.
UTF_NOINSTRUMENTATION
-
string GetWBSvdStimSetParamPathAS()¶
Returns the full path to the stimulus set parameter folder, e.g. root:MIES:WaveBuilder:SavedStimulusSetParameters.
UTF_NOINSTRUMENTATION
-
dfref GetWBSvdStimSetPath()¶
Returns a data folder reference to the stimulus set.
UTF_NOINSTRUMENTATION
-
string GetWBSvdStimSetPathAsString()¶
Returns the full path to the stimulus set, e.g. root:MIES:WaveBuilder:SavedStimulusSets.
UTF_NOINSTRUMENTATION
-
dfref GetWBSvdStimSetParamDAPath()¶
Returns a data folder reference to the stimulus set parameters of
DA
type.UTF_NOINSTRUMENTATION
-
string GetWBSvdStimSetParamDAPathAS()¶
Returns the full path to the stimulus set parameters of
DA
type, e.g. root:MIES:WaveBuilder:SavedStimulusSetParameters:DA.UTF_NOINSTRUMENTATION
-
dfref GetWBSvdStimSetParamTTLPath()¶
Returns a data folder reference to the stimulus set parameters of
TTL
type.UTF_NOINSTRUMENTATION
-
string GetWBSvdStimSetParamTTLAsString()¶
Returns the full path to the stimulus set parameters of
TTL
type, e.g. root:MIES:WaveBuilder:SavedStimulusSetParameters:TTL.UTF_NOINSTRUMENTATION
-
dfref GetWBSvdStimSetDAPath()¶
Returns a data folder reference to the stimulus set of
DA
type.UTF_NOINSTRUMENTATION
-
string GetWBSvdStimSetDAPathAsString()¶
Returns the full path to the stimulus set of
DA
type, e.g. root:MIES:WaveBuilder:SavedStimulusSet:DA.UTF_NOINSTRUMENTATION
-
dfref GetWBSvdStimSetTTLPath()¶
Returns a data folder reference to the stimulus set of
TTL
type.UTF_NOINSTRUMENTATION
-
string GetWBSvdStimSetTTLPathAsString()¶
Returns the full path to the stimulus set of
TTL
type, e.g. root:MIES:WaveBuilder:SavedStimulusSet:TTL.UTF_NOINSTRUMENTATION
-
wave GetTestPulse()¶
Return the testpulse wave.
This wave will be written in TP_CreateTestPulseWave() and will use the real sampling interval.
-
wave GetTestPulseAsFree()¶
-
static variable GetWPVersion()¶
Automated testing helper.
-
variable UpgradeWaveParam(wave wv)¶
Upgrade the wave layout of
WP
to the most recent one as defined inWP_WAVE_LAYOUT_VERSION
-
static variable AddDimLabelsToWP(wave wv)¶
-
wave GetWaveBuilderWaveParam()¶
Return the parameter wave for the wave builder panel.
Rows:
Variables synced to GUI controls, see e.g. WB_MakeWaveBuilderWave in MIES_WaveBuilder for an up to date list
Columns:
Segment/Epoch
Layers hold different stimulus wave form types:
Square pulse
Ramp
Noise
Sin
Saw tooth
Pulse train
PSC
Load custom wave
Combine
-
wave GetWaveBuilderWaveParamAsFree()¶
Return a free wave version of GetWaveBuilderWaveParam()
See also
-
static variable GetWPTVersion()¶
Automated testing helper.
-
variable UpgradeWaveTextParam(WaveText wv)¶
Upgrade the wave layout of
WPT
to the most recent one as defined inWPT_WAVE_LAYOUT_VERSION
-
static variable AddDimLabelsToWPT(wave wv)¶
Add dimension labels to the WaveBuilder
WPT
wave.
-
wave GetWaveBuilderWaveTextParam()¶
Return the parameter text wave for the wave builder panel.
Rows:
0: Name of the custom wave for EPOCH_TYPE_CUSTOM (legacy format: wave name only, current format: absolute path including the wave name)
1: Analysis function, pre daq (deprecated)
2: Analysis function, mid sweep (deprecated)
3: Analysis function, post sweep (deprecated)
4: Analysis function, post set (deprecated)
5: Analysis function, post daq (deprecated)
6: Formula
7: Formula version: “[[:digit:]]+”
8: Analysis function, pre sweep (deprecated)
9: Analysis function, generic
10: Unused
11-26: Explicit delta values.
;
separated list as long as the number of sweeps.27: Analysis function, pre set (deprecated)
28: Explicit delta value for “Inter trial interval”
29: Analysis function parameters. See below for a detailed explanation.
30-50: unused
Formula
andFormula Version
are in the EPOCH_TYPE_COMBINE layer, the custom wave name is in the EPOCH_TYPE_CUSTOM layer. 11 to 26 are for all epoch types. The rest is layer independent (aka a setting for the full set) in INDEP_EPOCH_TYPE.Columns:
Segment/Epoch, the very last index is reserved for textual settings for the complete set
Layers hold different stimulus wave form types:
Square pulse/Set specific settings
Ramp
Noise
Sin
Saw tooth
Pulse train
PSC
Load custom wave
Combine
Analysis function parameters
Format of a single parameter:
name:(variable|string|wave|textwave)=value
For these building blocks the following restrictions hold
name
: Must be a valid non-liberal igor object namevalue
: URL-encoded payload, see URL-encoding for background information. Decoding is done by AFH_GetAnalysisParamTextual() and AFH_GetAnalysisParamNumerical().
Multiple entries are separated by comma (
,
).
-
wave GetWaveBuilderWaveTextParamAsFree()¶
Return a free wave version of GetWaveBuilderWaveTextParam()
See also
-
static variable GetSegWvTypeVersion()¶
Automated testing helper.
-
variable UpgradeSegWvType(wave wv)¶
Upgrade the wave layout of
SegWvType
to the most recent one as defined inSEGWVTYPE_WAVE_LAYOUT_VERSION
-
static variable AddDimLabelsToSegWvType(wave wv)¶
Add dimension labels to the WaveBuilder
SegWvType
wave.
-
wave GetSegmentTypeWave()¶
Returns the segment type wave used by the wave builder panel Remember to change WB_TOTAL_NUMBER_OF_EPOCHS if changing the wave layout.
Rows:
0 - 93: epoch types using one of WaveBuilderEpochTypes
94: Inter trial interval delta operation, one of WaveBuilderDeltaOperationModes
95: Inter trial interval delta multiplier/exponent [a. u.]
96: Inter trial interval delta [s]
97: Stimset global RNG seed
98: Data flipping (1 or 0)
99: Inter trial interval [s]
100: total number of segments/epochs
101: total number of steps
-
wave GetSegmentTypeWaveAsFree()¶
Return a free wave version of GetSegmentTypeWave()
See also
-
wave GetEpochID()¶
Return the wave identifiying the begin and end times of the current epoch.
-
wave GetWaveBuilderDispWave()¶
Return the wave for visualization of the stim set in the wavebuilder panel.
-
wave GetWBEpochCombineList(variable channelType)¶
-
wave GetSegmentWave(variable duration = defaultValue)¶
Returns the segment wave which stores the stimulus set of one segment/epoch.
- Parameters:
duration – time of the stimulus in ms
-
wave GetEpochParameterNames()¶
SweepFormula PSX
-
static const double PSX_WAVE_VERSION = 2¶
-
static const double PSX_EVENT_WAVE_COLUMNS = 14¶
-
variable UpgradePSXEventWave(wave psxEvent)¶
-
wave GetPSXEventWaveAsFree()¶
Return a 2D events wave as free wave.
Rows:
count
Cols:
0/index: Event index
1/peak_t: Event time [ms]
2/peak: Event amplitude in deconvoluted data [y unit of data]
3/post_min: Minimum of filtered and offsetted data in the range [time, time + 2ms]
4/post_min_t: X location of [2]
5/pre_max: Maximum of filtered and offsetted data in the range [time - 2ms, time], averaged over +/- 0.1 ms
6/pre_max_t: X location of [5]
7/rel_peak: Relative amplitude: [2] - [4]
8/isi: Time difference to previous event [ms]
9/tau: Decay constant tau of exponential fit
10/Fit manual QC call: One of PSXStates
11/Fit result: 1 for success, everything smaller than 0 is failure:
]-10000, 0[
: CurveFit error codes]inf, -10000]
: Custom error codes, one of FitEventDecayCustomErrors
12/Event manual QC call: One of PSXStates
13/Rise Time: rise time as calculated by PSX_CalculateRiseTime()
-
variable SetPSXEventDimensionLabels(wave wv)¶
-
wave GetPSXSingleEventFitWaveFromDFR(dfref dfr)¶
-
wave GetPSXEventFitWaveAsFree()¶
-
wave GetPSXEventColorsWaveAsFree(variable numEvents)¶
-
wave GetPSXEventMarkerWaveAsFree(variable numEvents)¶
-
static wave GetWaveFromFolder(dfref dfr, string name)¶
-
wave GetPSXEventWaveFromDFR(dfref dfr)¶
-
wave GetPSXPeakXWaveFromDFR(dfref dfr)¶
-
wave GetPSXPeakYWaveFromDFR(dfref dfr)¶
-
wave GetPSXPeakYAtFiltWaveFromDFR(dfref dfr)¶
-
wave GetPSXEventColorsWaveFromDFR(dfref dfr)¶
-
wave GetPSXEventMarkerWaveFromDFR(dfref dfr)¶
-
wave GetPSXEventFitWaveFromDFR(dfref dfr)¶
-
wave GetPSXSweepDataWaveFromDFR(dfref dfr)¶
-
wave GetPSXSweepDataFiltOffWaveFromDFR(dfref dfr)¶
-
wave GetPSXSweepDataFiltOffDeconvWaveFromDFR(dfref dfr)¶
-
wave GetPSXEventLocationLabels(dfref dfr)¶
-
wave GetPSXEventLocationTicks(dfref dfr)¶
-
string GetPSXFolderForComboAsString(dfref dfr, variable index)¶
-
dfref GetPSXFolderForCombo(dfref dfr, variable index)¶
-
wave GetPSXComboListBox(dfref dfr)¶
-
string GetPSXSingleEventFolderAsString(dfref comboDFR)¶
-
dfref GetPSXSingleEventFolder(dfref comboDFR)¶
-
wave GetPSXAverageWave(dfref dfr, variable state)¶
Return the average wave of the given state for the PSX event plot.
dfr
can be eithersingleEventDFR
for the per-combo averages orworkDFR
for the average over all events disregarding the combo.
-
wave GetPSXAcceptedAverageFitWaveFromDFR(dfref dfr)¶
Test Pulse
-
wave GetTPStorage(string device)¶
Return a wave reference for TPStorage.
Stores properties of the testpulse during TP
ROWS:
One entry per step
COLS:
NUM_HEADSTAGES
LAYERS:
0: Amplifier holding command (Voltage Clamp)
1: Amplifier bias current (Current Clamp)
2: (Peak/Instantaneous) Resistance
3: (Steady State) Resistance
4: Time in s (arbitrary zero)
5: Delta time in s relative to the entry in the first row of layer 3
6: (Steady State) Resistance slope
7: Pressure in psi
8: Timestamp since igor epoch (with timezone offsets)
9: Timestamp in UTC since igor epoch
10: Pressure changed
11: Holding current (pA, Voltage Clamp)
12: Vrest (mV, Current Clamp)
13: AD channel
14: DA channel
15: Headstage
16: ClampMode
17: UserPressure
18: PressureMethod (see PressureModeConstants)
19: ValidState (true if the entry is considered valid, false otherwise)
20: UserPressureType (see PressureTypeConstants)
21: UserPressureTimeStampUTC timestamp since Igor Pro epoch in UTC where the user pressure was acquired
22: TPMarker unique number identifying this set of TPs
23: Cell state: Pressure control values defining the cell state, one of CellStateValues
24: Testpulse Cycle Id (changes whenever TP is started, allows to group TPs together)
25: Auto TP Amplitude: success/fail state
26: Auto TP Baseline: success/fail state
27: Auto TP Baseline Range Exceeded: True/False
28: Auto TP Cycle ID: Unique number which is constant until the “Auto TP” state is switched (aka on->off or off->on)
29: Auto TP Baseline Fit result: One of TPBaselineFitResults
30: Auto TP Delta V [mV]
-
wave GetAcqTPStorage()¶
Return a free wave reference for AcqTPStorage wave for passing to ACQ4.
The wave stores PeakResistance, SteadyStateResistance, and TimeStamp in rows and headstages in cols
-
dfref GetDeviceTestPulse(string device)¶
Return a datafolder reference to the test pulse folder.
UTF_NOINSTRUMENTATION
-
string GetDeviceTestPulseAsString(string device)¶
Return the path to the test pulse folder, e.g. root:mies:HardwareDevices:ITC1600:Device0:TestPulse.
UTF_NOINSTRUMENTATION
-
wave GetScaledDataWave(string device)¶
Return a wave which holds undecimated and scaled data.
ScaledDataWave is initialized in
For ITC on initialization the channels are filled with NaN and the headstages data unit is set. In
Unversioned Wave:See also
DC_InitScaledDataWave Each channel contains scaled data that takes the gain from the headstage into account. In the channel wave the voltage output to the DAC and read from the ADC is translated back to the headstages input/output signal (e.g. mV / pA). The x-time interval is milliseconds.
See also
SCOPE_ITC_UpdateOscilloscope all channels are copied from the DAQDataWave to the scaledDataWave and properly scaled. For NI on initialization the non-ADC channels are copied from the DAQDataWave to the scaledDataWave and properly scaled. The ADC channels are scaled by a gain factor that is applied in hardware (or the device XOP). Thus, in
See also
See also
SCOPE_SU_UpdateOscilloscope the ADC channel data is simply copied from the DAQDataWave to the scaledDataWave.
Rows:
StopCollectionPoint
Columns:
Number of active channels
Type:
FP32 or FP64, as returned by SWS_GetRawDataFPType()
Version 1: WAVEREF wave, initially with size 0 sized in
See also
DC_MakeHelperWaves to number of hardware channels as in config wave
-
wave GetOscilloscopeWave(string device)¶
Return a wave for displaying scaled data in the oscilloscope window.
Contents can be decimated for faster display.
-
wave GetScaledTPTempWave(string device)¶
Return a wave for temporary storing scaled data for PowerSpectrum input.
-
wave GetTPOscilloscopeWave(string device)¶
Return a wave for displaying scaled TP data in the oscilloscope window for the “TP during DAQ” channels or for TP power spectrum during Test Pulse.
Rows:
Holds exactly one TP
Columns:
DA/AD/TTLs data, same order as GetDAQDataWave()
-
wave GetStoredTestPulseWave(string device)¶
Return a wave reference wave for storing the full test pulses.
-
wave GetTPResults(string device)¶
Return the testpulse results wave.
Rows:
0: Resistance Instantaneous: [MΩ]
1: Baseline Steady State: [mV] for IC, [pA] for VC
2: Resistance Steady State: [MΩ]
3: Elevated Steady State: [mV] for IC, [pA] for VC
4: Elevated Instantaneous: [mV] for IC, [pA] for VC
5: Auto TP Amplitude: Pass/Fail
6: Auto TP Baseline: Pass/Fail
7: Auto TP Baseline range exceeded: True/False
8: Auto TP Baseline fit result: One of TPBaselineFitResults
9: Auto TP Delta V: [mV]
Columns:
NUM_HEADSTAGES
-
wave GetTPResultsBuffer(string device)¶
Return the testpulse results buffer wave.
Same layout as GetTPResults() but as many layers as the buffer size.
Amplifier
-
dfref GetAmplifierFolder()¶
Return the datafolder reference to the amplifier.
UTF_NOINSTRUMENTATION
-
string GetAmplifierFolderAsString()¶
Return the path to the amplifierm e.g. root:mies:Amplifiers”.
UTF_NOINSTRUMENTATION
-
wave GetAmplifierParamStorageWave(string device)¶
Return a wave reference to the amplifier parameter storage wave.
Rows:
0-31: Amplifier settings identified by dimension labels
Columns:
Only one
Layers:
0-7: Headstage identifier
Contents:
numerical amplifier settings
-
wave GetAmplifierSettingsWave()¶
Return a free wave reference for the amplifier settings, data wave.
Rows:
Only one
Columns:
Amplifier parameters as described in the amplifier settings key wave
Layers:
0-7: data for a particular headstage using the layer index
8: headstage independent data
-
wave GetAmplifierSettingsKeyWave()¶
Return a free wave reference for the amplifier settings, key wave.
Rows:
0: Parameter
1: Units
2: Tolerance factor
Columns:
Various settings
-
wave GetAmplifierSettingsTextWave()¶
Return a free wave for the amplifier text settings, data wave.
Rows:
Only one
Columns:
Amplifier parameters as described in the amplifier settings text key wave
Layers:
0-7: data for a particular headstage using the layer index
8: headstage independent data
-
wave GetAmplifierSettingsTextKeyWave()¶
Return a free wave for the amplifier text settings, key wave.
Rows:
0: Parameter
1: Units
2: Tolerance factor
Columns:
Various settings
-
wave GetAmplifierTelegraphServers()¶
Return wave reference to the
W_TelegraphServers
wave.Call AI_FindConnectedAmps() to create that wave, otherwise an empty wave is returned.
-
wave GetAmplifierMultiClamps()¶
Return wave reference to the
W_MultiClamps
wave.Call AI_FindConnectedAmps() to create that wave, if that was not done an empty wave is returned.
Asynchronous Measurements
-
wave GetAsyncSettingsWave()¶
Return a free wave for the asyncSettingsWave, data wave.
asyncSettingsWave is used to save async settings for each data sweep and create waveNotes for tagging data sweeps
Rows:
One row
Columns:
Same as GetAsyncSettingsKeyWave
Layers:
0 - LABNOTEBOOK_LAYER_COUNT: headstage dependent and independent entries
-
wave GetAsyncSettingsKeyWave(wave settingsWave, variable channel, string title, string unit)¶
Return a free wave for the asyncSettingsKeyWave.
asyncSettingsKeyWave is used to index async settings for each data sweep and create waveNotes for tagging data sweeps
Rows:
0: Parameter
1: Units
2: Tolerance Factor
Columns:
0: Async AD $Channel OnOff
1: Async AD $Channel Gain
2: Async Alarm $Channel OnOff
3: Async Alarm $Channel Min
4: Async Alarm $Channel Max
5: Async AD $Channel [$Title]
-
wave GetAsyncSettingsTextWave()¶
Return a free wave for the AsyncSettingsTxtWave.
AsyncSettingsTxtData is used to store the async text settings used on a particular headstage and then create waveNotes for the sweep data
Rows:
Only one
Columns:
Same as GetAsyncSettingsTextKeyWave
Layers:
0 - LABNOTEBOOK_LAYER_COUNT: headstage dependent and independent entries
Pressure Control
-
string P_GetDevicePressureFolderAS(string device)¶
Returns device specific pressure folder as string.
-
dfref P_DeviceSpecificPressureDFRef(string device)¶
Creates device specific pressure folder - used to store data for pressure regulators.
UTF_NOINSTRUMENTATION
-
string P_GetPressureFolderAS(string device)¶
Returns pressure folder as string.
UTF_NOINSTRUMENTATION
-
dfref P_PressureFolderReference(string device)¶
Returns the data folder reference for the main pressure folder “root:MIES:Pressure”.
UTF_NOINSTRUMENTATION
-
wave P_GetITCData(string device)¶
Returns a wave reference to the DAQ data wave used for pressure pulses.
Rows:
data points, see P_GetITCChanConfig() for the sampling interval
Columns:
0: DA data
1: AD data
2: TTL data rack 0
3: TTL data rack 1 (available if supported by the device)
-
wave P_GetITCChanConfig(string device)¶
Returns a wave reference to the DAQ config wave used for pressure pulses.
Rows:
0: DA channel specifications
1: AD channel specifications
2: TTL rack 0 specifications
3: TTL rack 1 specifications (available if supported by the device)
Columns:
0: Channel Type
1: Channel number
2: Sampling interval
3: Decimation
-
static variable SetPressureWaveDimLabels(wave wv)¶
Set the dimension labels for the numeric pressure wave.
-
wave P_GetPressureDataWaveRef(string device)¶
Returns wave reference of wave used to store data used in functions that run pressure regulators creates the wave if it does not exist.
Rows:
0 - 7: Headstage 0 through 7
Columns:
0: Pressure method. -1 = none, 0 = Approach, 1 = Seal, 2 = Break In, 3 = Clear
1: List position of DAC (used for presssure control) selected for headstage
2: Type of DAC, index into HARDWARE_DAC_TYPES
3: Device ID used by Instrutech DACs or index into HW_NI_ListDevices depending on column 2
4: DA channel used for pressure regulation.
5: Gain of DA channel used for presssure regulation.
6: AD channel used for pressure regulation.
7: Gain of AD channel used for pressure regulation.
8: TTL channel A used for pressure regulation.
9: Pipette pressure setting while pipette is positioned in air/outside of bath.
10: Pipette pressure setting for pipette positioned in the bath.
11: Pipette pressure setting for pipette positioned in the slice.
12: Pipette pressure setting for pipette positioned near the target cell.
13: Pipette pressure setting for pipette at the initialization of seal formation.
14: Maximum Pipette pressure setting for seal formation.
15: Distance between the bottom of the recording chamber to the surface of the bath solution.
16: Distance between the bottom of the recording chamber and the top of the tissue slice.
17: Distance between the bottom of the recording chamber and the soma of the target cell.
18: X position (in the stage frame) of the soma of the target cell.
19: Y position (in the stage frame) of the soma of the target cell.
20: Place holder for future data.
21: Realtime pressure
22: Last steady state resistance value.
23: Slope of the peak TP resistance over the last 5 seconds.
24: State of the TP (0 = OFF, 1 = ON).
25: Slope threshold. Used to determine if pressure should be incremented during sealing.
26: Time of last slope check
27: Last pressure command.
28: State of pressure pulse (0 = OFF, 1 = ON).
29: Last amplifier voltage command.
30: Manual pressure command amplitude in psi.
31: Manual pressure pulse command amplitude in psi.
32: Manual pressure pulse duation in ms.
33: Peak resistance on previous method cycle.
34: Peak resistance on active method cycle.
35: Time of last peak resistance check.
36: Calibration constant for positive pulse.
37: Calibration constant for negative pulse.
38: Checkbox state of “Approach Near”.
39: Checkbox state of “Seal Atmosphere”.
40: Selected headstage by the slider.
41: User pressure offset in psi.
42: Total sum of user pressure offsets in psi.
43: Total sum of user pressure offsets since last pulse in psi.
44: TTL channel B used for pressure regulation.
45: User pressure deviceID
46: User pressure device hardware type
47: User pressure ADC
-
wave P_PressureDataTxtWaveRef(string device)¶
Returns wave reference for wave used to store text used in pressure control.
Rows:
0 - 7: Headstage 0 through 7
Columns:
0: Digitial to analog converter device type string.
1: DA unit.
2: AD unit.
Analysis Browser
-
dfref GetAnalysisFolder()¶
Return the datafolder reference to the root folder for the analysis browser.
UTF_NOINSTRUMENTATION
-
string GetAnalysisFolderAS()¶
Return the full path to the root analysis folder, e.g. root:MIES:analysis.
UTF_NOINSTRUMENTATION
-
dfref GetAnalysisExpFolder(string expFolder)¶
Return the datafolder reference to the per experiment folder.
UTF_NOINSTRUMENTATION
-
string GetAnalysisExpFolderAS(string expFolder)¶
Return the full path to the per experiment folder, e.g. root:MIES:Analysis:my_experiment.
UTF_NOINSTRUMENTATION
-
dfref GetAnalysisDeviceFolder(string expFolder, string device)¶
Return the datafolder reference to the per device folder of an experiment.
UTF_NOINSTRUMENTATION
-
string GetAnalysisDeviceFolderAS(string expFolder, string device)¶
Return the full path to the per device folder of an experiment, e.g. root:MIES:Analysis:my_experiment:ITC18USB_Dev_0.
UTF_NOINSTRUMENTATION
-
dfref GetAnalysisDevChannelFolder(string expFolder, string device)¶
Return the datafolder reference to the sweep to channel relation of a device and experiment pair.
UTF_NOINSTRUMENTATION
-
string GetAnalysisDevChannelFolderAS(string expFolder, string device)¶
Return the full path to the sweep to channel relation folder of a device and experiment pair, e.g. root:MIES:Analysis:my_experiment:ITC18USB_Dev_0:channel.
UTF_NOINSTRUMENTATION
-
dfref GetAnalysisDeviceConfigFolder(string expFolder, string device)¶
Return the datafolder reference to the sweep config folder of a device and experiment pair.
UTF_NOINSTRUMENTATION
-
string GetAnalysisDeviceConfigFolderAS(string expFolder, string device)¶
Return the full path to the sweep config folder of a device and experiment pair, e.g. root:MIES:Analysis:my_experiment:ITC18USB_Dev_0:config.
UTF_NOINSTRUMENTATION
-
dfref GetAnalysisDeviceTestpulse(string expFolder, string device)¶
Return the datafolder reference to the testpulse folder of a device and experiment pair.
UTF_NOINSTRUMENTATION
-
string GetAnalysisDeviceTestpulseAS(string expFolder, string device)¶
Return the full path to the testpulse folder of a device and experiment pair, e.g. root:MIES:Analysis:my_experiment:ITC18USB_Dev_0:testpulse.
UTF_NOINSTRUMENTATION
-
dfref GetAnalysisLabNBFolder(string expFolder, string device)¶
Return the datafolder reference to the labnotebook folder of a device and experiment pair.
UTF_NOINSTRUMENTATION
-
string GetAnalysisLabNBFolderAS(string expFolder, string device)¶
Return the full path to the labnotebook folder of a device and experiment pair, e.g. root:MIES:Analysis:my_experiment:ITC18USB_Dev_0:labnotebook.
UTF_NOINSTRUMENTATION
-
dfref GetAnalysisSweepPath(string expFolder, string device)¶
Return the datafolder reference to the sweep folder of a device and experiment pair.
UTF_NOINSTRUMENTATION
-
string GetAnalysisSweepPathAsString(string expFolder, string device)¶
Return the full path to the sweep folder of a device and experiment pair, e.g. root:MIES:Analysis:my_experiment:ITC18USB_Dev_0:sweep.
UTF_NOINSTRUMENTATION
-
dfref GetAnalysisSweepDataPath(string expFolder, string device, variable sweep)¶
Return the datafolder reference to the per sweep folder.
UTF_NOINSTRUMENTATION
-
string GetAnalysisSweepDataPathAS(string expFolder, string device, variable sweep)¶
Return the full path to the the per sweep folder, e.g. root:MIES:Analysis:my_experiment:ITC18USB_Dev_0:sweep:X_$sweep.
UTF_NOINSTRUMENTATION
-
dfref GetAnalysisStimSetPath(string expFolder, string device)¶
Return the datafolder reference to the stim set folder.
UTF_NOINSTRUMENTATION
-
string GetAnalysisStimSetPathAS(string expFolder, string device)¶
Return the full path to the stim set folder, e.g. root:MIES:Analysis:my_experiment::stimset.
UTF_NOINSTRUMENTATION
-
dfref GetAnalysisResultsFolder(string expFolder)¶
Return the datafolder reference to results folder of an experiment.
UTF_NOINSTRUMENTATION
-
string GetAnalysisResultsFolderAsString(string expFolder)¶
Return the datafolder reference to results folder of an experiment, e.g. root:MIES:Analysis:my_experiment:results.
UTF_NOINSTRUMENTATION
-
wave GetAnalysisResultsWave(string expFolder, variable type)¶
Return one of the four results waves.
- Parameters:
expFolder – experiment datafolder name
type – One of LabnotebookWaveTypes
-
wave GetAnalysisChannelStorage(string dataFolder, string device)¶
wave is used to relate it’s index to sweepWave and deviceWave.
-
wave GetAnalysisChannelStimWave(string dataFolder, string device)¶
Return a wave containing all stimulus channels in the NWB file as a “;”-separated List wave is used to relate it’s index to sweepWave and deviceWave.
-
wave GetAnalysisChannelAcqWave(string dataFolder, string device)¶
Return a wave containing all acquisition channels in the NWB file as a “;”-separated List wave is used to relate it’s index to sweepWave and deviceWave.
-
wave GetAnalysisChannelSweepWave(string dataFolder, string device)¶
Return a wave containing all sweeps in a unique fashion. wave is used to relate it’s index to channelWave and deviceWave.
-
wave GetAnalysisDeviceWave(string dataFolder)¶
Return a wave containing all devices wave is used to relate it’s index to sweepWave and channelWave.
-
wave GetAnalysisStoredTestPulses(string dataFolder, string device)¶
Return wave with all stored test pulses.
-
wave GetAnalysisBrowserMap()¶
Return AnalysisBrowser indexing storage wave.
Rows:
Experiments found in current Directory
Columns:
0: DiscLocation: Path to Experiment on Disc
1: FileName: Name of File in experiment column in ExperimentBrowser
2: DataFolder Data folder inside current Igor experiment
3: FileType File Type identifier for routing to loader functions, one of AnalysisBrowserFileTypes
-
wave GetAnalysisBrowserGUIFolderList()¶
Return the text wave used in the folder listbox of the analysis browser.
-
wave GetAnalysisBrowserGUIFolderSelection()¶
Return the selection wave used in the folder listbox of the analysis browser.
-
wave GetAnalysisBrowserGUIFolderColors()¶
Return the color wave used in the folder listbox of the analysis browser.
-
wave GetExperimentBrowserGUIList()¶
Return the text wave used in the listbox of the experiment browser.
The “experiment” column in the second layer maps to the corresponding row in the experimentMap.
-
wave GetExperimentBrowserGUISel()¶
Return the selection wave used in the listbox of the experiment browser.
-
wave GetAnalysisConfigWave(string dataFolder, string device, variable sweep)¶
Return the configSweep wave of a given sweep from the analysis subfolder.
-
wave ANALYSIS_LBN_GETTER_PROTO(string expFolder, string device)¶
UTF_NOINSTRUMENTATION.
-
wave GetAnalysLBNumericalValues(string expFolder, string device)¶
Return the numerical labnotebook values in the analysis browser of a device and experiment pair.
-
wave GetAnalysLBTextualValues(string expFolder, string device)¶
Return the textual labnotebook keys in the analysis browser of a device and experiment pair.
-
wave GetAnalysLBNumericalKeys(string expFolder, string device)¶
Return the numerical labnotebook keys in the analysis browser of a device and experiment pair.
-
wave GetAnalysLBTextualKeys(string expFolder, string device)¶
Return the textual labnotebook keys in the analysis browser of a device and experiment pair.
Getters relating to caching
Return the datafolder reference to the wave cache UTF_NOINSTRUMENTATION
-
dfref GetCacheFolder()¶
-
string GetCacheFolderAS()¶
Return the full path to the wave cache datafolder, e.g. root:MIES:Cache UTF_NOINSTRUMENTATION.
-
wave GetCacheValueWave()¶
Return the wave reference wave holding the cached data.
Dimension sizes and
NOTE_INDEX
value must coincide with other two cache waves. UTF_NOINSTRUMENTATION
-
wave GetCacheKeyWave()¶
Return the wave reference wave holding the cache keys.
Dimension sizes and
NOTE_INDEX
value must coincide with other two cache waves. UTF_NOINSTRUMENTATION
-
wave GetCacheStatsWave()¶
Return the wave reference wave holding the cache stats.
Rows:
One for each cache entry
Columns:
0: Number of cache hits (Incremented for every read)
1: Number of cache misses (Increment for every failed lookup)
2: Modification timestamp (Updated on write)
3: Size in bytes (Updated on write)
Dimension sizes and
NOTE_INDEX
value must coincide with other two cache waves. UTF_NOINSTRUMENTATION
Return the datafolder reference to the debug folder
UTF_NOINSTRUMENTATION
-
dfref GetDebugPanelFolder()¶
-
string GetDebugPanelFolderAS()¶
Return the full path to the debug datafolder, e.g. root:MIES:Debug.
UTF_NOINSTRUMENTATION
-
wave GetDebugPanelListWave()¶
Return the list wave for the debug panel.
-
wave GetDebugPanelListSelWave()¶
Return the list selection wave for the debugging panel.
AnalysisFunctionGetters Getters used by analysis functions
-
wave GetAnalysisFuncIndexingHelper(string device)¶
Return a wave reference which holds an headstage-dependent index.
Can be used by analysis function to count the number of invocations.
-
wave GetAnalysisFuncDAScaleDeltaV(string device)¶
Return a wave reference which holds the “Delta V” values of all sweeps from one repeated acquisition cycle.
Used by PSQ_AdjustDAScale().
Rows:
Sweeps
Columns:
Headstages
-
wave GetAnalysisFuncDAScaleDeltaI(string device)¶
Return a wave reference which holds the “Delta I” values of all sweeps from one repeated acquisition cycle.
Used by PSQ_AdjustDAScale().
Rows:
Sweeps
Columns:
Headstages
-
wave GetAnalysisFuncDAScaleRes(string device)¶
Return a wave reference to the fitted resistance values and its error.
Used by PSQ_AdjustDAScale().
Rows:
Headstages
Columns:
Value
Error (standard deviation)
-
wave GetAnalysisFuncDAScaleResFit(string device, variable headstage)¶
Return a wave reference to the fitted resistance wave created by
CurveFit
Used by PSQ_AdjustDAScale().
-
wave GetAnalysisFuncDAScaleSpikeFreq(string device, variable headstage)¶
Return a wave reference to the spikes frequency wave.
Used by PSQ_AdjustDAScale().
-
wave GetAnalysisFuncDAScaleFreqFit(string device, variable headstage)¶
Return a wave reference to the spikes frequency wave.
Used by PSQ_AdjustDAScale().
-
wave GetAnalysisFuncDAScales(string device, variable headstage)¶
Return a wave reference to the DAScale wave.
Used by PSQ_AdjustDAScale().
Async Framework
-
wave GetDFREFbuffer(dfref dfr)¶
Return wave reference to wave with data folder reference buffer for delayed readouts 1d wave for data folder references, starts with size 0 when jobs should be read out in order, the waiting data folders are buffered in this wave e.g. if the next read out would be job 2, but a data folder from job 3 is returned the data folder is buffered until the one from job 2 appears from the output queue.
-
wave GetWorkloadTracking(dfref dfr)¶
Returns wave ref for workload tracking 2d wave row stores work load classes named through dimension label column 0 stores how many work loads were pushed to Async column 1 stores how many work loads were read out from Async.
-
wave GetSerialExecutionBuffer(dfref dfr)¶
Returns wave ref for buffering results when THREADING_DISABLED is defined 1D wave using NOTE_INDEX logic.
-
string GetAsyncHomeStr()¶
Returns string path to async framework home data folder.
UTF_NOINSTRUMENTATION
-
dfref GetAsyncHomeDF()¶
Returns reference to async framework home data folder.
UTF_NOINSTRUMENTATION
Functions
-
wave GetLogbookValuesFromKeys(wave keyWave)¶
Return a wave reference to the corresponding Logbook keys wave from an values wave input.
-
wave GetLogbookKeysFromValues(wave valuesWave)¶
Return a wave reference to the corresponding Logbook values wave from an keys wave input.
-
wave GetChanAmpAssign(string device)¶
Return a wave reference to the channel <-> amplifier relation wave (numeric part)
Rows:
0-3: V-Clamp: DA channel, DA gain, AD channel, AD gain
4-7: I-Clamp: DA channel, DA gain, AD channel, AD gain
8: Amplifier Serial number as returned by
AxonTelegraphFindServers
. This differs compared to the ones returned byMCC_FindServers
, as the latter are strings with leading zeros. E.g.: “00000123” vs 123 E.g.: “Demo” vs 09: Amplifier Channel ID
Columns:
Head stage number
-
wave GetChanAmpAssignUnit(string device)¶
Return a wave reference to the channel <-> amplifier relation wave (textual part)
Rows:
0: DA unit (V-Clamp mode)
1: AD unit (V-Clamp mode)
2: DA unit (I-Clamp mode)
3: AD unit (I-Clamp mode)
Columns:
Head stage number
-
static variable ExistsWithCorrectLayoutVersion(WaveOrNull wv, variable versionOfNewWave)¶
Check if wv exists and has the correct version UTF_NOINSTRUMENTATION.
-
static variable WaveVersionIsAtLeast(WaveOrNull wv, variable existingVersion)¶
Check if the given wave’s version is equal or larger than the given version, if version is not set false is returned.
-
static variable IsWaveVersioned(wave wv)¶
Returns 1 if the wave has a valid version information attached, 0 otherwise.
-
static variable WaveVersionIsSmaller(WaveOrNull wv, variable existingVersion)¶
Check if the given wave’s version is smaller than the given version, if version is not set true is returned.
-
variable GetWaveVersion(WaveOrNull wv)¶
return the Version of the Wave, returns NaN if no version was set UTF_NOINSTRUMENTATION
-
static variable SetWaveVersion(wave wv, variable val)¶
Set the wave layout version of wave.
-
static variable IsValidWaveVersion(variable value)¶
A valid wave version is a positive non-zero integer.
-
variable ClearWaveNoteExceptWaveVersion(wave wv)¶
Clear the wave note but keep any valid wave version.
-
dfref UpgradeDataFolderLocation(string oldFolder, string newFolder)¶
Move/Rename a datafolder across different locations.
Both parameters must be absolute datafolder locations. Cases where both exist are also handled gracefully.
Function/DF GetMyFolder() return UpgradeDataFolderLocation("root:old", "root:new") End
- Returns:
DFREF to the
newFolder
with the contents ofoldFolder
-
wave UpgradeWaveLocationAndGetIt(WaveLocationMod *p)¶
Rename/Move a wave to a new location.
Valid transformations (and all combinations of them):
Moving into a new datafolder
Renaming to a new name
Nothing
The function is idempotent (i.e. it can be called also on already relocated waves). Cases where new == old are also handled gracefully.
Function/WAVE GetMyWave(device) string device variable versionOfNewWave = 1 string newName = "newAndNiceName" DFREF newDFR = GetNewAndFancyFolder(device) STRUCT WaveLocationMod p p.dfr = $(GetSomeFolder(device) + ":oldSubFolder") p.newDFR = newDFR p.name = "oldAndUglyName" p.newName = newName WAVE/Z wv = UpgradeWaveLocationAndGetIt(p) if(ExistsWithCorrectLayoutVersion(wv, versionOfNewWave)) return wv elseif(WaveExists(wv)) // handle upgrade else Make/R/N=(10, 2) newDFR:newName/Wave=wv end SetWaveVersion(wv, versionOfNewWave) return wv End
- Returns:
wave reference to the wave in the new location, an invalid one if the wave does not exist at the specified former location
-
wave GetTPResultAsyncBuffer(string device)¶
Return a wave reference to the tp result async buffer wave.
Rows:
buffered partial result entries
Column 0 (ASYNCDATA):
Layers:
0: marker
1: received channels
2: now Column 1: baseline level Column 2: steady state res Column 3: instantaneous res Column 4: baseline position Column 5: steady state res position Column 6: instantaneous res position Column 7: average elevated level (steady state) Column 8: average elevated level (instantaneous)
Layers:
NUM_HEADSTAGES positions with value entries at hsIndex
-
wave GetChannelClampMode(string device)¶
Return a wave reference to the channel clamp mode wave.
Only specialized code which does not have a headstage, or needs to know the clamp mode for unassociated channels, should use this function.
Rows:
Channel numbers
Columns:
0: DAC
1: ADC
Layers:
0: Clamp Mode
1: Headstage
-
wave GetHSProperties(string device)¶
Return properties for the headstages during TP/DAQ.
See also
-
dfref GetDAQDevicesFolder()¶
Return the DAQ devices folder “root:mies:HardwareDevices”.
-
string GetDAQDevicesFolderAsString()¶
Return a data folder reference to the DAQ devices folder.
UTF_NOINSTRUMENTATION
-
dfref GetActiveDAQDevicesTimerFolder()¶
Return the active DAQ devices timer folder “root:mies:HardwareDevices:ActiveDAQDevices:Timer”.
-
string GetActiveDAQDevicesTimerAS()¶
Return a data folder reference to the active DAQ devices timer folder.
-
dfref GetActiveDAQDevicesFolder()¶
Return the active DAQ devices folder “root:mies:HardwareDevices:ActiveDAQDevices”.
-
string GetActiveDAQDevicesFolderAS()¶
Return a data folder reference to the active DAQ devices folder.
-
dfref GetDeviceTypePath(string deviceType)¶
Return a datafolder reference to the device type folder.
-
string GetDeviceTypePathAsString(string deviceType)¶
Return the path to the device type folder, e.g. root:mies:HardwareDevices:ITC1600.
UTF_NOINSTRUMENTATION
-
dfref GetDevicePath(string device)¶
Return a datafolder reference to the device folder.
UTF_NOINSTRUMENTATION
-
string GetDeviceInfoPathAsString()¶
Return the path to the device info folder, e.g. root:mies:HardwareDevices:DeviceInfo.
UTF_NOINSTRUMENTATION
-
dfref GetDeviceInfoPath()¶
Return a datafolder reference to the device info folder.
-
string GetDevicePathAsString(string device)¶
Return the path to the device folder, e.g. root:mies:HardwareDevices:ITC1600:Device0.
UTF_NOINSTRUMENTATION
-
dfref GetDeviceDataPath(string device)¶
Return a datafolder reference to the device data folder.
-
string GetDeviceDataPathAsString(string device)¶
Return the path to the device folder, e.g. root:mies:HardwareDevices:ITC1600:Device0:Data.
UTF_NOINSTRUMENTATION
-
dfref GetMiesPath()¶
Returns a data folder reference to the mies base folder.
UTF_NOINSTRUMENTATION
-
string GetMiesPathAsString()¶
Returns the base folder for all MIES functionality, e.g. root:MIES UTF_NOINSTRUMENTATION.
-
dfref GetSweepFormulaPath()¶
Returns a data folder reference to the sweep formula folder.
-
string GetSweepFormulaPathAsString()¶
Returns the temporary folder for Sweep formula, e.g. root:MIES:SweepFormula.
UTF_NOINSTRUMENTATION
-
wave GetColorWave(variable numEntries)¶
Return a Nx3 wave usable for setting trace colors.
-
dfref GetCalledOncePath()¶
Returns a data folder reference to the call once folder.
-
string GetCalledOncePathAsString()¶
Returns a name of the data folder for the call once folder, e.g. root:MIES:CalledOnce.
UTF_NOINSTRUMENTATION
-
dfref GetSingleSweepFolder(dfref dfr, variable sweepNo)¶
Return a datafolder reference to a subfolder below
dfr
for splitted sweep specific data, e.g. dfr:X_5.UTF_NOINSTRUMENTATION
-
string GetSingleSweepFolderAsString(dfref dfr, variable sweepNo)¶
Return the path to a subfolder below
dfr
for splitted sweep specific data.
-
wave GetDAQDataWave(string device, variable mode)¶
Return the DAQ data wave.
ITC hardware:
2D signed 16bit integer wave, the colums are for the channel
NI/SU hardware:
Wave reference wave, one referencing each channel
Rows:
data
Columns:
one for each active DA, AD, TTL channel (in that order)
For scaling and gain information see SWS_GetChannelGains().
Note: TP_PROPERTIES_HASH: Unique hash for a combination of all properties which influence the test pulse.
- Parameters:
device – device
mode – One of DATA_ACQUISITION_MODE or TEST_PULSE_MODE
-
wave GetSUCompositeTTLWave(string device)¶
-
wave GetNIDAQChannelWave(string device, variable channel, variable mode)¶
Get the single NI/Sutter channel waves.
Special use function, normal callers should use GetDAQDataWave() instead.
-
wave GetSutterSingleSampleDACOutputWave(string device)¶
Get a single point output wave for Sutter device.
-
wave GetSutterSingleSampleADCInputWave(string device)¶
Get a single point input wave for Sutter device.
-
wave GetEpochsWave(string device)¶
Return the epochs text wave.
Rows:
epochs
Column numbers must use global column number constants
Columns:
0: Start time in sec
1: End time in sec
2: Tags
3: Tree Level
See also
epochColumnNumber.
Layers: index the GUI channel numbers
NUM_DA_TTL_CHANNELS
Chunks: index the XOP channel types
XOP_CHANNEL_TYPE_COUNT
Version History
Wave
1: Initial version
2: Renamed column
Name
toTags
3: Added chunks dimension indexing over channel types
Tags format
Initial version in a2172f03 (Added generations of epoch information wave, 2019-05-22), parsed in PA plot since 4e534e29 (Pulse Averaging: Pulse starting times are now read from the lab notebook, 2020-10-07).
In d150d896 (DC_AddEpochsFromStimSetNote: Add sub sub epoch information, 2021-02-02) tree level 3 info for pulse train pulses was added, which is read out since ba209bbd (PA plot: Gather more pulse infos, 2021-02-02).
And in 2371cfb0 (Epochs: Revise naming, 2021-09-22) we changed the naming of the tags and also adapted PA_RetrievePulseStartTimesFromEpochs.
For these three formats we have tests in RPI_WorksWithOldData(). When changing the tags format this test needs to be updated.
-
wave GetEpochsWaveAsFree()¶
-
static variable SetEpochsDimensionLabelAndVersion(wave wv)¶
-
variable SetEpochsDimensionLabelsSingleChannel(wave wv)¶
-
dfref GetEpochsVisualizationFolder(dfref dfr)¶
Return the folder for the epoch visualization waves below the sweepfolder/databrowser specific folder.
-
wave GetDAQConfigWave(string device)¶
Return the DAQ config wave.
Rows:
One for each channel, the order is DA, AD, TTL (same as in the DAQDataWave)
Columns:
channel type, one of XopChannelConstants
channel number (0-based)
sampling interval in microseconds (1e-6)
decimation mode (always zero)
data offset
headstage number
clamp mode
The wave note holds a list of channel units. The order is the same as the rows. TTL channels don’t have units. Querying the channel unit should always be done via AFH_GetChannelUnit() or AFH_GetChannelUnits().
This wave is also used for NI devices as configuration template. There is one difference though: While for ITC devices there is one TTL row for each rack, for NI devices there is one TTL row for each channel (up to 8 currently) The channel number column holds the hardware channel number for the NI device
ITC hardware: The number of TTL bits which are stored in each TTL channel is hardware dependent and can be queried with HW_ITC_GetRackRange().
Version 1 changes:
Columns now have dimension labels
One more column with the channel data offset
Due to the wave versioning the channel unit is now stored with the CHANNEL_UNIT_KEY as key and it is now separated not with semicolon anymore but a comma.
Version 2 changes:
DAQChannelType column added
Version 3 changes:
Change wave to double precision
Headstage column added
ClampMode column added
-
wave GetDQMActiveDeviceList()¶
Returns a reference to the wave of active devices for data acquisition in multi device mode.
The wave is used in data acquisition in multiple device mode to keep track of active devices.
Columns:
DeviceID id of an active device
ADChannelToMonitor index of first active AD channel in DAQDataWave
HardwareType type of hardware of the device
ActiveChunk if a channel of the device is used for TP while DAQ this column saves the number of the last evaluated test pulse
Version changes:
1: Added column activeChunk
2: Changed precision to double
3: Removed column 2 with StopCollectionPoint as it is no longer used
-
wave GetTTLWave(string device)¶
Return the intermediate storage wave for the TTL data.
-
wave GetStimsetAcqIDHelperWave(string device)¶
Return the stimset acquistion cycle ID helper wave.
Only valid during DAQ.
Rows:
NUM_DA_TTL_CHANNELS
Columns:
0: Stimset fingerprint of the previous sweep
1: Current stimset acquisition cycle ID
-
dfref GetDevSpecLabNBTempFolder(string device)¶
Return the data folder reference to the device specific lab notebook folder for temporary waves.
UTF_NOINSTRUMENTATION
-
string GetDevSpecLabNBTempFolderAS(string device)¶
Return the full path to the device specific lab notebook temp folder, e.g. root:MIES:LabNoteBook:ITC18USB:Device0:Temp.
UTF_NOINSTRUMENTATION
-
string GetResultsFolderAsString()¶
Return the full path to the results folder, e.g. root:MIES:Results.
UTF_NOINSTRUMENTATION
-
dfref GetResultsFolder()¶
Return the data folder reference to the results folder.
UTF_NOINSTRUMENTATION
-
wave GetIndexingStorageWave(string device)¶
Return the indexing storage wave.
Rows:
0: DA (CHANNEL_TYPE_DAC)
1: TTL (CHANNEL_TYPE_TTL)
Columns:
0: Popup menu index of Wave (stimset)
1: Popup menu index of Indexing end wave (stimset)
All zero-based as returned by GetPopupMenuIndex().
Layers:
Channels
-
dfref GetTempPath()¶
Return the temporary folder below the MIES hierarchy, e.g. root:mies:trash.
UTF_NOINSTRUMENTATION
-
dfref GetUniqueTempPath()¶
Return a unique temporary folder below the MIES hierarchy, e.g. root:mies:trash$digit.
As soon as you discard the latest reference to the folder it will be slated for removal at some point in the future.
UTF_NOINSTRUMENTATION
-
dfref GetStaticDataFolder()¶
Return the datafolder reference to the static data location, e.g. root:mies:StaticData:
UTF_NOINSTRUMENTATION
-
string GetStaticDataFolderAS()¶
Return the full path to the static data location.
UTF_NOINSTRUMENTATION
-
dfref GetActDAQDevicesTestPulseFolder()¶
Return the datafolder reference to the active DAQ devices folder, e.g. root:MIES:HardwareDevices:ActiveDAQDevices:TestPulse.
UTF_NOINSTRUMENTATION
-
string GetActiveDAQDevicesTestPulseFolderAsString()¶
Return the full path to the active DAQ devices location for the test pulse.
UTF_NOINSTRUMENTATION
-
wave GetActiveDevicesTPMD()¶
Return the active devices wave for TP MD.
Rows:
Devices taking part in TP MD Columns:
0: DeviceID
1: ActiveChunk
The
$NOTE_INDEX
wave note entry holds the number of active devices. In addition it is also the next free row index.
-
wave GetDA_EphysGuiStateNum(string device)¶
Returns wave (DA_EphysGuiState) that stores the DA_Ephys GUI state DA_EphysGuiState is stored in the device specific folder e.g. root:MIES:HardwareDevices:ITC18USB:Device0.
Rows:
Column specific GUI control settings usually associated with control name number
Columns:
0: State of control Check_DataAcqHS_RowNum. 0 = UnChecked, 1 = Checked
1: Clamp mode of HS number that matches Row number. 0 = VC, 1 = IC, 2 = NC.
2: State of control Check_DA_RowNum. 0 = UnChecked, 1 = Checked
3: Internal number stored in control Gain_DA_RowNum. Gain is user/hardware defined.
4: Internal number stored in setvar:Scale_DA_RowNum. Scalar is user defined.
5: PopupMenu Index of popupMenu:Wave_DA_RowNum. Stores index of active DA stimulus set during data acquisition. Stores index of next DA stimulus set when data acquistion is not active.
6: PopupMenu Index of popupMenu:IndexEnd_DA_RowNum. Stores the index of the last DA stimulus set used in indexed aquisition mode.
7: State of checkbox control Check_AD_RowNum. 0 = UnChecked, 1 = Checked
8: Internal number stored in Gain_AD_RowNum. Gain is user/hardware defined.
9: State of checkbox control Check_TTL_RowNum. 0 = UnChecked, 1 = Checked
10: PopupMenu Index of popupMenu:Wave_TTL_RowNum. Stores index of active TTL stimulus set during data acquisition. Stores index of next TTL stimulus set when data acquistion is not active.
11: PopupMenu Index of popupMenu:IndexEnd_TTL_RowNum. Stores the index of the last TTL stimulus set used in indexed aquisition mode.
12: State of control Check_AsyncAD_RowNum. 0 = UnChecked, 1 = Checked
13: Internal number stored in control SetVar_AsyncAD_Gain_RowNum. Gain is user/hardware defined.
14: State of control check_AsyncAlarm_RowNum. 0 = UnChecked, 1 = Checked
15: Internal number stored in control min_AsyncAD__RowNum. The minium value alarm trigger.
16: Internal number stored in control max_AsyncAD_RowNum. The max value alarm trigger.
17+: Unique controls
UTF_NOINSTRUMENTATION
-
wave GetDA_EphysGuiStateTxT(string device)¶
Return a wave reference to the textual GUI state wave.
Rows:
Column specific GUI control settings usually associated with control name number
Columns:
0: (DA) First stimset name
1: (DA) Last stimset name
2: (DA) Unit
3: (DA) Search string
4: (AD) Unit
5: (TTL) First stimset name
6: (TTL) Last stimset name
7: (TTL) Search string
8: (Async) Title
9: (Async) Unit
10+: Unique controls (SetVariable and PopupMenu only)
UTF_NOINSTRUMENTATION
-
dfref GetNWBFolder()¶
Return the datafolder reference to the NeuroDataWithoutBorders folder, e.g. root:MIES:NWB.
UTF_NOINSTRUMENTATION
-
string GetNWBFolderAS()¶
Return the full path to the NeuroDataWithoutBorders folder.
UTF_NOINSTRUMENTATION
-
wave GetDeviceMapping()¶
Return a wave mapping the deviceIDs (numeric) to the device name(NI HW only) and user visible device name.
Rows:
DeviceIDs, supports 32 as the ITC XOP does
COLS:
One column for each supported HW type
LAYERS:
0: Main device (aka device of a DA_Ephys panel), used for deriving datafolders for storage
1: Name of the device used for pressure control (maybe empty)
-
wave GetCellElectrodeNames(string device)¶
Returns the names of the electrodes.
The electrodes represents the physically connected part to the cell whereas the headstage refers to the logical entity inside MIES.
Will be written into the labnotebook and used for the NWB export.
-
wave GetPressureTypeWv(string device)¶
Returns a 1D wave with the same number of rows as headstages used to store the pressure type.
Available pressure types are one of PressureTypeConstants
ROWS:
One row for each headstage
See also
-
dfref GetDevicePulseAverageFolder(dfref dfr)¶
Return the pulse averaging folder.
UTF_NOINSTRUMENTATION
-
string GetDevicePulseAverageFolderAS(dfref dfr)¶
Return the full path to the pulse averaging folder, e.g. dfr:PulseAveraging.
UTF_NOINSTRUMENTATION
-
dfref GetDevicePulseAverageHelperFolder(dfref dfr)¶
Return the pulse averaging helper folder.
This holds various helper waves for the graph generation.
UTF_NOINSTRUMENTATION
-
string GetDevicePulseAverageHelperFolderAS(dfref dfr)¶
Return the full path to the pulse averaging helper folder, e.g. dfr:Helper.
UTF_NOINSTRUMENTATION
-
wave GetPulseAverageWave(dfref dfr, variable length, variable channelType, variable channelNumber, variable region, variable pulseIndex)¶
Return a wave reference to the single pulse defined by the given parameters.
- Parameters:
dfr – datafolder reference where to create the empty wave if it does not exist
length – Length in points of the new wave
channelType – channel type, one of XopChannelConstants
channelNumber – channel number
region – region index (a region is the range with data in a dDAQ/oodDAQ measurement)
pulseIndex – pulse number, 0-based
-
wave GetPulseAverageWaveNoteWave(dfref dfr, variable length, variable channelType, variable channelNumber, variable region, variable pulseIndex)¶
Return a wave reference to the single pulse defined by the given parameters.
- Parameters:
dfr – datafolder reference where to create the empty wave if it does not exist
length – Length in points of the new wave
channelType – channel type, one of XopChannelConstants
channelNumber – channel number
region – region index (a region is the range with data in a dDAQ/oodDAQ measurement)
pulseIndex – pulse number, 0-based
-
wave GetPulseAverageSetIndizes(dfref dfr, variable channelNumber, variable region)¶
Returns the pulse average set properties wave.
These are row indizes into GetPulseAverageProperties()/GetPulseAveragePropertiesWaves() for the pulses which belong to the given set.
-
wave GetPulseAverageSetImageWave(dfref dfr, variable channelNumber, variable region)¶
Returns the pulse average image wave.
This is used for the image display mode.
NOTE_INDEX
is used for marking the length of the used columns as there is one pulse per column.
-
wave GetPulseAverageProperties(dfref dfr)¶
Return the pulse average properties wave.
It is filled by PA_GenerateAllPulseWaves() and consumed by others.
-
wave GetPulseAveragePropertiesWaves(dfref dfr)¶
Return the pulse average properties wave with wave references.
Belongs to GetPulseAverageProperties() and also has the same
NOTE_INDEX
count stored there.
-
wave GetPulseAverageDisplayMapping(dfref dfr)¶
Return the mapping wave for pulse averaging between region/channel to activeRegion/activeChannel.
Belongs to GetPulseAverageProperties() and also has the same
NOTE_INDEX
count stored there.
-
wave GetArtefactRemovalListWave(dfref dfr)¶
Return the artefact removal listbox wave for the databrowser or the sweepbrowser.
-
wave GetArtefactRemovalDataWave(dfref dfr)¶
Return the artefact removal wave databrowser or the sweepbrowser.
-
wave GetOverlaySweepsListWave(dfref dfr)¶
Return the overlay sweeps listbox wave for the databrowser or the sweepbrowser.
-
wave GetOverlaySweepsListSelWave(dfref dfr)¶
Return the overlay sweeps listbox selection wave for the databrowser or the sweepbrowser.
-
wave GetOverlaySweepHeadstageRemoval(dfref dfr)¶
Return the overlay sweeps wave with the parsed headstage removal info.
Rows:
Same index as in GetOverlaySweepsListWave() and GetOverlaySweepsListSelWave()
Columns:
NUM_HEADSTAGES, 1 if active and 0 if removed
-
wave GetOverlaySweepSelectionChoices(string win, dfref dfr, variable skipUpdate = defaultValue)¶
Return the overlay sweeps wave with all sweep selection choices for the databrowser or the sweepbrowser.
-
wave GetChannelSelectionWave(dfref dfr)¶
Return the channel selection wave for the databrowser or sweep browser.
-
wave GetAxisLabelCacheWave()¶
Return a free wave used for the axis label cache.
-
wave GetSweepBrowserMap(dfref dfr)¶
Return the sweepBrowser map wave from the given DFR.
-
wave GetAnalysisFunctionStorage(string device)¶
Return the storage wave for the analysis functions.
Only contains valid functions. An analysis function is valid if it has a compatible signature and can be found within the locations searched by AFH_GetAnalysisFunctions().
Rows:
Head stage number
Columns:
0-TOTAL_NUM_EVENTS - 1: Analysis functions
ANALYSIS_FUNCTION_PARAMS: Analysis function params (only for V3 generic functions)
-
wave GetSetEventFlag(string device)¶
Used for storing a true/false state that the pre and/or post set event should be fired after the sweep which is currently prepared in DC_PlaceDataInDAQDataWave().
Rows:
NUM_DA_TTL_CHANNELS
Columns:
PRE_SET_EVENT
POST_SET_EVENT
-
wave GetRAPerfWave(string device)¶
Return the wave for storing timestamps for perf testing repeated acquisition.
-
wave WBP_GetAnalysisParamGUIListWave()¶
Return the list wave for the analysis parameter GUI.
-
wave WBP_GetAnalysisParamGUISelWave()¶
Return the selection wave for the analysis parameter GUI.
-
wave WBP_GetAnalysisParamGUIHelpWave()¶
Return the help wave for the analysis parameter GUI.
-
wave GetAnaFuncDashboardListWave(dfref dfr)¶
Return the analysis function dashboard listbox wave for the databrowser or the sweepbrowser.
-
wave GetAnaFuncDashboardInfoWave(dfref dfr)¶
Return the analysis function dashboard info wave for the databrowser or the sweepbrowser.
-
wave GetAnaFuncDashboardSelWave(dfref dfr)¶
Return the analysis function dashboard listbox selection wave for the databrowser or the sweepbrowser.
-
wave GetAnaFuncDashboardColorWave(dfref dfr)¶
Return the analysis function dashboard listbox color wave for the databrowser or the sweepbrowser.
-
wave GetAnaFuncDashboardHelpWave(dfref dfr)¶
Return the analysis function dashboard help wave for the databrowser or the sweepbrowser.
-
wave GetDeviceInfoWave(string device)¶
Return a wave with device information.
AD: - For devices that have mixed channels for HS, Unassoc AD the number of the channels combinedEntries:
For devices that have separate channels for HS and Unassoc AD the number of the headstages DA: - For devices that have mixed channels for HS, Unassoc DA the number of the channels combined
For devices that have separate channels for HS and Unassoc DA the number of the headstages TTL: - Number of TTL channels Rack: - Number of Racks for ITC, NaN for other HW HardwareType: - One of
See also
HardwareDACTypeConstants like HARDWARE_SUTTER_DAC AuxAD: - For devices with HS independent AD channels the number of the separate AD channels, NaN for devices with mixed channels AuxDA: - For devices with HS independent DA channels the number of the separate DA channels, NaN for devices with mixed channels
-
wave GetElapsedTimeWave()¶
Return a wave suitable for storing elapsed time.
Helper function for DEBUGPRINT_ELAPSED_WAVE() and StoreElapsedTime().
-
wave GetSweepFormulaX(dfref dfr, variable graphNr)¶
Return the X wave for the sweep formula.
-
wave GetSweepFormulaY(dfref dfr, variable graphNr)¶
Return the Y wave for the sweep formula.
-
wave GetPopupExtMenuWave()¶
Return the global temporary wave for extended popup menu.
-
string GetGraphUserDataFolderAsString()¶
Return the reference to the graph user data datafolder as string.
UTF_NOINSTRUMENTATION
-
dfref GetGraphUserDataFolderDFR()¶
Return the reference to the graph user data datafolder.
UTF_NOINSTRUMENTATION
-
static string BuildGraphName(string graph)¶
UTF_NOINSTRUMENTATION.
-
string GetGraphUserDataAsString(string graph)¶
Return the path to the text wave for the graph user data as string.
UTF_NOINSTRUMENTATION
-
wave GetGraphUserData(string graph)¶
Return the text wave for the graph user data.
- Parameters:
graph – existing graph
-
wave GetPAGraphData()¶
Return the wave for trace counts per graph for pulse averaging plot rows one per graph, dimlabel is graph name.
Columns:
0: trace names of all average traces
1: trace names of all deconvolution traces
2: list of used image names
-
std::tuple<WAVE, string> GetPAPermanentAverageWave(dfref dfr, variable channel, variable region)¶
Return permanent average wave for PA plot for a given channel/region as well as its base name Returns a null wave if the permanent wave does not exist.
-
wave GetPulseInfoWave()¶
Return a free wave for storing timing information of single pulses.
Rows:
Pulses
Columns:
Length [ms]: Total length including baseline
PulseStart [ms]: Start of the pulse (aka begin of active)
PulseEnd [ms]: End of the pulse (aka end of active)
-
wave GetOverrideResults()¶
Return the wave used for storing mock data for tests.
This wave is created by MSQ_CreateOverrideResults(), PSQ_CreateOverrideResults() or TP_CreateOverrideResults() and does also not follow our usual rules so it might not exist.
-
wave GetAcqStateTracking()¶
Return the wave used for storing acquisition state transitions during testing.
-
wave GetValidAcqStateTransitions()¶
Return a wave with all valid acquisition state transitions.
It is AS_NUM_STATES x AS_NUM_STATES matrix were the old states are in the rows and the new states in the columns. Every valid transition has a 1 in it.
-
string GetDANDIFolderAsString()¶
UTF_NOINSTRUMENTATION.
-
dfref GetDANDIFolder()¶
Return the data folder reference to the DANDI folder.
UTF_NOINSTRUMENTATION
-
wave GetDandiSetProperties()¶
Return a free wave with the DANDI set properties.
Rows:
one row for each asset
Columns:
ID
created timestamp (ISO8601)
modified timestamp (ISO8601)
file path of the asset inside the DANDI set
-
wave GetDandiDialogWave(wave props)¶
-
wave GetDACAmplitudes(variable numDACEntries)¶
Return a free wave with the DAC amplitudes.
Rows:
One for each active DAC
Columns:
DASCALE
: DA Scale from the DAEphys GUITPAMP
: Testpulse amplitude (clamp mode dependent)
-
wave GetYvsXFormulas()¶
Return a free text wave to store single y vs x formula combinations from sweepformula code.
Rows:
One for each y vs x formula combination
-
wave GetYandXFormulas()¶
Return a free text wave to store y and x formula combinations from sweepformula code.
Rows:
One for each formula Columns:
FORMULA_X: formula for x wave
FORMULA_Y: formula for y wave
-
wave GetTPSettingsFree()¶
Free wave version of GetTPSettingsFree()
-
wave GetTPSettings(string device)¶
Return the testpulse GUI settings.
Rows:
Buffer size: Number of elements to average
Resistance tolerance: Tolerance for labnotebook change reporting of resistance values, see GetTPResults()
Baseline percentage: Fraction which the baseline occupies relative to the total testpulse length, before and after the pulse itself.
Pulse duration [ms]
Amplitude VC
Amplitude IC
Auto TP: On/Off (Requires to also call TP_AutoTPGenerateNewCycleID() when writing)
Auto TP: Maximum current [pA]
Auto TP: Voltage [mV]
Auto TP: +/- Voltage [mV]
Auto TP: Percentage [%]
Auto TP: Interval [s]
Auto TP: Cycle ID
Columns:
LABNOTEBOOK_LAYER_COUNT
-
wave GetTPSettingsCalculated(string device)¶
Return the calculated/derived TP settings.
The entries in this wave are only valid during DAQ/TP and are updated via DC_UpdateGlobals().
-
wave GetTPSettingsCalculatedAsFree()¶
-
static variable SetTPSettingsCalculatedProperties(wave wv)¶
-
wave GetTPSettingsLabnotebookKeyWave(string device)¶
Returns a wave reference to the TP settings key wave.
Rows:
0: Parameter
1: Units
2: Tolerance Factor
Columns (all entries headstage dependent except otherwise noted):
0: TP Baseline Fraction (INDEP_HEADSTAGE)
1: TP Amplitude VC
2: TP Amplitude IC
3: TP Pulse Duration (INDEP_HEADSTAGE)
4: TP Auto On/Off
5: TP Auto max current
6: TP Auto voltage
7: TP Auto voltage range
8: TP buffer size (INDEP_HEADSTAGE)
9: Minimum TP resistance for tolerance (INDEP_HEADSTAGE)
10: Send TP settings to all headstages (INDEP_HEADSTAGE)
11: TP Auto percentage (INDEP_HEADSTAGE)
12: TP Auto interval (INDEP_HEADSTAGE)
13: TP Auto QC
14: TP Cycle ID
-
wave GetTPSettingsLabnotebook(string device)¶
Get TP settings wave for the labnotebook.
See GetTPSettingsLabnotebookKeyWave() for the dimension label description.
-
wave GetFormulaGatherWave()¶
Returns a free wave for gathering formula results.
The wave stores the wave reference waves returned from SF_ExecuteFormula for the X and Y formulas. In SF_GatherFormulaResults() all formula pairs for on graph subwindow are gathered.
-
wave GetSFVarStorage(string graph)¶
Returns variable storage of data browser referenced by dfr.
-
wave GetSFVarAssignments()¶
Returns a wave where variable assignments are collected into.
-
wave GetActiveChannelMapTTLGUIToHW()¶
Returns a wave where GetActiveChannels fills in the mapping between GUI and hardware TTL channels The wave is initialized here with no active channels.
-
wave GetActiveChannelMapTTLHWToGUI()¶
Returns a wave where GetActiveChannels fills in the mapping between hardware and GUI TTL channels The wave is initialized here with no active channels.
-
wave GetLogFileNames()¶
Returns a wave with the names of all log files.
-
wave GetNewSamplingIntervalsAsFree()¶
Used as temporary wave to store various sampling intervals in ms.
-
wave GetSUDeviceInfo()¶
Return wave with Sutter device info.
ROWS:
NUMBEROFDACS: number of IPA devices
MASTERDEVICE: Serial of master device
LISTOFDEVICES: Serials of SubDevices
LISTOFHEADSTAGES: Number of Headstages per Device
SUMHEADSTAGES: Sum of Headstages
AI: Number of analog ins
AO: Number of analog outs
DIOPortWidth: Number of digital outs
-
wave GetSUDeviceInput(string device)¶
Return wave with Sutter input list wave.
ROWS:
entries
COLS:
INPUTWAVE: full path to input wave
CHANNEL: sutter hardware channel number
ENCODEINFO: additional information for multi-device configuration
-
wave GetSUDeviceOutput(string device)¶
Return wave with Sutter output list wave.
ROWS:
entries
COLS:
OUTPUTWAVE: full path to output wave
CHANNEL: sutter hardware channel number
ENCODEINFO: additional information for multi-device configuration
-
wave GetSUDeviceInputGains(string device)¶
Return wave with Sutter gains for input.
ROWS:
entries
COLS:
GAINFACTOR: gain factor
OFFSET: offset
-
wave GetSutterDACTTLSampleInterval()¶
Returns valid TTL channel sample intervals of sutter IPA hardware in microseconds.
-
wave GetSutterADCSampleInterval()¶
Returns valid ADC channel sample intervals of sutter IPA hardware in microseconds.
-
std::tuple<WaveText, WaveDouble> GetLogbookSortedKeys(wave values)¶
Gets from a Logbook values wave the wave with sortedKeys and associated indices in a separate wave.
-
dfref GetSetFolder(variable channelType)¶
Return the stimset folder from the numeric channelType, CHANNEL_TYPE_DAC or CHANNEL_TYPE_TTL.
- Returns:
Data Folder reference to Stimset dataFolder
-
string GetSetFolderAsString(variable channelType)¶
Return the stimset folder from the numeric channelType, CHANNEL_TYPE_DAC or CHANNEL_TYPE_TTL.
- Returns:
String with full path to Stimset dataFolder
-
dfref GetSetParamFolder(variable channelType)¶
Get the stimset parameter folder.
- Parameters:
channelType – CHANNEL_TYPE_DAC or CHANNEL_TYPE_TTL
- Returns:
dataFolder as DFREF
-
string GetSetParamFolderAsString(variable channelType)¶
Get the stimset parameter folder.
- Parameters:
channelType – CHANNEL_TYPE_DAC or CHANNEL_TYPE_TTL
- Returns:
dataFolder as String
-
wave GetSFSelectDataComp(string graph, string opShort)¶
returns a composite wave for select
Variables
-
static const double ANALYSIS_BROWSER_LISTBOX_WAVE_VERSION = 1¶
-
static const double ANALYSIS_BROWSER_FOLDER_LISTBOX_WAVE_VERSION = 1¶
-
static const double ANALYSIS_BROWSER_FOLDERCOL_LISTBOX_WAVE_VERSION = 1¶
-
static const double ANALYSIS_BROWSER_FOLDERSEL_LISTBOX_WAVE_VERSION = 1¶
-
static const double NUM_COLUMNS_LIST_WAVE = 12¶
-
static const string WAVE_NOTE_LAYOUT_KEY = "WAVE_LAYOUT_VERSION"¶
-
static const double WAVE_TYPE_NUMERICAL = 0x1¶
-
static const double WAVE_TYPE_TEXTUAL = 0x2¶
-
static const double PULSE_WAVE_VERSION = 4¶
-
static const string TP_SETTINGS_LABELS = "bufferSize;resistanceTol;sendToAllHS;baselinePerc;durationMS;amplitudeVC;amplitudeIC;autoTPEnable;autoAmpMaxCurrent;autoAmpVoltage;autoAmpVoltageRange;autoTPPercentage;autoTPInterval;autoTPCycleID"¶
-
static const string LOGBOOK_SUFFIX_SORTEDKEYS = "_sorted"¶
-
static const string LOGBOOK_SUFFIX_SORTEDKEYSINDICES = "_indices"¶
-
static const double EPOCHS_WAVE_VERSION = 3¶
-
static const double DQM_ACTIVE_DEV_WAVE_VERSION = 3¶
-
static const double TP_SETTINGSCALCULATED_WAVE_VERSION = 3¶
-
static const double TP_SETTINGS_WAVE_VERSION = 2¶