15#ifndef INC_ABFHEADR2_H
16#define INC_ABFHEADR2_H
27#define ABF2_ADCCOUNT 16
28#define ABF2_DACCOUNT 8
29#define ABF2_EPOCHCOUNT 10
30#define ABF2_ADCUNITLEN 8
31#define ABF2_ADCNAMELEN 10
32#define ABF2_ADCNAMELEN_USER 8
33#define ABF2_DACUNITLEN 8
34#define ABF2_DACNAMELEN 10
35#define ABF2_USERLISTLEN 256
37#define ABF2_USERLISTCOUNT ABF2_DACCOUNT
38#define ABF2_OLDFILECOMMENTLEN 56
39#define ABF2_FILECOMMENTLEN 128
40#define ABF2_PATHLEN 256
41#define ABF2_CREATORINFOLEN 16
42#define ABF2_ARITHMETICOPLEN 2
43#define ABF2_ARITHMETICUNITSLEN 8
44#define ABF2_TAGCOMMENTLEN 56
45#define ABF2_BLOCKSIZE 512
46#define PCLAMP6_MAXSWEEPLENGTH 16384
47#define PCLAMP7_MAXSWEEPLEN_PERCHAN 1032258
48#define ABF2_MAX_SWEEPS_PER_AVERAGE 65500
50#define ABF2_MAX_TRIAL_SAMPLES 0x7FFFFFFF
60#define ABF2_DIGI_UNKNOWN 0
61#define ABF2_DIGI_DEMO 1
62#define ABF2_DIGI_MINIDIGI 2
63#define ABF2_DIGI_DD132X 3
64#define ABF2_DIGI_OPUS 4
65#define ABF2_DIGI_PATCH 5
66#define ABF2_DIGI_DD1440 6
67#define ABF2_DIGI_MINIDIGI2 7
68#define ABF2_DIGI_DD1550 8
73#define ABF2_DRAW_NONE 0
74#define ABF2_DRAW_REALTIME 1
75#define ABF2_DRAW_FULLSCREEN 2
76#define ABF2_DRAW_ENDOFRUN 3
81#define ABF2_DISPLAY_SUPERIMPOSED 0
82#define ABF2_DISPLAY_TILED 1
87#define ABF2_DRAW_POINTS 0
88#define ABF2_DRAW_LINES 1
91#define ABF2_DATAFILE 0
92#define ABF2_PARAMFILE 1
93#define ABF2_ALLOWOVERLAP 2
96#define ABF2_DATAFILE_ABF1 4
97#define ABF2_PARAMFILE_ABF1 8
104#define ABF2_DELTA_HOLDING0 0
105#define ABF2_DELTA_HOLDING1 1
106#define ABF2_DELTA_HOLDING2 2
107#define ABF2_DELTA_HOLDING3 3
108#define ABF2_DELTA_DIGITALOUTS 4
109#define ABF2_DELTA_THRESHOLD 5
110#define ABF2_DELTA_PRETRIGGER 6
111#define ABF2_DELTA_HOLDING4 7
112#define ABF2_DELTA_HOLDING5 8
113#define ABF2_DELTA_HOLDING6 9
114#define ABF2_DELTA_HOLDING7 10
117#define ABF2_DELTA_AUTOSAMPLE_GAIN 100
120#define ABF2_DELTA_SIGNAL_GAIN 200
126#define ABF2_NOAVERAGING 0
127#define ABF2_SAVEAVERAGEONLY 1
128#define ABF2_AVERAGESAVEALL 2
133#define ABF2_INFINITEAVERAGE 0
134#define ABF2_SLIDINGAVERAGE 1
139#define ABF2_UNDOPROMPT_ONABORT 0
140#define ABF2_UNDOPROMPT_ALWAYS 1
145#define ABF2_TRIGGER_STARTEPISODE 0
146#define ABF2_TRIGGER_STARTRUN 1
147#define ABF2_TRIGGER_STARTTRIAL 2
152#define ABF2_TRIGGER_RISINGEDGE 0
153#define ABF2_TRIGGER_FALLINGEDGE 1
158#define ABF2_DACFILE_SKIPFIRSTSWEEP -1
159#define ABF2_DACFILE_USEALLSWEEPS 0
165#define ABF2_INTEREPI_USEHOLDING 0
166#define ABF2_INTEREPI_USELASTEPOCH 1
171#define ABF2_SIMPLE_EXPRESSION 0
172#define ABF2_RATIO_EXPRESSION 1
177#define ABF2_FILTER_NONE 0
178#define ABF2_FILTER_EXTERNAL 1
179#define ABF2_FILTER_SIMPLE_RC 2
180#define ABF2_FILTER_BESSEL 3
181#define ABF2_FILTER_BUTTERWORTH 4
186#define ABF2_POSTPROCESS_FILTER_NONE 0
187#define ABF2_POSTPROCESS_FILTER_ADAPTIVE 1
188#define ABF2_POSTPROCESS_FILTER_BESSEL 2
189#define ABF2_POSTPROCESS_FILTER_BOXCAR 3
190#define ABF2_POSTPROCESS_FILTER_BUTTERWORTH 4
191#define ABF2_POSTPROCESS_FILTER_CHEBYSHEV 5
192#define ABF2_POSTPROCESS_FILTER_GAUSSIAN 6
193#define ABF2_POSTPROCESS_FILTER_RC 7
194#define ABF2_POSTPROCESS_FILTER_RC8 8
195#define ABF2_POSTPROCESS_FILTER_NOTCH 9
200#define ABF2_DIGITAL_OUT_CHANNEL -1
201#define ABF2_PADDING_OUT_CHANNEL -2
206#define ABF2_AUTOANALYSE_DISABLED 0
207#define ABF2_AUTOANALYSE_DEFAULT 1
208#define ABF2_AUTOANALYSE_RUNMACRO 2
213#define ABF2_PEAK_SEARCH_SPECIFIED -2
214#define ABF2_PEAK_SEARCH_ALL -1
221#define ABF2_PEAK_BASELINE_SPECIFIED -3
222#define ABF2_PEAK_BASELINE_NONE -2
223#define ABF2_PEAK_BASELINE_FIRSTHOLDING -1
224#define ABF2_PEAK_BASELINE_LASTHOLDING -4
228#define ABF2_PEAK_SEARCH_REGION0 0x01
229#define ABF2_PEAK_SEARCH_REGION1 0x02
230#define ABF2_PEAK_SEARCH_REGION2 0x04
231#define ABF2_PEAK_SEARCH_REGION3 0x08
232#define ABF2_PEAK_SEARCH_REGION4 0x10
233#define ABF2_PEAK_SEARCH_REGION5 0x20
234#define ABF2_PEAK_SEARCH_REGION6 0x40
235#define ABF2_PEAK_SEARCH_REGION7 0x80
236#define ABF2_PEAK_SEARCH_REGIONALL 0xFF
241#define ABF2_PEAK_SEARCH_CHANNEL0 0x0001
242#define ABF2_PEAK_SEARCH_CHANNEL1 0x0002
243#define ABF2_PEAK_SEARCH_CHANNEL2 0x0004
244#define ABF2_PEAK_SEARCH_CHANNEL3 0x0008
245#define ABF2_PEAK_SEARCH_CHANNEL4 0x0010
246#define ABF2_PEAK_SEARCH_CHANNEL5 0x0020
247#define ABF2_PEAK_SEARCH_CHANNEL6 0x0040
248#define ABF2_PEAK_SEARCH_CHANNEL7 0x0080
249#define ABF2_PEAK_SEARCH_CHANNEL8 0x0100
250#define ABF2_PEAK_SEARCH_CHANNEL9 0x0200
251#define ABF2_PEAK_SEARCH_CHANNEL10 0x0400
252#define ABF2_PEAK_SEARCH_CHANNEL11 0x0800
253#define ABF2_PEAK_SEARCH_CHANNEL12 0x1000
254#define ABF2_PEAK_SEARCH_CHANNEL13 0x2000
255#define ABF2_PEAK_SEARCH_CHANNEL14 0x4000
256#define ABF2_PEAK_SEARCH_CHANNEL15 0x8000
257#define ABF2_PEAK_SEARCH_CHANNELSALL 0xFFFF
262#define ABF2_LEAKSUBTRACT_NONE 0
263#define ABF2_LEAKSUBTRACT_PN 1
264#define ABF2_LEAKSUBTRACT_RESISTIVE 2
269#define ABF2_PN_OPPOSITE_POLARITY -1
270#define ABF2_PN_SAME_POLARITY 1
275#define ABF2_PN_BEFORE_EPISODE 0
276#define ABF2_PN_AFTER_EPISODE 1
281#define ABF2_AUTOSAMPLEDISABLED 0
282#define ABF2_AUTOSAMPLEAUTOMATIC 1
283#define ABF2_AUTOSAMPLEMANUAL 2
288#define ABF2_INST_UNKNOWN 0
289#define ABF2_INST_AXOPATCH1 1
290#define ABF2_INST_AXOPATCH1_1 2
291#define ABF2_INST_AXOPATCH1B 3
292#define ABF2_INST_AXOPATCH1B_1 4
293#define ABF2_INST_AXOPATCH201 5
294#define ABF2_INST_AXOPATCH202 6
295#define ABF2_INST_GENECLAMP 7
296#define ABF2_INST_DAGAN3900 8
297#define ABF2_INST_DAGAN3900A 9
298#define ABF2_INST_DAGANCA1_1 10
299#define ABF2_INST_DAGANCA1 11
300#define ABF2_INST_DAGANCA10 12
301#define ABF2_INST_WARNER_OC725 13
302#define ABF2_INST_WARNER_OC725C 14
303#define ABF2_INST_AXOPATCH200B 15
304#define ABF2_INST_DAGANPCONE0_1 16
305#define ABF2_INST_DAGANPCONE1 17
306#define ABF2_INST_DAGANPCONE10 18
307#define ABF2_INST_DAGANPCONE100 19
308#define ABF2_INST_WARNER_BC525C 20
309#define ABF2_INST_WARNER_PC505 21
310#define ABF2_INST_WARNER_PC501 22
311#define ABF2_INST_DAGANCA1_05 23
312#define ABF2_INST_MULTICLAMP700 24
313#define ABF2_INST_TURBO_TEC 25
314#define ABF2_INST_OPUSXPRESS6000 26
315#define ABF2_INST_AXOCLAMP900 27
320#define ABF2_TIMETAG 0
321#define ABF2_COMMENTTAG 1
322#define ABF2_EXTERNALTAG 2
323#define ABF2_VOICETAG 3
324#define ABF2_NEWFILETAG 4
325#define ABF2_ANNOTATIONTAG 5
329#define ABF2_EXTERNALTAGCOMMENT "<External>"
330#define ABF2_VOICETAGCOMMENT "<Voice Tag>"
335#define ABF2_ENV_DONOTWRITE 0
336#define ABF2_ENV_WRITEEACHTRIAL 1
337#define ABF2_ENV_PROMPTEACHTRIAL 2
342#define ABF2_PEAK_NEGATIVE -1
343#define ABF2_PEAK_ABSOLUTE 0
344#define ABF2_PEAK_POSITIVE 1
349#define ABF2_LTP_TYPE_NONE 0
350#define ABF2_LTP_TYPE_BASELINE 1
351#define ABF2_LTP_TYPE_INDUCTION 2
356#define ABF2_LTP_DAC_USAGE_NONE 0
357#define ABF2_LTP_DAC_USAGE_PRESYNAPTIC 1
358#define ABF2_LTP_DAC_USAGE_POSTSYNAPTIC 2
361#define ABF2_EPISODICMODE 0
362#define ABF2_CONTINUOUSMODE 1
368#define ABF2_VOLTAGECLAMP 0
369#define ABF2_CURRENTCLAMP 1
370#define ABF2_SIMPLEACQUISITION 2
375#define ABF2_FILTERDISABLED 100000.0F
376#define ABF2_UNUSED_CHANNEL -1
377#define ABF2_ANY_CHANNEL (UINT)-1
382#define ABF2_INTEGERDATA 0
383#define ABF2_FLOATDATA 1
388#define ABF2_VARLENEVENTS 1
389#define ABF2_FIXLENEVENTS 2
390#define ABF2_LOSSFREEOSC 2
391#define ABF2_GAPFREEFILE 3
392#define ABF2_HIGHSPEEDOSC 4
393#define ABF2_WAVEFORMFILE 5
398#define ABF2_EPOCHDISABLED 0
399#define ABF2_EPOCHSTEPPED 1
400#define ABF2_EPOCHRAMPED 2
401#define ABF2_EPOCH_TYPE_RECTANGLE 3
402#define ABF2_EPOCH_TYPE_TRIANGLE 4
403#define ABF2_EPOCH_TYPE_COSINE 5
404#define ABF2_EPOCH_TYPE_UNUSED 6
405#define ABF2_EPOCH_TYPE_BIPHASIC 7
406#define ABF2_EPOCHSLOPE 8
411#define ABF2_MIN_EPOCH_RESISTANCE_DURATION 8
416#define ABF2_WAVEFORMDISABLED 0
417#define ABF2_EPOCHTABLEWAVEFORM 1
418#define ABF2_DACFILEWAVEFORM 2
423#define ABF2_ABFFILE 1
424#define ABF2_FETCHEX 2
425#define ABF2_CLAMPEX 3
430#define ABF2_CTPULSECOUNT_MAX 10000
431#define ABF2_CTBASELINEDURATION_MAX 1000000.0F
432#define ABF2_CTSTEPDURATION_MAX 1000000.0F
433#define ABF2_CTPOSTTRAINDURATION_MAX 1000000.0F
434#define ABF2_SWEEPSTARTTOSTARTTIME_MAX 1000000.0F
435#define ABF2_PNPULSECOUNT_MAX 8
436#define ABF2_DIGITALVALUE_MAX 0xFF
437#define ABF2_EPOCHDIGITALVALUE_MAX 0xFF
442#define ABF2_TRIGGERLINEINPUT -5
443#define ABF2_TRIGGERTAGINPUT -4
444#define ABF2_TRIGGERFIRSTCHANNEL -3
445#define ABF2_TRIGGEREXTERNAL -2
446#define ABF2_TRIGGERSPACEBAR -1
452#define ABF2_TRIALTRIGGER_SWSTARTONLY -6
453#define ABF2_TRIALTRIGGER_SWSTARTSTOP -5
454#define ABF2_TRIALTRIGGER_LINEINPUT -4
455#define ABF2_TRIALTRIGGER_SPACEBAR -3
456#define ABF2_TRIALTRIGGER_EXTERNAL -2
457#define ABF2_TRIALTRIGGER_NONE -1
463#define ABF2_STATISTICS_ABOVETHRESHOLD 0x00000001
464#define ABF2_STATISTICS_EVENTFREQUENCY 0x00000002
465#define ABF2_STATISTICS_MEANOPENTIME 0x00000004
466#define ABF2_STATISTICS_MEANCLOSEDTIME 0x00000008
467#define ABF2_STATISTICS_ALL 0x0000000F
472#define ABF2_STATISTICS_NOAUTOSAVE 0
473#define ABF2_STATISTICS_AUTOSAVE 1
474#define ABF2_STATISTICS_AUTOSAVE_AUTOCLEAR 2
479#define ABF2_STATISTICS_DISPLAY 0
480#define ABF2_STATISTICS_NODISPLAY 1
486#define ABF2_STATISTICS_NOCLEAR 0
487#define ABF2_STATISTICS_CLEAR 1
489#define ABF2_STATS_REGIONS 8
490#define ABF2_BASELINE_REGIONS 1
491#define ABF2_STATS_NUM_MEASUREMENTS 18
496#define ABF2_PEAK_MEASURE_PEAK 0x00000001
497#define ABF2_PEAK_MEASURE_PEAKTIME 0x00000002
498#define ABF2_PEAK_MEASURE_ANTIPEAK 0x00000004
499#define ABF2_PEAK_MEASURE_ANTIPEAKTIME 0x00000008
500#define ABF2_PEAK_MEASURE_MEAN 0x00000010
501#define ABF2_PEAK_MEASURE_STDDEV 0x00000020
502#define ABF2_PEAK_MEASURE_INTEGRAL 0x00000040
503#define ABF2_PEAK_MEASURE_MAXRISESLOPE 0x00000080
504#define ABF2_PEAK_MEASURE_MAXRISESLOPETIME 0x00000100
505#define ABF2_PEAK_MEASURE_MAXDECAYSLOPE 0x00000200
506#define ABF2_PEAK_MEASURE_MAXDECAYSLOPETIME 0x00000400
507#define ABF2_PEAK_MEASURE_RISETIME 0x00000800
508#define ABF2_PEAK_MEASURE_DECAYTIME 0x00001000
509#define ABF2_PEAK_MEASURE_HALFWIDTH 0x00002000
510#define ABF2_PEAK_MEASURE_BASELINE 0x00004000
511#define ABF2_PEAK_MEASURE_RISESLOPE 0x00008000
512#define ABF2_PEAK_MEASURE_DECAYSLOPE 0x00010000
513#define ABF2_PEAK_MEASURE_REGIONSLOPE 0x00020000
514#define ABF2_PEAK_MEASURE_DURATION 0x00040000
516#define ABF2_PEAK_NORMAL_PEAK 0x00100000
517#define ABF2_PEAK_NORMAL_ANTIPEAK 0x00400000
518#define ABF2_PEAK_NORMAL_MEAN 0x01000000
519#define ABF2_PEAK_NORMAL_STDDEV 0x02000000
520#define ABF2_PEAK_NORMAL_INTEGRAL 0x04000000
522#define ABF2_PEAK_NORMALISABLE 0x00000075
523#define ABF2_PEAK_NORMALISED 0x07500000
525#define ABF2_PEAK_MEASURE_ALL 0x0752FFFF
530#define ABF2_CONDITNUMPULSES 0
531#define ABF2_CONDITBASELINEDURATION 1
532#define ABF2_CONDITBASELINELEVEL 2
533#define ABF2_CONDITSTEPDURATION 3
534#define ABF2_CONDITSTEPLEVEL 4
535#define ABF2_CONDITPOSTTRAINDURATION 5
536#define ABF2_CONDITPOSTTRAINLEVEL 6
537#define ABF2_EPISODESTARTTOSTART 7
538#define ABF2_INACTIVEHOLDING 8
539#define ABF2_DIGITALHOLDING 9
540#define ABF2_PNNUMPULSES 10
541#define ABF2_PARALLELVALUE 11
542#define ABF2_EPOCHINITLEVEL (ABF2_PARALLELVALUE + ABF2_EPOCHCOUNT)
543#define ABF2_EPOCHINITDURATION (ABF2_EPOCHINITLEVEL + ABF2_EPOCHCOUNT)
544#define ABF2_EPOCHTRAINPERIOD (ABF2_EPOCHINITDURATION + ABF2_EPOCHCOUNT)
545#define ABF2_EPOCHTRAINPULSEWIDTH (ABF2_EPOCHTRAINPERIOD + ABF2_EPOCHCOUNT)
549#define ABF2_ERASE_EACHSWEEP 0
550#define ABF2_ERASE_EACHRUN 1
551#define ABF2_ERASE_EACHTRIAL 2
552#define ABF2_ERASE_DONTERASE 3
555#define ABF2_BACKGROUNDCOLOR 0
556#define ABF2_GRIDCOLOR 1
557#define ABF2_THRESHOLDCOLOR 2
558#define ABF2_EVENTMARKERCOLOR 3
559#define ABF2_SEPARATORCOLOR 4
560#define ABF2_AVERAGECOLOR 5
561#define ABF2_OLDDATACOLOR 6
562#define ABF2_TEXTCOLOR 7
563#define ABF2_AXISCOLOR 8
564#define ABF2_ACTIVEAXISCOLOR 9
565#define ABF2_LASTCOLOR ABF2_ACTIVEAXISCOLOR
566#define ABF2_SCOPECOLORS (ABF2_LASTCOLOR+1)
569#define ABF2_STATISTICS_REGION0 0
570#define ABF2_STATISTICS_REGION1 1
571#define ABF2_STATISTICS_REGION2 2
572#define ABF2_STATISTICS_REGION3 3
573#define ABF2_STATISTICS_REGION4 4
574#define ABF2_STATISTICS_REGION5 5
575#define ABF2_STATISTICS_REGION6 6
576#define ABF2_STATISTICS_REGION7 7
577#define ABF2_BASELINE_REGION 8
578#define ABF2_STOREDSWEEPCOLOR 9
579#define ABF2_LASTCOLOR_EX ABF2_STOREDSWEEPCOLOR
580#define ABF2_SCOPECOLORS_EX (ABF2_LASTCOLOR+1)
585#define ABF2_COMPRESSION_NONE 0
586#define ABF2_COMPRESSION_PKWARE 1
588#define ABF2_CURRENTVERSION ABF2_V203
592#define ABF2_V200 2.00F
593#define ABF2_V201 2.01F
595#define ABF2_V202 2.02F
596#define ABF2_V203 2.03F
599#undef ABF2_AUTOANALYSE_RUNMACRO
600#undef ABF2_MACRONAMELEN
928#define ABF2_FACESIZE 32
1079 float *pfUUTop,
float *pfUUBottom);
1082 float *pfADCToUUFactor,
float *pfADCToUUShift );
1087 float *pfDACToUUFactor,
float *pfDACToUUShift );
1097BOOL WINAPI ABF2H_GetErrorText(
int nError,
char *pszBuffer,
UINT nBufferSize );
1103struct ABF2FileHeader1;
1111#define ABF2H_FIRSTHOLDING -1
1112#define ABF2H_LASTHOLDING ABF2_EPOCHCOUNT
1116 int nEpoch,
UINT *puEpochStart,
UINT *puEpochEnd,
1130 float *pfBuffer,
int *pnError);
1135 DWORD *pdwBuffer,
int *pnError);
1141#define ABF2H_HOLDINGFRACTION 64
1150int WINAPI ABF2H_SweepLenFromUserLen(
int nUserLength,
int nNumChannels);
1151int WINAPI ABF2H_UserLenFromSweepLen(
int nSweepLength,
int nNumChannels);
1155 float fDisplayGain,
float fDisplayOffset,
1156 float *pfUUTop,
float *pfUUBottom);
1160 float fUUTop,
float fUUBottom,
1161 float *pfDisplayGain,
float *pfDisplayOffset);
1186void WINAPI ABF2H_GetMetaEpisodeDuration(
const ABF2FileHeader *pFH,
double *pdMetaEpisodeDuration);
1189void WINAPI ABF2H_GetEpisodeStartToStart(
const ABF2FileHeader *pFH,
double *pdEpisodeStartToStart);
1211#define ABF2H_FIRSTERRORNUMBER 2001
1212#define ABF2H_EHEADERREAD 2001
1213#define ABF2H_EHEADERWRITE 2002
1214#define ABF2H_EINVALIDFILE 2003
1215#define ABF2H_EUNKNOWNFILETYPE 2004
1216#define ABF2H_CHANNELNOTSAMPLED 2005
1217#define ABF2H_EPOCHNOTPRESENT 2006
1218#define ABF2H_ENOWAVEFORM 2007
1219#define ABF2H_EDACFILEWAVEFORM 2008
1220#define ABF2H_ENOMEMORY 2009
1221#define ABF2H_BADSAMPLEINTERVAL 2010
1222#define ABF2H_BADSECONDSAMPLEINTERVAL 2011
1223#define ABF2H_BADSAMPLEINTERVALS 2012
1224#define ABF2H_ENOCONDITTRAINS 2013
1225#define ABF2H_EMETADURATION 2014
1226#define ABF2H_ECONDITNUMPULSES 2015
1227#define ABF2H_ECONDITBASEDUR 2016
1228#define ABF2H_ECONDITBASELEVEL 2017
1229#define ABF2H_ECONDITPOSTTRAINDUR 2018
1230#define ABF2H_ECONDITPOSTTRAINLEVEL 2019
1231#define ABF2H_ESTART2START 2020
1232#define ABF2H_EINACTIVEHOLDING 2021
1233#define ABF2H_EINVALIDCHARS 2022
1234#define ABF2H_ENODIG 2023
1235#define ABF2H_EDIGHOLDLEVEL 2024
1236#define ABF2H_ENOPNPULSES 2025
1237#define ABF2H_EPNNUMPULSES 2026
1238#define ABF2H_ENOEPOCH 2027
1239#define ABF2H_EEPOCHLEN 2028
1240#define ABF2H_EEPOCHINITLEVEL 2029
1241#define ABF2H_EDIGLEVEL 2030
1242#define ABF2H_ECONDITSTEPDUR 2031
1243#define ABF2H_ECONDITSTEPLEVEL 2032
1244#define ABF2H_EINVALIDBINARYCHARS 2033
1245#define ABF2H_EBADWAVEFORM 2034
WORD TpFloat TpFloat pfMin
WORD TpFloat TpFloat TpFloat pfMax
BOOL WINAPI ABF2H_GetMathValue(const ABF2FileHeader *pFH, float fA, float fB, float *pfRval)
#define ABF2_CREATORINFOLEN
#define ABF2_SCOPECOLORS_EX
double WINAPI ABF2H_GetFirstSampleInterval(const ABF2FileHeader *pFH)
BOOL WINAPI ABF2H_GetChannelOffset(const ABF2FileHeader *pFH, int nChannel, UINT *puChannelOffset)
#define ABF2_ARITHMETICUNITSLEN
void WINAPI ABF2H_Initialize(ABF2FileHeader *pFH)
#define ABF2_FILECOMMENTLEN
void WINAPI ABF2H_GetADCtoUUFactors(const ABF2FileHeader *pFH, int nChannel, float *pfADCToUUFactor, float *pfADCToUUShift)
#define ABF2_TAGCOMMENTLEN
#define ABF2_ARITHMETICOPLEN
#define ABF2_CURRENTVERSION
#define ABF2_USERLISTCOUNT
#define ABF2_STATS_REGIONS
char szFaceName[ABF2_FACESIZE]
DWORD dwCursorsVisibleState
ABFSignal TraceList[ABF2_ADCCOUNT]
DWORD rgbColorEx[ABF2_SCOPECOLORS_EX]
short nSizeofOldStructure
DWORD rgbColor[ABF2_SCOPECOLORS]
DWORD dwCursorsLockedState
char szName[ABF2_ADCNAMELEN+2]
char sComment[ABF2_TAGCOMMENTLEN]
ABFLONG lUncompressedSize
ABFLONG lSamplesPerSecond