@@ -3019,49 +3019,49 @@ End
30193019/// - 1: Amplifier bias current (Current Clamp)
30203020/// - 2: (Peak/Instantaneous) Resistance
30213021/// - 3: (Steady State) Resistance
3022- /// - 4: Time in s (arbitrary zero)
3023- /// - 5: Delta time in s relative to the entry in the first row of layer 3
3024- /// - 6: (Steady State) Resistance slope
3025- /// - 7: Pressure in psi
3026- /// - 8: Timestamp since igor epoch (*with* timezone offsets)
3027- /// - 9: Timestamp in UTC since igor epoch
3028- /// - 10: Pressure changed
3029- /// - 11: Holding current (pA, Voltage Clamp)
3030- /// - 12: Vrest (mV, Current Clamp)
3031- /// - 13: AD channel
3032- /// - 14: DA channel
3033- /// - 15: Headstage
3034- /// - 16: ClampMode
3035- /// - 17: UserPressure
3036- /// - 18: PressureMethod (see @ref PressureModeConstants)
3037- /// - 19: ValidState (true if the entry is considered valid, false otherwise)
3038- /// - 20: UserPressureType (see @ref PressureTypeConstants)
3039- /// - 21: UserPressureTimeStampUTC timestamp since Igor Pro epoch in UTC where
3022+ /// - 4: Delta time in s relative to the entry in the first row of layer 3
3023+ /// - 5: (Steady State) Resistance slope
3024+ /// - 6: Pressure in psi
3025+ /// - 7: Timestamp since igor epoch (*with* timezone offsets)
3026+ /// - 8: Timestamp in UTC since igor epoch
3027+ /// - 9: Pressure changed
3028+ /// - 10: Holding current (pA, Voltage Clamp)
3029+ /// - 11: Vrest (mV, Current Clamp)
3030+ /// - 12: AD channel
3031+ /// - 13: DA channel
3032+ /// - 14: Headstage
3033+ /// - 15: ClampMode
3034+ /// - 16: UserPressure
3035+ /// - 17: PressureMethod (see @ref PressureModeConstants)
3036+ /// - 18: ValidState (true if the entry is considered valid, false otherwise)
3037+ /// - 19: UserPressureType (see @ref PressureTypeConstants)
3038+ /// - 20: UserPressureTimeStampUTC timestamp since Igor Pro epoch in UTC where
30403039/// the user pressure was acquired
3041- /// - 22 : TPMarker unique number identifying this set of TPs
3042- /// - 23 : Cell state: Pressure control values defining the cell state, one of @ref CellStateValues
3043- /// - 24 : Testpulse Cycle Id (changes whenever TP is started, allows to group TPs together)
3044- /// - 25 : Auto TP Amplitude: success/fail state
3045- /// - 26 : Auto TP Baseline: success/fail state
3046- /// - 27 : Auto TP Baseline Range Exceeded: True/False
3047- /// - 28 : Auto TP Cycle ID: Unique number which is constant until the "Auto TP"
3040+ /// - 21 : TPMarker unique number identifying this set of TPs
3041+ /// - 22 : Cell state: Pressure control values defining the cell state, one of @ref CellStateValues
3042+ /// - 23 : Testpulse Cycle Id (changes whenever TP is started, allows to group TPs together)
3043+ /// - 24 : Auto TP Amplitude: success/fail state
3044+ /// - 25 : Auto TP Baseline: success/fail state
3045+ /// - 26 : Auto TP Baseline Range Exceeded: True/False
3046+ /// - 27 : Auto TP Cycle ID: Unique number which is constant until the "Auto TP"
30483047/// state is switched (aka on->off or off->on)
3049- /// - 29 : Auto TP Baseline Fit result: One of @ref TPBaselineFitResults
3050- /// - 30 : Auto TP Delta V [mV]
3051- /// - 31 : Clamp Amplitude [mV] or [pA] depending on Clamp Mode
3052- /// - 32 : Testpulse full length in points for AD channel [points]
3053- /// - 33 : Testpulse pulse length in points for AD channel [points]
3054- /// - 34 : Point index of pulse start for AD channel [point]
3055- /// - 35 : Sampling interval for AD channel [ms]
3056- /// - 36 : Testpulse full length in points for DA channel [points]
3057- /// - 37 : Testpulse pulse length in points for DA channel [points]
3058- /// - 38 : Point index of pulse start for DA channel [point]
3059- /// - 39 : Sampling interval for DA channel [ms]
3048+ /// - 28 : Auto TP Baseline Fit result: One of @ref TPBaselineFitResults
3049+ /// - 29 : Auto TP Delta V [mV]
3050+ /// - 30 : Clamp Amplitude [mV] or [pA] depending on Clamp Mode
3051+ /// - 31 : Testpulse full length in points for AD channel [points]
3052+ /// - 32 : Testpulse pulse length in points for AD channel [points]
3053+ /// - 33 : Point index of pulse start for AD channel [point]
3054+ /// - 34 : Sampling interval for AD channel [ms]
3055+ /// - 35 : Testpulse full length in points for DA channel [points]
3056+ /// - 36 : Testpulse pulse length in points for DA channel [points]
3057+ /// - 37 : Point index of pulse start for DA channel [point]
3058+ /// - 38 : Sampling interval for DA channel [ms]
30603059Function /WAVE GetTPStorage ( string device)
30613060
30623061 DFREF dfr = GetDeviceTestPulse ( device)
3063- variable versionOfNewWave = 16
3064- variable numLayers = 40
3062+ variable versionOfNewWave = 17
3063+ variable numLayersV16 = 40
3064+ variable numLayers = 39
30653065
30663066 WAVE /Z/ D/ SDFR= dfr wv = TPStorage
30673067
@@ -3070,7 +3070,7 @@ Function/WAVE GetTPStorage(string device)
30703070 endif
30713071
30723072 if ( WaveExists ( wv))
3073- Redimension / N= ( -1, NUM_HEADSTAGES, numLayers ) / D wv
3073+ Redimension / N= ( -1, NUM_HEADSTAGES, numLayersV 16 ) / D wv
30743074
30753075 if ( WaveVersionIsSmaller ( wv, 10 ))
30763076 wv[][][ 17 ] = NaN
@@ -3092,6 +3092,11 @@ Function/WAVE GetTPStorage(string device)
30923092 if ( WaveVersionIsSmaller ( wv, 16 ))
30933093 wv[][][ 31, numLayers - 1 ] = NaN
30943094 endif
3095+ if ( WaveVersionIsSmaller ( wv, 17 ))
3096+ // Delete the former layer for %TimeInSeconds that was layer 4
3097+ // The functionality is replaced by a precise %TimeStamp
3098+ DeletePoints / M= ( LAYERS) 4, 1, wv
3099+ endif
30953100 else
30963101 Make / N= ( MINIMUM_WAVE_SIZE_LARGE, NUM_HEADSTAGES, numLayers) / D dfr: TPStorage/WAVE = wv
30973102
@@ -3106,45 +3111,44 @@ Function/WAVE GetTPStorage(string device)
31063111 SetDimLabel LAYERS, 1, HoldingCmd_IC, wv
31073112 SetDimLabel LAYERS, 2, PeakResistance, wv
31083113 SetDimLabel LAYERS, 3, SteadyStateResistance, wv
3109- SetDimLabel LAYERS, 4, TimeInSeconds, wv
3110- SetDimLabel LAYERS, 5, DeltaTimeInSeconds, wv
3111- SetDimLabel LAYERS, 6, Rss_Slope, wv
3112- SetDimLabel LAYERS, 7, Pressure, wv
3113- SetDimLabel LAYERS, 8, TimeStamp, wv
3114- SetDimLabel LAYERS, 9, TimeStampSinceIgorEpochUTC, wv
3115- SetDimLabel LAYERS, 10, PressureChange, wv
3116- SetDimLabel LAYERS, 11, Baseline_VC, wv
3117- SetDimLabel LAYERS, 12, Baseline_IC, wv
3118- SetDimLabel LAYERS, 13, ADC, wv
3119- SetDimLabel LAYERS, 14, DAC, wv
3120- SetDimLabel LAYERS, 15, Headstage, wv
3121- SetDimLabel LAYERS, 16, ClampMode, wv
3122- SetDimLabel LAYERS, 17, UserPressure, wv
3123- SetDimLabel LAYERS, 18, PressureMethod, wv
3124- SetDimLabel LAYERS, 19, ValidState, wv
3125- SetDimLabel LAYERS, 20, UserPressureType, wv
3126- SetDimLabel LAYERS, 21, UserPressureTimeStampUTC, wv
3127- SetDimLabel LAYERS, 22, TPMarker, wv
3128- SetDimLabel LAYERS, 23, CellState, wv
3129- SetDimLabel LAYERS, 24, TPCycleID, wv
3130- SetDimLabel LAYERS, 25, AutoTPAmplitude, wv
3131- SetDimLabel LAYERS, 26, AutoTPBaseline, wv
3132- SetDimLabel LAYERS, 27, AutoTPBaselineRangeExceeded, wv
3133- SetDimLabel LAYERS, 28, AutoTPCycleID, wv
3134- SetDimLabel LAYERS, 29, AutoTPBaselineFitResult, wv
3135- SetDimLabel LAYERS, 30, AutoTPDeltaV, wv
3114+ SetDimLabel LAYERS, 4, DeltaTimeInSeconds, wv
3115+ SetDimLabel LAYERS, 5, Rss_Slope, wv
3116+ SetDimLabel LAYERS, 6, Pressure, wv
3117+ SetDimLabel LAYERS, 7, TimeStamp, wv
3118+ SetDimLabel LAYERS, 8, TimeStampSinceIgorEpochUTC, wv
3119+ SetDimLabel LAYERS, 9, PressureChange, wv
3120+ SetDimLabel LAYERS, 10, Baseline_VC, wv
3121+ SetDimLabel LAYERS, 11, Baseline_IC, wv
3122+ SetDimLabel LAYERS, 12, ADC, wv
3123+ SetDimLabel LAYERS, 13, DAC, wv
3124+ SetDimLabel LAYERS, 14, Headstage, wv
3125+ SetDimLabel LAYERS, 15, ClampMode, wv
3126+ SetDimLabel LAYERS, 16, UserPressure, wv
3127+ SetDimLabel LAYERS, 17, PressureMethod, wv
3128+ SetDimLabel LAYERS, 18, ValidState, wv
3129+ SetDimLabel LAYERS, 19, UserPressureType, wv
3130+ SetDimLabel LAYERS, 20, UserPressureTimeStampUTC, wv
3131+ SetDimLabel LAYERS, 21, TPMarker, wv
3132+ SetDimLabel LAYERS, 22, CellState, wv
3133+ SetDimLabel LAYERS, 23, TPCycleID, wv
3134+ SetDimLabel LAYERS, 24, AutoTPAmplitude, wv
3135+ SetDimLabel LAYERS, 25, AutoTPBaseline, wv
3136+ SetDimLabel LAYERS, 26, AutoTPBaselineRangeExceeded, wv
3137+ SetDimLabel LAYERS, 27, AutoTPCycleID, wv
3138+ SetDimLabel LAYERS, 28, AutoTPBaselineFitResult, wv
3139+ SetDimLabel LAYERS, 29, AutoTPDeltaV, wv
31363140 // Dimlabels starting from here are taken from TP_ANALYSIS_DATA_LABELS
31373141 // This is not required but convenient because in @ref TP_RecordTP data from TPResults (@ref GetTPResults)
31383142 // is transferred to tpStorage and TPResults also uses dimlabels from TP_ANALYSIS_DATA_LABELS partially.
3139- SetDimLabel LAYERS, 31 , CLAMPAMP, wv
3140- SetDimLabel LAYERS, 32 , TPLENGTHPOINTSADC, wv
3141- SetDimLabel LAYERS, 33 , PULSELENGTHPOINTSADC, wv
3142- SetDimLabel LAYERS, 34 , PULSESTARTPOINTSADC, wv
3143- SetDimLabel LAYERS, 35 , SAMPLINGINTERVALADC, wv
3144- SetDimLabel LAYERS, 36 , TPLENGTHPOINTSDAC, wv
3145- SetDimLabel LAYERS, 37 , PULSELENGTHPOINTSDAC, wv
3146- SetDimLabel LAYERS, 38 , PULSESTARTPOINTSDAC, wv
3147- SetDimLabel LAYERS, 39 , SAMPLINGINTERVALDAC, wv
3143+ SetDimLabel LAYERS, 30 , CLAMPAMP, wv
3144+ SetDimLabel LAYERS, 31 , TPLENGTHPOINTSADC, wv
3145+ SetDimLabel LAYERS, 32 , PULSELENGTHPOINTSADC, wv
3146+ SetDimLabel LAYERS, 33 , PULSESTARTPOINTSADC, wv
3147+ SetDimLabel LAYERS, 34 , SAMPLINGINTERVALADC, wv
3148+ SetDimLabel LAYERS, 35 , TPLENGTHPOINTSDAC, wv
3149+ SetDimLabel LAYERS, 36 , PULSELENGTHPOINTSDAC, wv
3150+ SetDimLabel LAYERS, 37 , PULSESTARTPOINTSDAC, wv
3151+ SetDimLabel LAYERS, 38 , SAMPLINGINTERVALDAC, wv
31483152
31493153 SetNumberInWaveNote ( wv, AUTOBIAS_LAST_INVOCATION_KEY, 0 )
31503154 SetNumberInWaveNote ( wv, DIMENSION_SCALING_LAST_INVOC, 0 )
0 commit comments