LibTiePie  0.4.5
Library for interfacing TiePie engineering instruments
 All Files Functions Typedefs Macros Modules Pages
libtiepie.h
Go to the documentation of this file.
1 
6 #ifndef _LIBTIEPIE_H_
7 #define _LIBTIEPIE_H_
8 
9 // This section tries to define the C99 stdint types by detecting the used compiler/C version:
10 #if ( defined( __STDC_VERSION__ ) && __STDC_VERSION__ >= 199901L ) || ( defined( __GNUC__ ) && defined( __cplusplus ) )
11  #include <stdint.h>
12 #elif defined( INCLUDED_BY_MATLAB ) // MathWorks Matlab, see libtiepiematlab.h
13  #include <tmwtypes.h>
14 
15  // Define types:
16  typedef INT8_T int8_t;
17  typedef INT16_T int16_t;
18  typedef INT32_T int32_t;
19  typedef INT64_T int64_t;
20 
21  typedef UINT8_T uint8_t;
22  typedef UINT16_T uint16_t;
23  typedef UINT32_T uint32_t;
24  typedef UINT64_T uint64_t;
25 #elif defined( _CVI_ ) // National Instruments LabWindows/CVI
26  #ifdef _CVI_C99_EXTENSIONS_
27  #include <stdint.h>
28  #else
29  // Define types:
30  typedef char int8_t;
31  typedef short int16_t;
32  typedef int int32_t;
33  typedef __int64 int64_t;
34 
35  typedef unsigned char uint8_t;
36  typedef unsigned short uint16_t;
37  typedef unsigned int uint32_t;
38  typedef unsigned __int64 uint64_t;
39  #endif
40 
41  #ifdef _NI_linux_
42  #define __linux__
43  #endif
44 #elif defined( _MSC_VER )
45  #include "stdint.h" // Note: You can find a stdint.h for microsoft compilers at http://msinttypes.googlecode.com/svn/trunk/stdint.h .
46 #else
47  #error "C99 stdint types not defined!"
48 #endif
49 
50 // Check whether we are on a Windows NT based operating system:
51 #if defined( _WIN32 ) || defined( _WIN64 ) || defined( __WIN32__ ) || defined( __TOS_WIN__ ) || defined( __WINDOWS__ )
52  #ifndef HAVE_WINDOWS_H
53  #define HAVE_WINDOWS_H
54  #endif
55  #include <windows.h>
56 #endif
57 
58 #ifdef __cplusplus
59 extern "C"
60 {
61 #endif
62 
63 #define LIBTIEPIE_VERSION_MAJOR 0
64 #define LIBTIEPIE_VERSION_MINOR 4
65 #define LIBTIEPIE_VERSION_RELEASE 5
66 
67 #define LIBTIEPIE_REVISION 5524
68 
76 #define ARN_COUNT 3
77 
78 
83 #define ARB_DISABLED 0
84 #define ARB_NATIVEONLY 1
85 #define ARB_ALL 2
86 
91 #define AR_UNKNOWN 0
92 
93 #define AR_DISABLED ( 1 << ARB_DISABLED )
94 #define AR_NATIVEONLY ( 1 << ARB_NATIVEONLY )
95 #define AR_ALL ( 1 << ARB_ALL )
96 
97 
102 #define ARM_NONE 0
103 #define ARM_ALL ( ( 1 << ARN_COUNT ) - 1 )
104 #define ARM_ENABLED ( ARM_ALL & ~AR_DISABLED )
105 
116 #define BMN_COUNT 3
117 
118 
123 #define BMB_DISABLED 0
124 #define BMB_COUNT 1
125 #define BMB_GATED_PERIODS 2
126 
131 #define BM_UNKNOWN 0
132 
133 #define BM_DISABLED ( 1 << BMB_DISABLED )
134 #define BM_COUNT ( 1 << BMB_COUNT )
135 #define BM_GATED_PERIODS ( 1 << BMB_GATED_PERIODS )
136 
142 #define BMM_NONE 0x0000000000000000ULL
143 #define BMM_ALL ( ( 1ULL << BMN_COUNT ) - 1 )
144 
155 #define CKN_COUNT 5
156 
157 
162 #define CKB_DCV 0
163 #define CKB_ACV 1
164 #define CKB_DCA 2
165 #define CKB_ACA 3
166 #define CKB_OHM 4
167 
168 
172 #define CK_UNKNOWN 0
173 
174 #define CK_DCV ( 1 << CKB_DCV )
175 #define CK_ACV ( 1 << CKB_ACV )
176 #define CK_DCA ( 1 << CKB_DCA )
177 #define CK_ACA ( 1 << CKB_ACA )
178 #define CK_OHM ( 1 << CKB_OHM )
179 
180 
185 #define CKM_NONE 0
186 #define CKM_V ( CK_DCV | CK_ACV )
187 #define CKM_A ( CK_DCA | CK_ACA )
188 #define CKM_OHM ( CK_OHM )
189 
190 #define CKM_ASYMMETRICRANGE ( CKM_OHM )
191 #define CKM_SYMMETRICRANGE ( CKM_V | CKM_A )
192 
193 
203 #define CON_COUNT 2
204 
205 
210 #define COB_SAMPLE 0
211 #define COB_10MHZ 1
212 
213 
217 #define CO_NONE 0
218 #define CO_SAMPLE ( 1 << COB_SAMPLE )
219 #define CO_10MHZ ( 1 << COB_10MHZ )
220 
221 
230 #define CSN_COUNT 2
231 
232 
237 #define CSB_EXTERNAL 0
238 #define CSB_INTERNAL 1
239 
240 
244 #define CS_EXTERNAL ( 1 << CSB_EXTERNAL )
245 #define CS_INTERNAL ( 1 << CSB_INTERNAL )
246 
247 
256 #define FMN_COUNT 2
257 
258 
263 #define FMB_SIGNALFREQUENCY 0
264 #define FMB_SAMPLEFREQUENCY 1
265 
270 #define FM_UNKNOWN 0x00000000
271 
272 #define FM_SIGNALFREQUENCY ( 1 << FMB_SIGNALFREQUENCY )
273 #define FM_SAMPLEFREQUENCY ( 1 << FMB_SAMPLEFREQUENCY )
274 
280 #define FMM_NONE 0x00000000
281 #define FMM_ALL ( ( 1 << FMN_COUNT ) - 1 )
282 
293 #define MMN_COUNT 2
294 
295 
300 #define MMB_STREAM 0
301 #define MMB_BLOCK 1
302 
303 
309 #define MMM_NONE 0
310 #define MMM_ALL ( ( 1 << MMN_COUNT ) - 1 )
311 
316 #define MM_UNKNOWN 0
317 
318 #define MM_STREAM ( 1 << MMB_STREAM )
319 #define MM_BLOCK ( 1 << MMB_BLOCK )
320 
321 
330 #define STN_COUNT 6
331 
332 
337 #define STB_SINE 0
338 #define STB_TRIANGLE 1
339 #define STB_SQUARE 2
340 #define STB_DC 3
341 #define STB_NOISE 4
342 #define STB_ARBITRARY 5
343 
348 #define ST_UNKNOWN 0
349 
350 #define ST_SINE ( 1 << STB_SINE )
351 #define ST_TRIANGLE ( 1 << STB_TRIANGLE )
352 #define ST_SQUARE ( 1 << STB_SQUARE )
353 #define ST_DC ( 1 << STB_DC )
354 #define ST_NOISE ( 1 << STB_NOISE )
355 #define ST_ARBITRARY ( 1 << STB_ARBITRARY )
356 
362 #define STM_AMPLITUDE ( ST_SINE | ST_TRIANGLE | ST_SQUARE | ST_NOISE | ST_ARBITRARY )
363 #define STM_OFFSET ( ST_SINE | ST_TRIANGLE | ST_SQUARE | ST_DC | ST_NOISE | ST_ARBITRARY )
364 #define STM_FREQUENCY ( ST_SINE | ST_TRIANGLE | ST_SQUARE | ST_NOISE | ST_ARBITRARY )
365 #define STM_PHASE ( ST_SINE | ST_TRIANGLE | ST_SQUARE | ST_ARBITRARY )
366 #define STM_SYMMETRY ( ST_SINE | ST_TRIANGLE | ST_SQUARE )
367 #define STM_DATALENGTH ( ST_ARBITRARY )
368 #define STM_DATA ( ST_ARBITRARY )
369 
380 #define TCN_COUNT 2
381 
382 
387 #define TCB_GREATER 0
388 #define TCB_LESS 1
389 
394 #define TC_UNKNOWN 0
395 
396 #define TC_GREATER ( 1 << TCB_GREATER )
397 #define TC_LESS ( 1 << TCB_LESS )
398 
404 #define TCM_NONE 0
405 #define TCM_ALL ( ( 1 << TCN_COUNT ) - 1 )
406 
407 
417 #define TH_ALLPRESAMPLES 0xffffffffffffffffULL
418 
419 
426 #define TRIGGER_IO_ID( pgid , sgid , fid ) ( ( DN_MAIN << TIOID_SHIFT_DN ) | ( ( pgid ) << TIOID_SHIFT_PGID ) | ( ( sgid ) << TIOID_SHIFT_SGID ) | ( ( fid ) << TIOID_SHIFT_FID ) )
427 
428 #define COMBI_TRIGGER_IO_ID( dn , tiid ) ( ( ( dn ) << TIOID_SHIFT_DN ) | ( ( tiid ) & ( ( 1 << TIOID_SHIFT_DN ) - 1 ) ) )
429 
440 #define DN_MAIN 0
441 #define DN_SUB_FIRST 1
442 #define DN_SUB_SECOND 2
443 
444 
450 #define PGID_OSCILLOSCOPE 1
451 #define PGID_GENERATOR 2
452 #define PGID_EXTERNAL_DSUB 3
453 
454 
462 #define SGID_MAIN 0
463 #define SGID_CHANNEL1 1
464 #define SGID_CHANNEL2 2
465 
472 #define SGID_PIN1 1
473 #define SGID_PIN2 2
474 #define SGID_PIN3 3
475 
485 #define FID_SCP_TRIGGERED 0
486 
493 #define FID_GEN_START 0
494 #define FID_GEN_STOP 1
495 #define FID_GEN_NEW_PERIOD 2
496 
503 #define FID_EXT_TRIGGERED 0
504 
512 #define TIOID_SHIFT_PGID 20
513 #define TIOID_SHIFT_DN 24
514 #define TIOID_SHIFT_SGID 8
515 #define TIOID_SHIFT_FID 0
516 
523 #define TIID_INVALID 0
524 #define TIID_EXT1 TRIGGER_IO_ID( PGID_EXTERNAL_DSUB , SGID_PIN1 , FID_EXT_TRIGGERED )
525 #define TIID_EXT2 TRIGGER_IO_ID( PGID_EXTERNAL_DSUB , SGID_PIN2 , FID_EXT_TRIGGERED )
526 #define TIID_EXT3 TRIGGER_IO_ID( PGID_EXTERNAL_DSUB , SGID_PIN3 , FID_EXT_TRIGGERED )
527 #define TIID_GENERATOR_START TRIGGER_IO_ID( PGID_GENERATOR , SGID_MAIN , FID_GEN_START )
528 #define TIID_GENERATOR_STOP TRIGGER_IO_ID( PGID_GENERATOR , SGID_MAIN , FID_GEN_STOP )
529 #define TIID_GENERATOR_NEW_PERIOD TRIGGER_IO_ID( PGID_GENERATOR , SGID_MAIN , FID_GEN_NEW_PERIOD )
530 
537 #define TOID_INVALID 0
538 #define TOID_EXT1 TRIGGER_IO_ID( PGID_EXTERNAL_DSUB , SGID_PIN1 , FID_EXT_TRIGGERED )
539 #define TOID_EXT2 TRIGGER_IO_ID( PGID_EXTERNAL_DSUB , SGID_PIN2 , FID_EXT_TRIGGERED )
540 #define TOID_EXT3 TRIGGER_IO_ID( PGID_EXTERNAL_DSUB , SGID_PIN3 , FID_EXT_TRIGGERED )
541 
552 #define TKN_COUNT 9
553 
554 
559 #define TKB_RISINGEDGE 0
560 #define TKB_FALLINGEDGE 1
561 #define TKB_INWINDOW 2
562 #define TKB_OUTWINDOW 3
563 #define TKB_ANYEDGE 4
564 #define TKB_ENTERWINDOW 5
565 #define TKB_EXITWINDOW 6
566 #define TKB_PULSEWIDTHPOSITIVE 7
567 #define TKB_PULSEWIDTHNEGATIVE 8
568 
570 #define TKB_RISING TKB_RISINGEDGE
571 #define TKB_FALLING TKB_FALLINGEDGE
572 #define TKB_EDGE TKB_ANYEDGE
573 #define TKB_DROPINWINDOW TKB_ENTERWINDOW
574 #define TKB_DROPOUTWINDOW TKB_EXITWINDOW
575 
581 #define TK_UNKNOWN 0
582 #define TK_RISINGEDGE ( 1ULL << TKB_RISINGEDGE )
583 #define TK_FALLINGEDGE ( 1ULL << TKB_FALLINGEDGE )
584 #define TK_INWINDOW ( 1ULL << TKB_INWINDOW )
585 #define TK_OUTWINDOW ( 1ULL << TKB_OUTWINDOW )
586 #define TK_ANYEDGE ( 1ULL << TKB_ANYEDGE )
587 #define TK_ENTERWINDOW ( 1ULL << TKB_ENTERWINDOW )
588 #define TK_EXITWINDOW ( 1ULL << TKB_EXITWINDOW )
589 #define TK_PULSEWIDTHPOSITIVE ( 1ULL << TKB_PULSEWIDTHPOSITIVE )
590 #define TK_PULSEWIDTHNEGATIVE ( 1ULL << TKB_PULSEWIDTHNEGATIVE )
591 
592 #define TK_RISING TK_RISINGEDGE
594 #define TK_FALLING TK_FALLINGEDGE
595 #define TK_EDGE TK_ANYEDGE
596 #define TK_DROPINWINDOW TK_ENTERWINDOW
597 #define TK_DROPOUTWINDOW TK_EXITWINDOW
598 
605 #define TKM_NONE 0
606 #define TKM_EDGE ( TK_RISINGEDGE | TK_FALLINGEDGE | TK_ANYEDGE )
607 #define TKM_WINDOW ( TK_INWINDOW | TK_OUTWINDOW | TK_ENTERWINDOW | TK_EXITWINDOW )
608 #define TKM_PULSEWIDTH ( TK_PULSEWIDTHPOSITIVE | TK_PULSEWIDTHNEGATIVE )
609 #define TKM_ALL ( ( 1ULL << TKN_COUNT ) - 1 )
610 
611 
621 #define TO_INFINITY -1
622 
623 
632 #define TOEN_COUNT 3
633 
634 
639 #define TOEB_GENERATOR_START 0
640 #define TOEB_GENERATOR_STOP 1
641 #define TOEB_GENERATOR_NEWPERIOD 2
642 
647 #define TOE_UNKNOWN 0
648 #define TOE_GENERATOR_START ( 1 << TOEB_GENERATOR_START )
649 #define TOE_GENERATOR_STOP ( 1 << TOEB_GENERATOR_STOP )
650 #define TOE_GENERATOR_NEWPERIOD ( 1 << TOEB_GENERATOR_NEWPERIOD )
651 
657 #define TOEM_NONE 0
658 #define TOEM_GENERATOR ( TOE_GENERATOR_START | TOE_GENERATOR_STOP | TOE_GENERATOR_NEWPERIOD )
659 #define TOEM_ALL ( ( 1ULL << TOEN_COUNT ) - 1 )
660 
661 
671 #define TSN_CHANNEL_COUNT 32
672 
673 #define TS_NONE 0x0000000000000000ULL
674 
675 #define TS_CH1 0x0000000000000001ULL
676 #define TS_CH2 0x0000000000000002ULL
677 #define TS_CH3 0x0000000000000004ULL
678 #define TS_CH4 0x0000000000000008ULL
679 #define TS_CH5 0x0000000000000010ULL
680 #define TS_CH6 0x0000000000000020ULL
681 #define TS_CH7 0x0000000000000040ULL
682 #define TS_CH8 0x0000000000000080ULL
683 #define TS_CH9 0x0000000000000100ULL
684 #define TS_CH10 0x0000000000000200ULL
685 #define TS_CH11 0x0000000000000400ULL
686 #define TS_CH12 0x0000000000000800ULL
687 #define TS_CH13 0x0000000000001000ULL
688 #define TS_CH14 0x0000000000002000ULL
689 #define TS_CH15 0x0000000000004000ULL
690 #define TS_CH16 0x0000000000008000ULL
691 #define TS_CH17 0x0000000000010000ULL
692 #define TS_CH18 0x0000000000020000ULL
693 #define TS_CH19 0x0000000000040000ULL
694 #define TS_CH20 0x0000000000080000ULL
695 #define TS_CH21 0x0000000000100000ULL
696 #define TS_CH22 0x0000000000200000ULL
697 #define TS_CH23 0x0000000000400000ULL
698 #define TS_CH24 0x0000000000800000ULL
699 #define TS_CH25 0x0000000001000000ULL
700 #define TS_CH26 0x0000000002000000ULL
701 #define TS_CH27 0x0000000004000000ULL
702 #define TS_CH28 0x0000000008000000ULL
703 #define TS_CH29 0x0000000010000000ULL
704 #define TS_CH30 0x0000000020000000ULL
705 #define TS_CH31 0x0000000040000000ULL
706 #define TS_CH32 0x0000000080000000ULL
707 
708 #define TS_GENSTOP 0x0400000000000000ULL
709 #define TS_GENNEW 0x0800000000000000ULL
710 #define TS_GENSTART 0x1000000000000000ULL
711 #define TS_EXT2 0x2000000000000000ULL
712 #define TS_EXTANALOG 0x4000000000000000ULL
713 #define TS_EXT 0x8000000000000000ULL
714 
715 
720 #define TSM_NONE 0x0000000000000000ULL
721 #define TSM_ALL 0xFFFFFFFFFFFFFFFFULL
722 #define TSM_CHANNELS ( ( 1ULL << TSN_CHANNEL_COUNT ) - 1 )
723 #define TSM_NONCHANNELS ( TSM_ALL - TSM_CHANNELS )
724 #define TSM_GENALL ( TS_GENSTART | TS_GENNEW | TS_GENSTOP )
725 
726 
736 #define PID_NONE 0
737 #define PID_COMBI 2
738 
739 #define PID_HS4 15
740 #define PID_HS4D 20
741 #define PID_HS5 22
742 
743 
750 #ifdef INCLUDED_BY_MATLAB
751 typedef void* TpCallback_t;
752 #else
753 typedef void(*TpCallback_t)( void* pData );
754 #endif
755 
1074 #define TPDEVICEHANDLE_INVALID 0
1075 
1076 
1082 #define DEVICETYPE_OSCILLOSCOPE 0x00000001
1083 #define DEVICETYPE_GENERATOR 0x00000002
1084 #define DEVICETYPE_I2CHOST 0x00000004
1085 
1086 #define DEVICETYPE_COUNT 3
1087 
1088 
1094 #define IDKIND_DEVICEID 0x00000001
1095 #define IDKIND_INDEX 0x00000002
1096 #define IDKIND_SERIALNUMBER 0x00000004
1097 
1098 #define IDKIND_COUNT 3
1099 
1100 
1112 #define LIBTIEPIESTATUS_SUCCESS 0
1113 #define LIBTIEPIESTATUS_VALUE_CLIPPED 1
1114 #define LIBTIEPIESTATUS_VALUE_MODIFIED 2
1115 #define LIBTIEPIESTATUS_UNSUCCESSFUL -1
1116 #define LIBTIEPIESTATUS_NOT_SUPPORTED -2
1117 #define LIBTIEPIESTATUS_INVALID_HANDLE -3
1118 #define LIBTIEPIESTATUS_INVALID_VALUE -4
1119 #define LIBTIEPIESTATUS_INVALID_CHANNEL -5
1120 #define LIBTIEPIESTATUS_INVALID_TRIGGER_SOURCE -6
1121 #define LIBTIEPIESTATUS_INVALID_DEVICE_TYPE -7
1122 #define LIBTIEPIESTATUS_INVALID_DEVICE_INDEX -8
1123 #define LIBTIEPIESTATUS_INVALID_DEVICE_ID -9
1124 #define LIBTIEPIESTATUS_INVALID_DEVICE_SERIALNUMBER -10
1125 #define LIBTIEPIESTATUS_DEVICE_GONE -11
1126 #define LIBTIEPIESTATUS_INTERNAL_ADDRESS -12
1127 #define LIBTIEPIESTATUS_NOT_CONTROLLABLE -13
1128 #define LIBTIEPIESTATUS_BIT_ERROR -14
1129 #define LIBTIEPIESTATUS_NO_ACKNOWLEDGE -15
1130 #define LIBTIEPIESTATUS_INVALID_CONTAINED_DEVICE_SERIALNUMBER -16
1131 #define LIBTIEPIESTATUS_INVALID_INPUT -17
1132 #define LIBTIEPIESTATUS_INVALID_OUTPUT -18
1133 #define LIBTIEPIESTATUS_INVALID_DRIVER -19
1134 #define LIBTIEPIESTATUS_NOT_AVAILABLE -20
1135 #define LIBTIEPIESTATUS_INVALID_FIRMWARE -21
1136 #define LIBTIEPIESTATUS_INVALID_INDEX -22
1137 
1138 
1144 #define CONNECTORTYPE_UNKNOWN 0x00000000
1145 
1146 #define CONNECTORTYPE_BNC 0x00000001
1147 #define CONNECTORTYPE_BANANA 0x00000002
1148 #define CONNECTORTYPE_POWERPLUG 0x00000004
1149 
1150 #define CONNECTORTYPE_COUNT 3
1151 
1152 
1157 #define CONNECTORTYPE_MASK ( CONNECTORTYPE_BNC | CONNECTORTYPE_BANANA | CONNECTORTYPE_POWERPLUG )
1158 
1166 #define DATARAWTYPE_UNKNOWN 0x00000000
1167 
1168 #define DATARAWTYPE_INT8 0x00000001
1169 #define DATARAWTYPE_INT16 0x00000002
1170 #define DATARAWTYPE_INT32 0x00000004
1171 #define DATARAWTYPE_INT64 0x00000008
1172 
1173 #define DATARAWTYPE_UINT8 0x00000010
1174 #define DATARAWTYPE_UINT16 0x00000020
1175 #define DATARAWTYPE_UINT32 0x00000040
1176 #define DATARAWTYPE_UINT64 0x00000080
1177 
1178 #define DATARAWTYPE_FLOAT32 0x00000100
1179 #define DATARAWTYPE_FLOAT64 0x00000200
1180 
1181 #define DATARAWTYPE_COUNT 10
1182 
1183 
1188 #define DATARAWTYPE_MASK_INT ( DATARAWTYPE_INT8 | DATARAWTYPE_INT16 | DATARAWTYPE_INT32 | DATARAWTYPE_INT64 )
1189 #define DATARAWTYPE_MASK_UINT ( DATARAWTYPE_UINT8 | DATARAWTYPE_UINT16 | DATARAWTYPE_UINT32 | DATARAWTYPE_UINT64 )
1190 #define DATARAWTYPE_MASK_FLOAT ( DATARAWTYPE_FLOAT32 | DATARAWTYPE_FLOAT64 )
1191 #define DATARAWTYPE_MASK_FIXED ( DATARAWTYPE_MASK_INT | DATARAWTYPE_MASK_UINT )
1192 
1202 #define IDM_DEVICEID 0x80000000
1203 #define IDM_ALL 0xffffffff
1204 
1211 #define IDB_HS4 1
1212 #define IDB_HS4D 2
1213 #define IDB_HS5 5
1214 #define IDB_COMBI 8
1215 
1220 #define ID_HS4 ( IDM_DEVICEID | ( 1 << IDB_HS4 ) )
1221 #define ID_HS4D ( IDM_DEVICEID | ( 1 << IDB_HS4D ) )
1222 #define ID_HS5 ( IDM_DEVICEID | ( 1 << IDB_HS5 ) )
1223 #define ID_COMBI ( IDM_DEVICEID | ( 1 << IDB_COMBI ) )
1224 
1225 
1231 #define BOOL8_FALSE 0
1232 #define BOOL8_TRUE 1
1233 
1240 #define LIBTIEPIE_TRISTATE_UNDEFINED 0
1241 #define LIBTIEPIE_TRISTATE_FALSE 1
1242 #define LIBTIEPIE_TRISTATE_TRUE 2
1243 
1244 
1250 #define LIBTIEPIE_TRIGGERIO_INDEX_INVALID 0xffff
1251 
1258 #define LIBTIEPIE_STRING_LENGTH_NULL_TERMINATED 0xffffffff
1259 
1264 
1271 #define LIBTIEPIE_RANGEINDEX_AUTO 0xffffffff
1272 
1273 
1277 
1285 typedef int32_t LibTiePieStatus_t;
1286 typedef uint32_t TpDeviceHandle_t;
1287 
1317 typedef uint64_t TpVersion_t;
1318 
1338 typedef uint32_t TpDate_t;
1339 typedef uint8_t bool8_t;
1340 typedef uint8_t LibTiePieTriState_t;
1341 typedef void** LibTiePiePointerArray_t;
1342 
1349 #define TPVERSION_MAJOR( x ) ( x >> 48 )
1350 #define TPVERSION_MINOR( x ) ( ( x >> 32 ) & 0xffff )
1351 #define TPVERSION_RELEASE( x ) ( ( x >> 16 ) & 0xffff )
1352 #define TPVERSION_BUILD( x ) ( x & 0xffff )
1353 
1354 #define TPDATE_YEAR( x ) ( x >> 16 )
1355 #define TPDATE_MONTH( x ) ( ( x >> 8 ) & 0xff )
1356 #define TPDATE_DAY( x ) ( x & 0xff )
1357 
1358 
1362 #ifdef HAVE_WINDOWS_H
1363 
1369 #define WM_LIBTIEPIE ( WM_USER + 1337 )
1370 
1371 #define WM_LIBTIEPIE_LST_DEVICEADDED ( WM_LIBTIEPIE + 2 )
1372 #define WM_LIBTIEPIE_LST_DEVICEREMOVED ( WM_LIBTIEPIE + 3 )
1373 
1374 #define WM_LIBTIEPIE_DEV_REMOVED ( WM_LIBTIEPIE + 4 )
1375 
1376 #define WM_LIBTIEPIE_SCP_DATAREADY ( WM_LIBTIEPIE + 0 )
1377 #define WM_LIBTIEPIE_SCP_DATAOVERFLOW ( WM_LIBTIEPIE + 1 )
1378 #define WM_LIBTIEPIE_SCP_CONNECTIONTESTCOMPLETED ( WM_LIBTIEPIE + 7 )
1379 
1380 #define WM_LIBTIEPIE_GEN_BURSTCOMPLETED ( WM_LIBTIEPIE + 5 )
1381 #define WM_LIBTIEPIE_GEN_CONTROLLABLECHANGED ( WM_LIBTIEPIE + 6 )
1382 
1383 
1387 #endif
1388 
1403 // Workaround: Without this line Doxygen adds the documentation below to the group above.
1404 
1426 #ifdef LIBTIEPIE_DYNAMIC
1427 typedef TpVersion_t(*LibTiePieLibGetVersion_t)( void );
1428 #else
1429 TpVersion_t LibGetVersion( void );
1430 #endif
1431 
1458 #ifdef LIBTIEPIE_DYNAMIC
1459 typedef uint32_t(*LibTiePieLibGetConfig_t)( uint8_t* pBuffer , uint32_t dwBufferLength );
1460 #else
1461 uint32_t LibGetConfig( uint8_t* pBuffer , uint32_t dwBufferLength );
1462 #endif
1463 
1481 #ifdef LIBTIEPIE_DYNAMIC
1482 typedef LibTiePieStatus_t(*LibTiePieLibGetLastStatus_t)( void );
1483 #else
1484 LibTiePieStatus_t LibGetLastStatus( void );
1485 #endif
1486 
1504 #ifdef LIBTIEPIE_DYNAMIC
1505 typedef const char*(*LibTiePieLibGetLastStatusStr_t)( void );
1506 #else
1507 const char* LibGetLastStatusStr( void );
1508 #endif
1509 
1601 // Workaround: Without this line Doxygen adds the documentation below to the group above.
1602 
1623 #ifdef LIBTIEPIE_DYNAMIC
1624 typedef void(*LibTiePieLstUpdate_t)( uint32_t dwDeviceIdMask );
1625 #else
1626 void LstUpdate( uint32_t dwDeviceIdMask );
1627 #endif
1628 
1639 #ifdef LIBTIEPIE_DYNAMIC
1640 typedef uint32_t(*LibTiePieLstGetCount_t)( void );
1641 #else
1642 uint32_t LstGetCount( void );
1643 #endif
1644 
1679 #ifdef LIBTIEPIE_DYNAMIC
1680 typedef TpDeviceHandle_t(*LibTiePieLstOpenDevice_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwDeviceType );
1681 #else
1682 TpDeviceHandle_t LstOpenDevice( uint32_t dwIdKind , uint32_t dwId , uint32_t dwDeviceType );
1683 #endif
1684 
1717 #ifdef LIBTIEPIE_DYNAMIC
1718 typedef TpDeviceHandle_t(*LibTiePieLstOpenOscilloscope_t)( uint32_t dwIdKind , uint32_t dwId );
1719 #else
1720 TpDeviceHandle_t LstOpenOscilloscope( uint32_t dwIdKind , uint32_t dwId );
1721 #endif
1722 
1755 #ifdef LIBTIEPIE_DYNAMIC
1756 typedef TpDeviceHandle_t(*LibTiePieLstOpenGenerator_t)( uint32_t dwIdKind , uint32_t dwId );
1757 #else
1758 TpDeviceHandle_t LstOpenGenerator( uint32_t dwIdKind , uint32_t dwId );
1759 #endif
1760 
1793 #ifdef LIBTIEPIE_DYNAMIC
1794 typedef TpDeviceHandle_t(*LibTiePieLstOpenI2CHost_t)( uint32_t dwIdKind , uint32_t dwId );
1795 #else
1796 TpDeviceHandle_t LstOpenI2CHost( uint32_t dwIdKind , uint32_t dwId );
1797 #endif
1798 
1818 #ifdef LIBTIEPIE_DYNAMIC
1819 typedef uint32_t(*LibTiePieLstCreateCombinedDevice_t)( TpDeviceHandle_t* pDeviceHandles , uint32_t dwCount );
1820 #else
1821 uint32_t LstCreateCombinedDevice( TpDeviceHandle_t* pDeviceHandles , uint32_t dwCount );
1822 #endif
1823 
1844 #ifdef LIBTIEPIE_DYNAMIC
1845 typedef TpDeviceHandle_t(*LibTiePieLstCreateAndOpenCombinedDevice_t)( TpDeviceHandle_t* pDeviceHandles , uint32_t dwCount );
1846 #else
1847 TpDeviceHandle_t LstCreateAndOpenCombinedDevice( TpDeviceHandle_t* pDeviceHandles , uint32_t dwCount );
1848 #endif
1849 
1863 #ifdef LIBTIEPIE_DYNAMIC
1864 typedef void(*LibTiePieLstRemoveDevice_t)( uint32_t dwSerialNumber );
1865 #else
1866 void LstRemoveDevice( uint32_t dwSerialNumber );
1867 #endif
1868 
1895 // Workaround: Without this line Doxygen adds the documentation below to the group above.
1896 
1915 #ifdef LIBTIEPIE_DYNAMIC
1916 typedef bool8_t(*LibTiePieLstGetDeviceCanOpen_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwDeviceType );
1917 #else
1918 bool8_t LstGetDeviceCanOpen( uint32_t dwIdKind , uint32_t dwId , uint32_t dwDeviceType );
1919 #endif
1920 
1938 #ifdef LIBTIEPIE_DYNAMIC
1939 typedef uint32_t(*LibTiePieLstGetDeviceProductId_t)( uint32_t dwIdKind , uint32_t dwId );
1940 #else
1941 uint32_t LstGetDeviceProductId( uint32_t dwIdKind , uint32_t dwId );
1942 #endif
1943 
1945 
1963 #ifdef LIBTIEPIE_DYNAMIC
1964 typedef uint32_t(*LibTiePieLstGetDeviceVendorId_t)( uint32_t dwIdKind , uint32_t dwId );
1965 #else
1966 uint32_t LstGetDeviceVendorId( uint32_t dwIdKind , uint32_t dwId );
1967 #endif
1968 
1970 
2006 #ifdef LIBTIEPIE_DYNAMIC
2007 typedef uint32_t(*LibTiePieLstGetDeviceName_t)( uint32_t dwIdKind , uint32_t dwId , char* pBuffer , uint32_t dwBufferLength );
2008 #else
2009 uint32_t LstGetDeviceName( uint32_t dwIdKind , uint32_t dwId , char* pBuffer , uint32_t dwBufferLength );
2010 #endif
2011 
2047 #ifdef LIBTIEPIE_DYNAMIC
2048 typedef uint32_t(*LibTiePieLstGetDeviceNameShort_t)( uint32_t dwIdKind , uint32_t dwId , char* pBuffer , uint32_t dwBufferLength );
2049 #else
2050 uint32_t LstGetDeviceNameShort( uint32_t dwIdKind , uint32_t dwId , char* pBuffer , uint32_t dwBufferLength );
2051 #endif
2052 
2088 #ifdef LIBTIEPIE_DYNAMIC
2089 typedef uint32_t(*LibTiePieLstDevGetNameShortest_t)( uint32_t dwIdKind , uint32_t dwId , char* pBuffer , uint32_t dwBufferLength );
2090 #else
2091 uint32_t LstDevGetNameShortest( uint32_t dwIdKind , uint32_t dwId , char* pBuffer , uint32_t dwBufferLength );
2092 #endif
2093 
2111 #ifdef LIBTIEPIE_DYNAMIC
2112 typedef TpVersion_t(*LibTiePieLstDevGetDriverVersion_t)( uint32_t dwIdKind , uint32_t dwId );
2113 #else
2114 TpVersion_t LstDevGetDriverVersion( uint32_t dwIdKind , uint32_t dwId );
2115 #endif
2116 
2134 #ifdef LIBTIEPIE_DYNAMIC
2135 typedef TpVersion_t(*LibTiePieLstDevGetRecommendedDriverVersion_t)( uint32_t dwIdKind , uint32_t dwId );
2136 #else
2137 TpVersion_t LstDevGetRecommendedDriverVersion( uint32_t dwIdKind , uint32_t dwId );
2138 #endif
2139 
2157 #ifdef LIBTIEPIE_DYNAMIC
2158 typedef TpVersion_t(*LibTiePieLstDevGetFirmwareVersion_t)( uint32_t dwIdKind , uint32_t dwId );
2159 #else
2160 TpVersion_t LstDevGetFirmwareVersion( uint32_t dwIdKind , uint32_t dwId );
2161 #endif
2162 
2164 
2182 #ifdef LIBTIEPIE_DYNAMIC
2183 typedef TpVersion_t(*LibTiePieLstDevGetRecommendedFirmwareVersion_t)( uint32_t dwIdKind , uint32_t dwId );
2184 #else
2185 TpVersion_t LstDevGetRecommendedFirmwareVersion( uint32_t dwIdKind , uint32_t dwId );
2186 #endif
2187 
2189 
2216 #ifdef LIBTIEPIE_DYNAMIC
2217 typedef TpDate_t(*LibTiePieLstDevGetCalibrationDate_t)( uint32_t dwIdKind , uint32_t dwId );
2218 #else
2219 TpDate_t LstDevGetCalibrationDate( uint32_t dwIdKind , uint32_t dwId );
2220 #endif
2221 
2239 #ifdef LIBTIEPIE_DYNAMIC
2240 typedef uint32_t(*LibTiePieLstGetDeviceSerialNumber_t)( uint32_t dwIdKind , uint32_t dwId );
2241 #else
2242 uint32_t LstGetDeviceSerialNumber( uint32_t dwIdKind , uint32_t dwId );
2243 #endif
2244 
2278 #ifdef LIBTIEPIE_DYNAMIC
2279 typedef uint32_t(*LibTiePieLstGetDeviceTypes_t)( uint32_t dwIdKind , uint32_t dwId );
2280 #else
2281 uint32_t LstGetDeviceTypes( uint32_t dwIdKind , uint32_t dwId );
2282 #endif
2283 
2309 // Workaround: Without this line Doxygen adds the documentation below to the group above.
2310 
2345 #ifdef LIBTIEPIE_DYNAMIC
2346 typedef uint32_t(*LibTiePieLstDevGetContainedSerialNumbers_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t* pBuffer , uint32_t dwBufferLength );
2347 #else
2348 uint32_t LstDevGetContainedSerialNumbers( uint32_t dwIdKind , uint32_t dwId , uint32_t* pBuffer , uint32_t dwBufferLength );
2349 #endif
2350 
2370 #ifdef LIBTIEPIE_DYNAMIC
2371 typedef uint32_t(*LibTiePieLstCbDevGetProductId_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2372 #else
2373 uint32_t LstCbDevGetProductId( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2374 #endif
2375 
2377 
2397 #ifdef LIBTIEPIE_DYNAMIC
2398 typedef uint32_t(*LibTiePieLstCbDevGetVendorId_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2399 #else
2400 uint32_t LstCbDevGetVendorId( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2401 #endif
2402 
2404 
2428 #ifdef LIBTIEPIE_DYNAMIC
2429 typedef uint32_t(*LibTiePieLstCbDevGetName_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber , char* pBuffer , uint32_t dwBufferLength );
2430 #else
2431 uint32_t LstCbDevGetName( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber , char* pBuffer , uint32_t dwBufferLength );
2432 #endif
2433 
2457 #ifdef LIBTIEPIE_DYNAMIC
2458 typedef uint32_t(*LibTiePieLstCbDevGetNameShort_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber , char* pBuffer , uint32_t dwBufferLength );
2459 #else
2460 uint32_t LstCbDevGetNameShort( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber , char* pBuffer , uint32_t dwBufferLength );
2461 #endif
2462 
2486 #ifdef LIBTIEPIE_DYNAMIC
2487 typedef uint32_t(*LibTiePieLstCbDevGetNameShortest_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber , char* pBuffer , uint32_t dwBufferLength );
2488 #else
2489 uint32_t LstCbDevGetNameShortest( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber , char* pBuffer , uint32_t dwBufferLength );
2490 #endif
2491 
2511 #ifdef LIBTIEPIE_DYNAMIC
2512 typedef TpVersion_t(*LibTiePieLstCbDevGetDriverVersion_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2513 #else
2514 TpVersion_t LstCbDevGetDriverVersion( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2515 #endif
2516 
2536 #ifdef LIBTIEPIE_DYNAMIC
2537 typedef TpVersion_t(*LibTiePieLstCbDevGetFirmwareVersion_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2538 #else
2539 TpVersion_t LstCbDevGetFirmwareVersion( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2540 #endif
2541 
2561 #ifdef LIBTIEPIE_DYNAMIC
2562 typedef TpDate_t(*LibTiePieLstCbDevGetCalibrationDate_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2563 #else
2564 TpDate_t LstCbDevGetCalibrationDate( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2565 #endif
2566 
2586 #ifdef LIBTIEPIE_DYNAMIC
2587 typedef uint16_t(*LibTiePieLstCbScpGetChannelCount_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2588 #else
2589 uint16_t LstCbScpGetChannelCount( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2590 #endif
2591 
2605 // Workaround: Without this line Doxygen adds the documentation below to the group above.
2606 
2618 #ifdef LIBTIEPIE_DYNAMIC
2619 typedef void(*LibTiePieLstSetCallbackDeviceAdded_t)( TpCallback_t pCallback , void* pData );
2620 #else
2621 void LstSetCallbackDeviceAdded( TpCallback_t pCallback , void* pData );
2622 #endif
2623 
2635 #ifdef LIBTIEPIE_DYNAMIC
2636 typedef void(*LibTiePieLstSetCallbackDeviceRemoved_t)( TpCallback_t pCallback , void* pData );
2637 #else
2638 void LstSetCallbackDeviceRemoved( TpCallback_t pCallback , void* pData );
2639 #endif
2640 
2641 #ifdef __linux__
2642 
2654 #ifdef LIBTIEPIE_DYNAMIC
2655 typedef void(*LibTiePieLstSetEventDeviceAdded_t)( int fdEvent );
2656 #else
2657 void LstSetEventDeviceAdded( int fdEvent );
2658 #endif
2659 
2671 #ifdef LIBTIEPIE_DYNAMIC
2672 typedef void(*LibTiePieLstSetEventDeviceRemoved_t)( int fdEvent );
2673 #else
2674 void LstSetEventDeviceRemoved( int fdEvent );
2675 #endif
2676 
2677 #endif
2678 
2679 #ifdef HAVE_WINDOWS_H
2680 
2692 #ifdef LIBTIEPIE_DYNAMIC
2693 typedef void(*LibTiePieLstSetEventDeviceAdded_t)( HANDLE hEvent );
2694 #else
2695 void LstSetEventDeviceAdded( HANDLE hEvent );
2696 #endif
2697 
2709 #ifdef LIBTIEPIE_DYNAMIC
2710 typedef void(*LibTiePieLstSetEventDeviceRemoved_t)( HANDLE hEvent );
2711 #else
2712 void LstSetEventDeviceRemoved( HANDLE hEvent );
2713 #endif
2714 
2730 #ifdef LIBTIEPIE_DYNAMIC
2731 typedef void(*LibTiePieLstSetMessageDeviceAdded_t)( HWND hWnd );
2732 #else
2733 void LstSetMessageDeviceAdded( HWND hWnd );
2734 #endif
2735 
2751 #ifdef LIBTIEPIE_DYNAMIC
2752 typedef void(*LibTiePieLstSetMessageDeviceRemoved_t)( HWND hWnd );
2753 #else
2754 void LstSetMessageDeviceRemoved( HWND hWnd );
2755 #endif
2756 
2757 #endif
2758 
2779 // Workaround: Without this line Doxygen adds the documentation below to the group above.
2780 
2798 #ifdef LIBTIEPIE_DYNAMIC
2799 typedef void(*LibTiePieDevClose_t)( TpDeviceHandle_t hDevice );
2800 #else
2801 void DevClose( TpDeviceHandle_t hDevice );
2802 #endif
2803 
2810 // Workaround: Without this line Doxygen adds the documentation below to the group above.
2811 
2824 #ifdef LIBTIEPIE_DYNAMIC
2825 typedef bool8_t(*LibTiePieDevIsRemoved_t)( TpDeviceHandle_t hDevice );
2826 #else
2827 bool8_t DevIsRemoved( TpDeviceHandle_t hDevice );
2828 #endif
2829 
2837 // Workaround: Without this line Doxygen adds the documentation below to the group above.
2838 
2864 #ifdef LIBTIEPIE_DYNAMIC
2865 typedef TpVersion_t(*LibTiePieDevGetDriverVersion_t)( TpDeviceHandle_t hDevice );
2866 #else
2867 TpVersion_t DevGetDriverVersion( TpDeviceHandle_t hDevice );
2868 #endif
2869 
2895 #ifdef LIBTIEPIE_DYNAMIC
2896 typedef TpVersion_t(*LibTiePieDevGetFirmwareVersion_t)( TpDeviceHandle_t hDevice );
2897 #else
2898 TpVersion_t DevGetFirmwareVersion( TpDeviceHandle_t hDevice );
2899 #endif
2900 
2925 #ifdef LIBTIEPIE_DYNAMIC
2926 typedef TpDate_t(*LibTiePieDevGetCalibrationDate_t)( TpDeviceHandle_t hDevice );
2927 #else
2928 TpDate_t DevGetCalibrationDate( TpDeviceHandle_t hDevice );
2929 #endif
2930 
2944 #ifdef LIBTIEPIE_DYNAMIC
2945 typedef uint32_t(*LibTiePieDevGetSerialNumber_t)( TpDeviceHandle_t hDevice );
2946 #else
2947 uint32_t DevGetSerialNumber( TpDeviceHandle_t hDevice );
2948 #endif
2949 
2963 #ifdef LIBTIEPIE_DYNAMIC
2964 typedef uint32_t(*LibTiePieDevGetProductId_t)( TpDeviceHandle_t hDevice );
2965 #else
2966 uint32_t DevGetProductId( TpDeviceHandle_t hDevice );
2967 #endif
2968 
2970 
2985 #ifdef LIBTIEPIE_DYNAMIC
2986 typedef uint32_t(*LibTiePieDevGetVendorId_t)( TpDeviceHandle_t hDevice );
2987 #else
2988 uint32_t DevGetVendorId( TpDeviceHandle_t hDevice );
2989 #endif
2990 
2992 
3007 #ifdef LIBTIEPIE_DYNAMIC
3008 typedef uint32_t(*LibTiePieDevGetType_t)( TpDeviceHandle_t hDevice );
3009 #else
3010 uint32_t DevGetType( TpDeviceHandle_t hDevice );
3011 #endif
3012 
3045 #ifdef LIBTIEPIE_DYNAMIC
3046 typedef uint32_t(*LibTiePieDevGetName_t)( TpDeviceHandle_t hDevice , char* pBuffer , uint32_t dwBufferLength );
3047 #else
3048 uint32_t DevGetName( TpDeviceHandle_t hDevice , char* pBuffer , uint32_t dwBufferLength );
3049 #endif
3050 
3083 #ifdef LIBTIEPIE_DYNAMIC
3084 typedef uint32_t(*LibTiePieDevGetNameShort_t)( TpDeviceHandle_t hDevice , char* pBuffer , uint32_t dwBufferLength );
3085 #else
3086 uint32_t DevGetNameShort( TpDeviceHandle_t hDevice , char* pBuffer , uint32_t dwBufferLength );
3087 #endif
3088 
3121 #ifdef LIBTIEPIE_DYNAMIC
3122 typedef uint32_t(*LibTiePieDevGetNameShortest_t)( TpDeviceHandle_t hDevice , char* pBuffer , uint32_t dwBufferLength );
3123 #else
3124 uint32_t DevGetNameShortest( TpDeviceHandle_t hDevice , char* pBuffer , uint32_t dwBufferLength );
3125 #endif
3126 
3144 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3145 
3160 #ifdef LIBTIEPIE_DYNAMIC
3161 typedef void(*LibTiePieDevSetCallbackRemoved_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
3162 #else
3163 void DevSetCallbackRemoved( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
3164 #endif
3165 
3166 #ifdef __linux__
3167 
3182 #ifdef LIBTIEPIE_DYNAMIC
3183 typedef void(*LibTiePieDevSetEventRemoved_t)( TpDeviceHandle_t hDevice , int fdEvent );
3184 #else
3185 void DevSetEventRemoved( TpDeviceHandle_t hDevice , int fdEvent );
3186 #endif
3187 
3188 #endif
3189 
3190 #ifdef HAVE_WINDOWS_H
3191 
3206 #ifdef LIBTIEPIE_DYNAMIC
3207 typedef void(*LibTiePieDevSetEventRemoved_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
3208 #else
3209 void DevSetEventRemoved( TpDeviceHandle_t hDevice , HANDLE hEvent );
3210 #endif
3211 
3228 #ifdef LIBTIEPIE_DYNAMIC
3229 typedef void(*LibTiePieDevSetMessageRemoved_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
3230 #else
3231 void DevSetMessageRemoved( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
3232 #endif
3233 
3234 #endif
3235 
3251 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3252 
3267 #ifdef LIBTIEPIE_DYNAMIC
3268 typedef uint16_t(*LibTiePieDevTrGetInputCount_t)( TpDeviceHandle_t hDevice );
3269 #else
3270 uint16_t DevTrGetInputCount( TpDeviceHandle_t hDevice );
3271 #endif
3272 
3292 #ifdef LIBTIEPIE_DYNAMIC
3293 typedef uint16_t(*LibTiePieDevTrGetInputIndexById_t)( TpDeviceHandle_t hDevice , uint32_t dwId );
3294 #else
3295 uint16_t DevTrGetInputIndexById( TpDeviceHandle_t hDevice , uint32_t dwId );
3296 #endif
3297 
3306 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3307 
3326 #ifdef LIBTIEPIE_DYNAMIC
3327 typedef bool8_t(*LibTiePieDevTrInGetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wInput );
3328 #else
3329 bool8_t DevTrInGetEnabled( TpDeviceHandle_t hDevice , uint16_t wInput );
3330 #endif
3331 
3351 #ifdef LIBTIEPIE_DYNAMIC
3352 typedef bool8_t(*LibTiePieDevTrInSetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wInput , bool8_t bEnable );
3353 #else
3354 bool8_t DevTrInSetEnabled( TpDeviceHandle_t hDevice , uint16_t wInput , bool8_t bEnable );
3355 #endif
3356 
3369 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3370 
3390 #ifdef LIBTIEPIE_DYNAMIC
3391 typedef uint64_t(*LibTiePieDevTrInGetKinds_t)( TpDeviceHandle_t hDevice , uint16_t wInput );
3392 #else
3393 uint64_t DevTrInGetKinds( TpDeviceHandle_t hDevice , uint16_t wInput );
3394 #endif
3395 
3397 
3419 #ifdef LIBTIEPIE_DYNAMIC
3420 typedef uint64_t(*LibTiePieScpTrInGetKindsEx_t)( TpDeviceHandle_t hDevice , uint16_t wInput , uint32_t dwMeasureMode );
3421 #else
3422 uint64_t ScpTrInGetKindsEx( TpDeviceHandle_t hDevice , uint16_t wInput , uint32_t dwMeasureMode );
3423 #endif
3424 
3426 
3446 #ifdef LIBTIEPIE_DYNAMIC
3447 typedef uint64_t(*LibTiePieDevTrInGetKind_t)( TpDeviceHandle_t hDevice , uint16_t wInput );
3448 #else
3449 uint64_t DevTrInGetKind( TpDeviceHandle_t hDevice , uint16_t wInput );
3450 #endif
3451 
3473 #ifdef LIBTIEPIE_DYNAMIC
3474 typedef uint64_t(*LibTiePieDevTrInSetKind_t)( TpDeviceHandle_t hDevice , uint16_t wInput , uint64_t qwKind );
3475 #else
3476 uint64_t DevTrInSetKind( TpDeviceHandle_t hDevice , uint16_t wInput , uint64_t qwKind );
3477 #endif
3478 
3491 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3492 
3513 #ifdef LIBTIEPIE_DYNAMIC
3514 typedef bool8_t(*LibTiePieDevTrInIsAvailable_t)( TpDeviceHandle_t hDevice , uint16_t wInput );
3515 #else
3516 bool8_t DevTrInIsAvailable( TpDeviceHandle_t hDevice , uint16_t wInput );
3517 #endif
3518 
3520 
3530 #ifdef LIBTIEPIE_DYNAMIC
3531 typedef bool8_t(*LibTiePieScpTrInIsAvailableEx_t)( TpDeviceHandle_t hDevice , uint16_t wInput , uint32_t dwMeasureMode );
3532 #else
3533 bool8_t ScpTrInIsAvailableEx( TpDeviceHandle_t hDevice , uint16_t wInput , uint32_t dwMeasureMode );
3534 #endif
3535 
3537 
3555 #ifdef LIBTIEPIE_DYNAMIC
3556 typedef uint32_t(*LibTiePieDevTrInGetId_t)( TpDeviceHandle_t hDevice , uint16_t wInput );
3557 #else
3558 uint32_t DevTrInGetId( TpDeviceHandle_t hDevice , uint16_t wInput );
3559 #endif
3560 
3579 #ifdef LIBTIEPIE_DYNAMIC
3580 typedef uint32_t(*LibTiePieDevTrInGetName_t)( TpDeviceHandle_t hDevice , uint16_t wInput , char* pBuffer , uint32_t dwBufferLength );
3581 #else
3582 uint32_t DevTrInGetName( TpDeviceHandle_t hDevice , uint16_t wInput , char* pBuffer , uint32_t dwBufferLength );
3583 #endif
3584 
3597 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3598 
3613 #ifdef LIBTIEPIE_DYNAMIC
3614 typedef uint16_t(*LibTiePieDevTrGetOutputCount_t)( TpDeviceHandle_t hDevice );
3615 #else
3616 uint16_t DevTrGetOutputCount( TpDeviceHandle_t hDevice );
3617 #endif
3618 
3636 #ifdef LIBTIEPIE_DYNAMIC
3637 typedef uint16_t(*LibTiePieDevTrGetOutputIndexById_t)( TpDeviceHandle_t hDevice , uint32_t dwId );
3638 #else
3639 uint16_t DevTrGetOutputIndexById( TpDeviceHandle_t hDevice , uint32_t dwId );
3640 #endif
3641 
3650 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3651 
3669 #ifdef LIBTIEPIE_DYNAMIC
3670 typedef bool8_t(*LibTiePieDevTrOutGetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wOutput );
3671 #else
3672 bool8_t DevTrOutGetEnabled( TpDeviceHandle_t hDevice , uint16_t wOutput );
3673 #endif
3674 
3693 #ifdef LIBTIEPIE_DYNAMIC
3694 typedef bool8_t(*LibTiePieDevTrOutSetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wOutput , bool8_t bEnable );
3695 #else
3696 bool8_t DevTrOutSetEnabled( TpDeviceHandle_t hDevice , uint16_t wOutput , bool8_t bEnable );
3697 #endif
3698 
3715 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3716 
3735 #ifdef LIBTIEPIE_DYNAMIC
3736 typedef uint64_t(*LibTiePieDevTrOutGetEvents_t)( TpDeviceHandle_t hDevice , uint16_t wOutput );
3737 #else
3738 uint64_t DevTrOutGetEvents( TpDeviceHandle_t hDevice , uint16_t wOutput );
3739 #endif
3740 
3759 #ifdef LIBTIEPIE_DYNAMIC
3760 typedef uint64_t(*LibTiePieDevTrOutGetEvent_t)( TpDeviceHandle_t hDevice , uint16_t wOutput );
3761 #else
3762 uint64_t DevTrOutGetEvent( TpDeviceHandle_t hDevice , uint16_t wOutput );
3763 #endif
3764 
3785 #ifdef LIBTIEPIE_DYNAMIC
3786 typedef uint64_t(*LibTiePieDevTrOutSetEvent_t)( TpDeviceHandle_t hDevice , uint16_t wOutput , uint64_t qwEvent );
3787 #else
3788 uint64_t DevTrOutSetEvent( TpDeviceHandle_t hDevice , uint16_t wOutput , uint64_t qwEvent );
3789 #endif
3790 
3802 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3803 
3821 #ifdef LIBTIEPIE_DYNAMIC
3822 typedef uint32_t(*LibTiePieDevTrOutGetId_t)( TpDeviceHandle_t hDevice , uint16_t wOutput );
3823 #else
3824 uint32_t DevTrOutGetId( TpDeviceHandle_t hDevice , uint16_t wOutput );
3825 #endif
3826 
3845 #ifdef LIBTIEPIE_DYNAMIC
3846 typedef uint32_t(*LibTiePieDevTrOutGetName_t)( TpDeviceHandle_t hDevice , uint16_t wOutput , char* pBuffer , uint32_t dwBufferLength );
3847 #else
3848 uint32_t DevTrOutGetName( TpDeviceHandle_t hDevice , uint16_t wOutput , char* pBuffer , uint32_t dwBufferLength );
3849 #endif
3850 
3875 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3876 
3890 #ifdef LIBTIEPIE_DYNAMIC
3891 typedef uint16_t(*LibTiePieScpGetChannelCount_t)( TpDeviceHandle_t hDevice );
3892 #else
3893 uint16_t ScpGetChannelCount( TpDeviceHandle_t hDevice );
3894 #endif
3895 
3897 
3912 #ifdef LIBTIEPIE_DYNAMIC
3913 typedef uint32_t(*LibTiePieScpGetSharedChannelGroupCount_t)( TpDeviceHandle_t hDevice );
3914 #else
3915 uint32_t ScpGetSharedChannelGroupCount( TpDeviceHandle_t hDevice );
3916 #endif
3917 
3936 #ifdef LIBTIEPIE_DYNAMIC
3937 typedef uint32_t(*LibTiePieScpGetSharedChannelGroup_t)( TpDeviceHandle_t hDevice , uint32_t dwGroupIndex , uint16_t* pChannelNumbers , uint32_t dwLength );
3938 #else
3939 uint32_t ScpGetSharedChannelGroup( TpDeviceHandle_t hDevice , uint32_t dwGroupIndex , uint16_t* pChannelNumbers , uint32_t dwLength );
3940 #endif
3941 
3943 
3962 #ifdef LIBTIEPIE_DYNAMIC
3963 typedef bool8_t(*LibTiePieScpChIsAvailable_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
3964 #else
3965 bool8_t ScpChIsAvailable( TpDeviceHandle_t hDevice , uint16_t wCh );
3966 #endif
3967 
3969 
3983 #ifdef LIBTIEPIE_DYNAMIC
3984 typedef bool8_t(*LibTiePieScpChIsAvailableEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode , double dSampleFrequency , uint8_t byResolution , bool8_t* pChannelEnabled , uint16_t wChannelCount );
3985 #else
3986 bool8_t ScpChIsAvailableEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode , double dSampleFrequency , uint8_t byResolution , bool8_t* pChannelEnabled , uint16_t wChannelCount );
3987 #endif
3988 
3990 
3997 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3998 
4015 #ifdef LIBTIEPIE_DYNAMIC
4016 typedef uint32_t(*LibTiePieScpChGetConnectorType_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4017 #else
4018 uint32_t ScpChGetConnectorType( TpDeviceHandle_t hDevice , uint16_t wCh );
4019 #endif
4020 
4036 #ifdef LIBTIEPIE_DYNAMIC
4037 typedef bool8_t(*LibTiePieScpChIsDifferential_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4038 #else
4039 bool8_t ScpChIsDifferential( TpDeviceHandle_t hDevice , uint16_t wCh );
4040 #endif
4041 
4058 #ifdef LIBTIEPIE_DYNAMIC
4059 typedef double(*LibTiePieScpChGetImpedance_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4060 #else
4061 double ScpChGetImpedance( TpDeviceHandle_t hDevice , uint16_t wCh );
4062 #endif
4063 
4073 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4074 
4092 #ifdef LIBTIEPIE_DYNAMIC
4093 typedef uint64_t(*LibTiePieScpChGetCouplings_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4094 #else
4095 uint64_t ScpChGetCouplings( TpDeviceHandle_t hDevice , uint16_t wCh );
4096 #endif
4097 
4115 #ifdef LIBTIEPIE_DYNAMIC
4116 typedef uint64_t(*LibTiePieScpChGetCoupling_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4117 #else
4118 uint64_t ScpChGetCoupling( TpDeviceHandle_t hDevice , uint16_t wCh );
4119 #endif
4120 
4143 #ifdef LIBTIEPIE_DYNAMIC
4144 typedef uint64_t(*LibTiePieScpChSetCoupling_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwCoupling );
4145 #else
4146 uint64_t ScpChSetCoupling( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwCoupling );
4147 #endif
4148 
4160 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4161 
4178 #ifdef LIBTIEPIE_DYNAMIC
4179 typedef bool8_t(*LibTiePieScpChGetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4180 #else
4181 bool8_t ScpChGetEnabled( TpDeviceHandle_t hDevice , uint16_t wCh );
4182 #endif
4183 
4202 #ifdef LIBTIEPIE_DYNAMIC
4203 typedef bool8_t(*LibTiePieScpChSetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wCh , bool8_t bEnable );
4204 #else
4205 bool8_t ScpChSetEnabled( TpDeviceHandle_t hDevice , uint16_t wCh , bool8_t bEnable );
4206 #endif
4207 
4226 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4227 
4247 #ifdef LIBTIEPIE_DYNAMIC
4248 typedef double(*LibTiePieScpChGetProbeGain_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4249 #else
4250 double ScpChGetProbeGain( TpDeviceHandle_t hDevice , uint16_t wCh );
4251 #endif
4252 
4275 #ifdef LIBTIEPIE_DYNAMIC
4276 typedef double(*LibTiePieScpChSetProbeGain_t)( TpDeviceHandle_t hDevice , uint16_t wCh , double dProbeGain );
4277 #else
4278 double ScpChSetProbeGain( TpDeviceHandle_t hDevice , uint16_t wCh , double dProbeGain );
4279 #endif
4280 
4302 #ifdef LIBTIEPIE_DYNAMIC
4303 typedef double(*LibTiePieScpChGetProbeOffset_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4304 #else
4305 double ScpChGetProbeOffset( TpDeviceHandle_t hDevice , uint16_t wCh );
4306 #endif
4307 
4331 #ifdef LIBTIEPIE_DYNAMIC
4332 typedef double(*LibTiePieScpChSetProbeOffset_t)( TpDeviceHandle_t hDevice , uint16_t wCh , double dProbeOffset );
4333 #else
4334 double ScpChSetProbeOffset( TpDeviceHandle_t hDevice , uint16_t wCh , double dProbeOffset );
4335 #endif
4336 
4355 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4356 
4373 #ifdef LIBTIEPIE_DYNAMIC
4374 typedef bool8_t(*LibTiePieScpChGetAutoRanging_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4375 #else
4376 bool8_t ScpChGetAutoRanging( TpDeviceHandle_t hDevice , uint16_t wCh );
4377 #endif
4378 
4397 #ifdef LIBTIEPIE_DYNAMIC
4398 typedef bool8_t(*LibTiePieScpChSetAutoRanging_t)( TpDeviceHandle_t hDevice , uint16_t wCh , bool8_t bEnable );
4399 #else
4400 bool8_t ScpChSetAutoRanging( TpDeviceHandle_t hDevice , uint16_t wCh , bool8_t bEnable );
4401 #endif
4402 
4440 #ifdef LIBTIEPIE_DYNAMIC
4441 typedef uint32_t(*LibTiePieScpChGetRanges_t)( TpDeviceHandle_t hDevice , uint16_t wCh , double* pList , uint32_t dwLength );
4442 #else
4443 uint32_t ScpChGetRanges( TpDeviceHandle_t hDevice , uint16_t wCh , double* pList , uint32_t dwLength );
4444 #endif
4445 
4447 
4460 #ifdef LIBTIEPIE_DYNAMIC
4461 typedef uint32_t(*LibTiePieScpChGetRangesEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwCoupling , double* pList , uint32_t dwLength );
4462 #else
4463 uint32_t ScpChGetRangesEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwCoupling , double* pList , uint32_t dwLength );
4464 #endif
4465 
4467 
4485 #ifdef LIBTIEPIE_DYNAMIC
4486 typedef double(*LibTiePieScpChGetRange_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4487 #else
4488 double ScpChGetRange( TpDeviceHandle_t hDevice , uint16_t wCh );
4489 #endif
4490 
4525 #ifdef LIBTIEPIE_DYNAMIC
4526 typedef double(*LibTiePieScpChSetRange_t)( TpDeviceHandle_t hDevice , uint16_t wCh , double dRange );
4527 #else
4528 double ScpChSetRange( TpDeviceHandle_t hDevice , uint16_t wCh , double dRange );
4529 #endif
4530 
4546 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4547 
4563 #ifdef LIBTIEPIE_DYNAMIC
4564 typedef bool8_t(*LibTiePieScpChHasTrigger_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4565 #else
4566 bool8_t ScpChHasTrigger( TpDeviceHandle_t hDevice , uint16_t wCh );
4567 #endif
4568 
4584 #ifdef LIBTIEPIE_DYNAMIC
4585 typedef bool8_t(*LibTiePieScpChTrIsAvailable_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4586 #else
4587 bool8_t ScpChTrIsAvailable( TpDeviceHandle_t hDevice , uint16_t wCh );
4588 #endif
4589 
4591 
4606 #ifdef LIBTIEPIE_DYNAMIC
4607 typedef bool8_t(*LibTiePieScpChTrIsAvailableEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode , double dSampleFrequency , uint8_t byResolution , bool8_t* pChannelEnabled , bool8_t* pChannelTriggerEnabled , uint16_t wChannelCount );
4608 #else
4609 bool8_t ScpChTrIsAvailableEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode , double dSampleFrequency , uint8_t byResolution , bool8_t* pChannelEnabled , bool8_t* pChannelTriggerEnabled , uint16_t wChannelCount );
4610 #endif
4611 
4613 
4624 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4625 
4643 #ifdef LIBTIEPIE_DYNAMIC
4644 typedef bool8_t(*LibTiePieScpChTrGetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4645 #else
4646 bool8_t ScpChTrGetEnabled( TpDeviceHandle_t hDevice , uint16_t wCh );
4647 #endif
4648 
4667 #ifdef LIBTIEPIE_DYNAMIC
4668 typedef bool8_t(*LibTiePieScpChTrSetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wCh , bool8_t bEnable );
4669 #else
4670 bool8_t ScpChTrSetEnabled( TpDeviceHandle_t hDevice , uint16_t wCh , bool8_t bEnable );
4671 #endif
4672 
4686 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4687 
4706 #ifdef LIBTIEPIE_DYNAMIC
4707 typedef uint64_t(*LibTiePieScpChTrGetKinds_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4708 #else
4709 uint64_t ScpChTrGetKinds( TpDeviceHandle_t hDevice , uint16_t wCh );
4710 #endif
4711 
4713 
4723 #ifdef LIBTIEPIE_DYNAMIC
4724 typedef uint64_t(*LibTiePieScpChTrGetKindsEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode );
4725 #else
4726 uint64_t ScpChTrGetKindsEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode );
4727 #endif
4728 
4730 
4749 #ifdef LIBTIEPIE_DYNAMIC
4750 typedef uint64_t(*LibTiePieScpChTrGetKind_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4751 #else
4752 uint64_t ScpChTrGetKind( TpDeviceHandle_t hDevice , uint16_t wCh );
4753 #endif
4754 
4775 #ifdef LIBTIEPIE_DYNAMIC
4776 typedef uint64_t(*LibTiePieScpChTrSetKind_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwTriggerKind );
4777 #else
4778 uint64_t ScpChTrSetKind( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwTriggerKind );
4779 #endif
4780 
4798 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4799 
4819 #ifdef LIBTIEPIE_DYNAMIC
4820 typedef uint32_t(*LibTiePieScpChTrGetLevelCount_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4821 #else
4822 uint32_t ScpChTrGetLevelCount( TpDeviceHandle_t hDevice , uint16_t wCh );
4823 #endif
4824 
4845 #ifdef LIBTIEPIE_DYNAMIC
4846 typedef double(*LibTiePieScpChTrGetLevel_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
4847 #else
4848 double ScpChTrGetLevel( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
4849 #endif
4850 
4873 #ifdef LIBTIEPIE_DYNAMIC
4874 typedef double(*LibTiePieScpChTrSetLevel_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dLevel );
4875 #else
4876 double ScpChTrSetLevel( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dLevel );
4877 #endif
4878 
4896 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4897 
4917 #ifdef LIBTIEPIE_DYNAMIC
4918 typedef uint32_t(*LibTiePieScpChTrGetHysteresisCount_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4919 #else
4920 uint32_t ScpChTrGetHysteresisCount( TpDeviceHandle_t hDevice , uint16_t wCh );
4921 #endif
4922 
4943 #ifdef LIBTIEPIE_DYNAMIC
4944 typedef double(*LibTiePieScpChTrGetHysteresis_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
4945 #else
4946 double ScpChTrGetHysteresis( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
4947 #endif
4948 
4971 #ifdef LIBTIEPIE_DYNAMIC
4972 typedef double(*LibTiePieScpChTrSetHysteresis_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dHysteresis );
4973 #else
4974 double ScpChTrSetHysteresis( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dHysteresis );
4975 #endif
4976 
4990 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4991 
5011 #ifdef LIBTIEPIE_DYNAMIC
5012 typedef uint32_t(*LibTiePieScpChTrGetConditions_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5013 #else
5014 uint32_t ScpChTrGetConditions( TpDeviceHandle_t hDevice , uint16_t wCh );
5015 #endif
5016 
5018 
5027 #ifdef LIBTIEPIE_DYNAMIC
5028 typedef uint32_t(*LibTiePieScpChTrGetConditionsEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode , uint64_t qwTriggerKind );
5029 #else
5030 uint32_t ScpChTrGetConditionsEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode , uint64_t qwTriggerKind );
5031 #endif
5032 
5034 
5053 #ifdef LIBTIEPIE_DYNAMIC
5054 typedef uint32_t(*LibTiePieScpChTrGetCondition_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5055 #else
5056 uint32_t ScpChTrGetCondition( TpDeviceHandle_t hDevice , uint16_t wCh );
5057 #endif
5058 
5079 #ifdef LIBTIEPIE_DYNAMIC
5080 typedef uint32_t(*LibTiePieScpChTrSetCondition_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwCondition );
5081 #else
5082 uint32_t ScpChTrSetCondition( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwCondition );
5083 #endif
5084 
5100 // Workaround: Without this line Doxygen adds the documentation below to the group above.
5101 
5126 #ifdef LIBTIEPIE_DYNAMIC
5127 typedef uint32_t(*LibTiePieScpChTrGetTimeCount_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5128 #else
5129 uint32_t ScpChTrGetTimeCount( TpDeviceHandle_t hDevice , uint16_t wCh );
5130 #endif
5131 
5157 #ifdef LIBTIEPIE_DYNAMIC
5158 typedef double(*LibTiePieScpChTrGetTime_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
5159 #else
5160 double ScpChTrGetTime( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
5161 #endif
5162 
5191 #ifdef LIBTIEPIE_DYNAMIC
5192 typedef double(*LibTiePieScpChTrSetTime_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime );
5193 #else
5194 double ScpChTrSetTime( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime );
5195 #endif
5196 
5198 
5213 #ifdef LIBTIEPIE_DYNAMIC
5214 typedef double(*LibTiePieScpChTrVerifyTime_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime );
5215 #else
5216 double ScpChTrVerifyTime( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime );
5217 #endif
5218 
5235 #ifdef LIBTIEPIE_DYNAMIC
5236 typedef double(*LibTiePieScpChTrVerifyTimeEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime , double dSampleFrequency );
5237 #else
5238 double ScpChTrVerifyTimeEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime , double dSampleFrequency );
5239 #endif
5240 
5257 #ifdef LIBTIEPIE_DYNAMIC
5258 typedef double(*LibTiePieScpChTrVerifyTimeEx2_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime , uint32_t dwMeasureMode , double dSampleFrequency , uint64_t qwTriggerKind , uint32_t dwTriggerCondition );
5259 #else
5260 double ScpChTrVerifyTimeEx2( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime , uint32_t dwMeasureMode , double dSampleFrequency , uint64_t qwTriggerKind , uint32_t dwTriggerCondition );
5261 #endif
5262 
5264 
5322 // Workaround: Without this line Doxygen adds the documentation below to the group above.
5323 
5381 #ifdef INCLUDED_BY_MATLAB
5382 #ifdef LIBTIEPIE_DYNAMIC
5383 typedef uint64_t(*LibTiePieScpGetData_t)( TpDeviceHandle_t hDevice , void** pBuffers , uint16_t wChannelCount , uint64_t qwStartIndex , uint64_t qwSampleCount );
5384 #else
5385 uint64_t ScpGetData( TpDeviceHandle_t hDevice , void** pBuffers , uint16_t wChannelCount , uint64_t qwStartIndex , uint64_t qwSampleCount );
5386 #endif
5387 #else
5388 #ifdef LIBTIEPIE_DYNAMIC
5389 typedef uint64_t(*LibTiePieScpGetData_t)( TpDeviceHandle_t hDevice , float** pBuffers , uint16_t wChannelCount , uint64_t qwStartIndex , uint64_t qwSampleCount );
5390 #else
5391 uint64_t ScpGetData( TpDeviceHandle_t hDevice , float** pBuffers , uint16_t wChannelCount , uint64_t qwStartIndex , uint64_t qwSampleCount );
5392 #endif
5393 #endif
5394 
5415 #ifdef LIBTIEPIE_DYNAMIC
5416 typedef uint64_t(*LibTiePieScpGetData1Ch_t)( TpDeviceHandle_t hDevice , float* pBufferCh1 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5417 #else
5418 uint64_t ScpGetData1Ch( TpDeviceHandle_t hDevice , float* pBufferCh1 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5419 #endif
5420 
5442 #ifdef LIBTIEPIE_DYNAMIC
5443 typedef uint64_t(*LibTiePieScpGetData2Ch_t)( TpDeviceHandle_t hDevice , float* pBufferCh1 , float* pBufferCh2 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5444 #else
5445 uint64_t ScpGetData2Ch( TpDeviceHandle_t hDevice , float* pBufferCh1 , float* pBufferCh2 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5446 #endif
5447 
5470 #ifdef LIBTIEPIE_DYNAMIC
5471 typedef uint64_t(*LibTiePieScpGetData3Ch_t)( TpDeviceHandle_t hDevice , float* pBufferCh1 , float* pBufferCh2 , float* pBufferCh3 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5472 #else
5473 uint64_t ScpGetData3Ch( TpDeviceHandle_t hDevice , float* pBufferCh1 , float* pBufferCh2 , float* pBufferCh3 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5474 #endif
5475 
5499 #ifdef LIBTIEPIE_DYNAMIC
5500 typedef uint64_t(*LibTiePieScpGetData4Ch_t)( TpDeviceHandle_t hDevice , float* pBufferCh1 , float* pBufferCh2 , float* pBufferCh3 , float* pBufferCh4 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5501 #else
5502 uint64_t ScpGetData4Ch( TpDeviceHandle_t hDevice , float* pBufferCh1 , float* pBufferCh2 , float* pBufferCh3 , float* pBufferCh4 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5503 #endif
5504 
5523 #ifdef LIBTIEPIE_DYNAMIC
5524 typedef uint64_t(*LibTiePieScpGetValidPreSampleCount_t)( TpDeviceHandle_t hDevice );
5525 #else
5526 uint64_t ScpGetValidPreSampleCount( TpDeviceHandle_t hDevice );
5527 #endif
5528 
5548 #ifdef LIBTIEPIE_DYNAMIC
5549 typedef void(*LibTiePieScpChGetDataValueRange_t)( TpDeviceHandle_t hDevice , uint16_t wCh , double* pMin , double* pMax );
5550 #else
5551 void ScpChGetDataValueRange( TpDeviceHandle_t hDevice , uint16_t wCh , double* pMin , double* pMax );
5552 #endif
5553 
5572 #ifdef LIBTIEPIE_DYNAMIC
5573 typedef double(*LibTiePieScpChGetDataValueMax_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5574 #else
5575 double ScpChGetDataValueMax( TpDeviceHandle_t hDevice , uint16_t wCh );
5576 #endif
5577 
5596 #ifdef LIBTIEPIE_DYNAMIC
5597 typedef double(*LibTiePieScpChGetDataValueMin_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5598 #else
5599 double ScpChGetDataValueMin( TpDeviceHandle_t hDevice , uint16_t wCh );
5600 #endif
5601 
5608 // Workaround: Without this line Doxygen adds the documentation below to the group above.
5609 
5622 #ifdef LIBTIEPIE_DYNAMIC
5623 typedef uint64_t(*LibTiePieScpGetDataRaw_t)( TpDeviceHandle_t hDevice , void** pBuffers , uint16_t wChannelCount , uint64_t qwStartIndex , uint64_t qwSampleCount );
5624 #else
5625 uint64_t ScpGetDataRaw( TpDeviceHandle_t hDevice , void** pBuffers , uint16_t wChannelCount , uint64_t qwStartIndex , uint64_t qwSampleCount );
5626 #endif
5627 
5638 #ifdef LIBTIEPIE_DYNAMIC
5639 typedef uint64_t(*LibTiePieScpGetDataRaw1Ch_t)( TpDeviceHandle_t hDevice , void* pBufferCh1 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5640 #else
5641 uint64_t ScpGetDataRaw1Ch( TpDeviceHandle_t hDevice , void* pBufferCh1 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5642 #endif
5643 
5655 #ifdef LIBTIEPIE_DYNAMIC
5656 typedef uint64_t(*LibTiePieScpGetDataRaw2Ch_t)( TpDeviceHandle_t hDevice , void* pBufferCh1 , void* pBufferCh2 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5657 #else
5658 uint64_t ScpGetDataRaw2Ch( TpDeviceHandle_t hDevice , void* pBufferCh1 , void* pBufferCh2 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5659 #endif
5660 
5673 #ifdef LIBTIEPIE_DYNAMIC
5674 typedef uint64_t(*LibTiePieScpGetDataRaw3Ch_t)( TpDeviceHandle_t hDevice , void* pBufferCh1 , void* pBufferCh2 , void* pBufferCh3 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5675 #else
5676 uint64_t ScpGetDataRaw3Ch( TpDeviceHandle_t hDevice , void* pBufferCh1 , void* pBufferCh2 , void* pBufferCh3 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5677 #endif
5678 
5692 #ifdef LIBTIEPIE_DYNAMIC
5693 typedef uint64_t(*LibTiePieScpGetDataRaw4Ch_t)( TpDeviceHandle_t hDevice , void* pBufferCh1 , void* pBufferCh2 , void* pBufferCh3 , void* pBufferCh4 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5694 #else
5695 uint64_t ScpGetDataRaw4Ch( TpDeviceHandle_t hDevice , void* pBufferCh1 , void* pBufferCh2 , void* pBufferCh3 , void* pBufferCh4 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5696 #endif
5697 
5706 #ifdef LIBTIEPIE_DYNAMIC
5707 typedef uint32_t(*LibTiePieScpChGetDataRawType_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5708 #else
5709 uint32_t ScpChGetDataRawType( TpDeviceHandle_t hDevice , uint16_t wCh );
5710 #endif
5711 
5725 #ifdef LIBTIEPIE_DYNAMIC
5726 typedef void(*LibTiePieScpChGetDataRawValueRange_t)( TpDeviceHandle_t hDevice , uint16_t wCh , int64_t* pMin , int64_t* pZero , int64_t* pMax );
5727 #else
5728 void ScpChGetDataRawValueRange( TpDeviceHandle_t hDevice , uint16_t wCh , int64_t* pMin , int64_t* pZero , int64_t* pMax );
5729 #endif
5730 
5742 #ifdef LIBTIEPIE_DYNAMIC
5743 typedef int64_t(*LibTiePieScpChGetDataRawValueMax_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5744 #else
5745 int64_t ScpChGetDataRawValueMax( TpDeviceHandle_t hDevice , uint16_t wCh );
5746 #endif
5747 
5759 #ifdef LIBTIEPIE_DYNAMIC
5760 typedef int64_t(*LibTiePieScpChGetDataRawValueZero_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5761 #else
5762 int64_t ScpChGetDataRawValueZero( TpDeviceHandle_t hDevice , uint16_t wCh );
5763 #endif
5764 
5776 #ifdef LIBTIEPIE_DYNAMIC
5777 typedef int64_t(*LibTiePieScpChGetDataRawValueMin_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5778 #else
5779 int64_t ScpChGetDataRawValueMin( TpDeviceHandle_t hDevice , uint16_t wCh );
5780 #endif
5781 
5790 #ifdef LIBTIEPIE_DYNAMIC
5791 typedef bool8_t(*LibTiePieScpChIsRangeMaxReachable_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5792 #else
5793 bool8_t ScpChIsRangeMaxReachable( TpDeviceHandle_t hDevice , uint16_t wCh );
5794 #endif
5795 
5806 // Workaround: Without this line Doxygen adds the documentation below to the group above.
5807 
5816 #ifdef LIBTIEPIE_DYNAMIC
5817 typedef void(*LibTiePieScpSetCallbackDataReady_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
5818 #else
5819 void ScpSetCallbackDataReady( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
5820 #endif
5821 
5828 // Workaround: Without this line Doxygen adds the documentation below to the group above.
5829 
5838 #ifdef LIBTIEPIE_DYNAMIC
5839 typedef void(*LibTiePieScpSetCallbackDataOverflow_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
5840 #else
5841 void ScpSetCallbackDataOverflow( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
5842 #endif
5843 
5850 // Workaround: Without this line Doxygen adds the documentation below to the group above.
5851 
5860 #ifdef LIBTIEPIE_DYNAMIC
5861 typedef void(*LibTiePieScpSetCallbackConnectionTestCompleted_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
5862 #else
5863 void ScpSetCallbackConnectionTestCompleted( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
5864 #endif
5865 
5870 #ifdef __linux__
5871 
5881 #ifdef LIBTIEPIE_DYNAMIC
5882 typedef void(*LibTiePieScpSetEventDataReady_t)( TpDeviceHandle_t hDevice , int fdEvent );
5883 #else
5884 void ScpSetEventDataReady( TpDeviceHandle_t hDevice , int fdEvent );
5885 #endif
5886 
5896 #ifdef LIBTIEPIE_DYNAMIC
5897 typedef void(*LibTiePieScpSetEventDataOverflow_t)( TpDeviceHandle_t hDevice , int fdEvent );
5898 #else
5899 void ScpSetEventDataOverflow( TpDeviceHandle_t hDevice , int fdEvent );
5900 #endif
5901 
5911 #ifdef LIBTIEPIE_DYNAMIC
5912 typedef void(*LibTiePieScpSetEventConnectionTestCompleted_t)( TpDeviceHandle_t hDevice , int fdEvent );
5913 #else
5914 void ScpSetEventConnectionTestCompleted( TpDeviceHandle_t hDevice , int fdEvent );
5915 #endif
5916 
5917 #endif
5918 
5919 #ifdef HAVE_WINDOWS_H
5920 
5930 #ifdef LIBTIEPIE_DYNAMIC
5931 typedef void(*LibTiePieScpSetEventDataReady_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
5932 #else
5933 void ScpSetEventDataReady( TpDeviceHandle_t hDevice , HANDLE hEvent );
5934 #endif
5935 
5945 #ifdef LIBTIEPIE_DYNAMIC
5946 typedef void(*LibTiePieScpSetEventDataOverflow_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
5947 #else
5948 void ScpSetEventDataOverflow( TpDeviceHandle_t hDevice , HANDLE hEvent );
5949 #endif
5950 
5960 #ifdef LIBTIEPIE_DYNAMIC
5961 typedef void(*LibTiePieScpSetEventConnectionTestCompleted_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
5962 #else
5963 void ScpSetEventConnectionTestCompleted( TpDeviceHandle_t hDevice , HANDLE hEvent );
5964 #endif
5965 
5977 #ifdef LIBTIEPIE_DYNAMIC
5978 typedef void(*LibTiePieScpSetMessageDataReady_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
5979 #else
5980 void ScpSetMessageDataReady( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
5981 #endif
5982 
5994 #ifdef LIBTIEPIE_DYNAMIC
5995 typedef void(*LibTiePieScpSetMessageDataOverflow_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
5996 #else
5997 void ScpSetMessageDataOverflow( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
5998 #endif
5999 
6011 #ifdef LIBTIEPIE_DYNAMIC
6012 typedef void(*LibTiePieScpSetMessageConnectionTestCompleted_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
6013 #else
6014 void ScpSetMessageConnectionTestCompleted( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
6015 #endif
6016 
6017 #endif
6018 
6030 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6031 
6041 #ifdef LIBTIEPIE_DYNAMIC
6042 typedef bool8_t(*LibTiePieScpStart_t)( TpDeviceHandle_t hDevice );
6043 #else
6044 bool8_t ScpStart( TpDeviceHandle_t hDevice );
6045 #endif
6046 
6053 #ifdef LIBTIEPIE_DYNAMIC
6054 typedef void(*LibTiePieScpStop_t)( TpDeviceHandle_t hDevice );
6055 #else
6056 void ScpStop( TpDeviceHandle_t hDevice );
6057 #endif
6058 
6069 #ifdef LIBTIEPIE_DYNAMIC
6070 typedef void(*LibTiePieScpForceTrigger_t)( TpDeviceHandle_t hDevice );
6071 #else
6072 void ScpForceTrigger( TpDeviceHandle_t hDevice );
6073 #endif
6074 
6110 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6111 
6119 #ifdef LIBTIEPIE_DYNAMIC
6120 typedef uint32_t(*LibTiePieScpGetMeasureModes_t)( TpDeviceHandle_t hDevice );
6121 #else
6122 uint32_t ScpGetMeasureModes( TpDeviceHandle_t hDevice );
6123 #endif
6124 
6132 #ifdef LIBTIEPIE_DYNAMIC
6133 typedef uint32_t(*LibTiePieScpGetMeasureMode_t)( TpDeviceHandle_t hDevice );
6134 #else
6135 uint32_t ScpGetMeasureMode( TpDeviceHandle_t hDevice );
6136 #endif
6137 
6147 #ifdef LIBTIEPIE_DYNAMIC
6148 typedef uint32_t(*LibTiePieScpSetMeasureMode_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
6149 #else
6150 uint32_t ScpSetMeasureMode( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
6151 #endif
6152 
6160 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6161 
6169 #ifdef LIBTIEPIE_DYNAMIC
6170 typedef bool8_t(*LibTiePieScpIsRunning_t)( TpDeviceHandle_t hDevice );
6171 #else
6172 bool8_t ScpIsRunning( TpDeviceHandle_t hDevice );
6173 #endif
6174 
6184 #ifdef LIBTIEPIE_DYNAMIC
6185 typedef bool8_t(*LibTiePieScpIsTriggered_t)( TpDeviceHandle_t hDevice );
6186 #else
6187 bool8_t ScpIsTriggered( TpDeviceHandle_t hDevice );
6188 #endif
6189 
6205 #ifdef LIBTIEPIE_DYNAMIC
6206 typedef bool8_t(*LibTiePieScpIsDataReady_t)( TpDeviceHandle_t hDevice );
6207 #else
6208 bool8_t ScpIsDataReady( TpDeviceHandle_t hDevice );
6209 #endif
6210 
6223 #ifdef LIBTIEPIE_DYNAMIC
6224 typedef bool8_t(*LibTiePieScpIsDataOverflow_t)( TpDeviceHandle_t hDevice );
6225 #else
6226 bool8_t ScpIsDataOverflow( TpDeviceHandle_t hDevice );
6227 #endif
6228 
6258 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6259 
6267 #ifdef LIBTIEPIE_DYNAMIC
6268 typedef uint32_t(*LibTiePieScpGetAutoResolutionModes_t)( TpDeviceHandle_t hDevice );
6269 #else
6270 uint32_t ScpGetAutoResolutionModes( TpDeviceHandle_t hDevice );
6271 #endif
6272 
6280 #ifdef LIBTIEPIE_DYNAMIC
6281 typedef uint32_t(*LibTiePieScpGetAutoResolutionMode_t)( TpDeviceHandle_t hDevice );
6282 #else
6283 uint32_t ScpGetAutoResolutionMode( TpDeviceHandle_t hDevice );
6284 #endif
6285 
6294 #ifdef LIBTIEPIE_DYNAMIC
6295 typedef uint32_t(*LibTiePieScpSetAutoResolutionMode_t)( TpDeviceHandle_t hDevice , uint32_t dwAutoResolutionMode );
6296 #else
6297 uint32_t ScpSetAutoResolutionMode( TpDeviceHandle_t hDevice , uint32_t dwAutoResolutionMode );
6298 #endif
6299 
6325 #ifdef LIBTIEPIE_DYNAMIC
6326 typedef uint32_t(*LibTiePieScpGetResolutions_t)( TpDeviceHandle_t hDevice , uint8_t* pList , uint32_t dwLength );
6327 #else
6328 uint32_t ScpGetResolutions( TpDeviceHandle_t hDevice , uint8_t* pList , uint32_t dwLength );
6329 #endif
6330 
6338 #ifdef LIBTIEPIE_DYNAMIC
6339 typedef uint8_t(*LibTiePieScpGetResolution_t)( TpDeviceHandle_t hDevice );
6340 #else
6341 uint8_t ScpGetResolution( TpDeviceHandle_t hDevice );
6342 #endif
6343 
6354 #ifdef LIBTIEPIE_DYNAMIC
6355 typedef uint8_t(*LibTiePieScpSetResolution_t)( TpDeviceHandle_t hDevice , uint8_t byResolution );
6356 #else
6357 uint8_t ScpSetResolution( TpDeviceHandle_t hDevice , uint8_t byResolution );
6358 #endif
6359 
6367 #ifdef LIBTIEPIE_DYNAMIC
6368 typedef bool8_t(*LibTiePieScpIsResolutionEnhanced_t)( TpDeviceHandle_t hDevice );
6369 #else
6370 bool8_t ScpIsResolutionEnhanced( TpDeviceHandle_t hDevice );
6371 #endif
6372 
6374 
6383 #ifdef LIBTIEPIE_DYNAMIC
6384 typedef bool8_t(*LibTiePieScpIsResolutionEnhancedEx_t)( TpDeviceHandle_t hDevice , uint8_t byResolution );
6385 #else
6386 bool8_t ScpIsResolutionEnhancedEx( TpDeviceHandle_t hDevice , uint8_t byResolution );
6387 #endif
6388 
6390 
6400 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6401 
6409 #ifdef LIBTIEPIE_DYNAMIC
6410 typedef uint32_t(*LibTiePieScpGetClockSources_t)( TpDeviceHandle_t hDevice );
6411 #else
6412 uint32_t ScpGetClockSources( TpDeviceHandle_t hDevice );
6413 #endif
6414 
6422 #ifdef LIBTIEPIE_DYNAMIC
6423 typedef uint32_t(*LibTiePieScpGetClockSource_t)( TpDeviceHandle_t hDevice );
6424 #else
6425 uint32_t ScpGetClockSource( TpDeviceHandle_t hDevice );
6426 #endif
6427 
6436 #ifdef LIBTIEPIE_DYNAMIC
6437 typedef uint32_t(*LibTiePieScpSetClockSource_t)( TpDeviceHandle_t hDevice , uint32_t dwClockSource );
6438 #else
6439 uint32_t ScpSetClockSource( TpDeviceHandle_t hDevice , uint32_t dwClockSource );
6440 #endif
6441 
6449 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6450 
6458 #ifdef LIBTIEPIE_DYNAMIC
6459 typedef uint32_t(*LibTiePieScpGetClockOutputs_t)( TpDeviceHandle_t hDevice );
6460 #else
6461 uint32_t ScpGetClockOutputs( TpDeviceHandle_t hDevice );
6462 #endif
6463 
6471 #ifdef LIBTIEPIE_DYNAMIC
6472 typedef uint32_t(*LibTiePieScpGetClockOutput_t)( TpDeviceHandle_t hDevice );
6473 #else
6474 uint32_t ScpGetClockOutput( TpDeviceHandle_t hDevice );
6475 #endif
6476 
6485 #ifdef LIBTIEPIE_DYNAMIC
6486 typedef uint32_t(*LibTiePieScpSetClockOutput_t)( TpDeviceHandle_t hDevice , uint32_t dwClockOutput );
6487 #else
6488 uint32_t ScpSetClockOutput( TpDeviceHandle_t hDevice , uint32_t dwClockOutput );
6489 #endif
6490 
6514 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6515 
6523 #ifdef LIBTIEPIE_DYNAMIC
6524 typedef double(*LibTiePieScpGetPreSampleRatio_t)( TpDeviceHandle_t hDevice );
6525 #else
6526 double ScpGetPreSampleRatio( TpDeviceHandle_t hDevice );
6527 #endif
6528 
6537 #ifdef LIBTIEPIE_DYNAMIC
6538 typedef double(*LibTiePieScpSetPreSampleRatio_t)( TpDeviceHandle_t hDevice , double dPreSampleRatio );
6539 #else
6540 double ScpSetPreSampleRatio( TpDeviceHandle_t hDevice , double dPreSampleRatio );
6541 #endif
6542 
6559 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6560 
6568 #ifdef LIBTIEPIE_DYNAMIC
6569 typedef uint64_t(*LibTiePieScpGetTriggerHoldOffCountMax_t)( TpDeviceHandle_t hDevice );
6570 #else
6571 uint64_t ScpGetTriggerHoldOffCountMax( TpDeviceHandle_t hDevice );
6572 #endif
6573 
6575 
6584 #ifdef LIBTIEPIE_DYNAMIC
6585 typedef uint64_t(*LibTiePieScpGetTriggerHoldOffCountMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
6586 #else
6587 uint64_t ScpGetTriggerHoldOffCountMaxEx( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
6588 #endif
6589 
6591 
6599 #ifdef LIBTIEPIE_DYNAMIC
6600 typedef uint64_t(*LibTiePieScpGetTriggerHoldOffCount_t)( TpDeviceHandle_t hDevice );
6601 #else
6602 uint64_t ScpGetTriggerHoldOffCount( TpDeviceHandle_t hDevice );
6603 #endif
6604 
6613 #ifdef LIBTIEPIE_DYNAMIC
6614 typedef uint64_t(*LibTiePieScpSetTriggerHoldOffCount_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerHoldOffCount );
6615 #else
6616 uint64_t ScpSetTriggerHoldOffCount( TpDeviceHandle_t hDevice , uint64_t qwTriggerHoldOffCount );
6617 #endif
6618 
6637 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6638 
6646 #ifdef LIBTIEPIE_DYNAMIC
6647 typedef uint64_t(*LibTiePieScpGetRecordLengthMax_t)( TpDeviceHandle_t hDevice );
6648 #else
6649 uint64_t ScpGetRecordLengthMax( TpDeviceHandle_t hDevice );
6650 #endif
6651 
6653 
6663 #ifdef LIBTIEPIE_DYNAMIC
6664 typedef uint64_t(*LibTiePieScpGetRecordLengthMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode , uint8_t byResolution );
6665 #else
6666 uint64_t ScpGetRecordLengthMaxEx( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode , uint8_t byResolution );
6667 #endif
6668 
6670 
6678 #ifdef LIBTIEPIE_DYNAMIC
6679 typedef uint64_t(*LibTiePieScpGetRecordLength_t)( TpDeviceHandle_t hDevice );
6680 #else
6681 uint64_t ScpGetRecordLength( TpDeviceHandle_t hDevice );
6682 #endif
6683 
6693 #ifdef LIBTIEPIE_DYNAMIC
6694 typedef uint64_t(*LibTiePieScpSetRecordLength_t)( TpDeviceHandle_t hDevice , uint64_t qwRecordLength );
6695 #else
6696 uint64_t ScpSetRecordLength( TpDeviceHandle_t hDevice , uint64_t qwRecordLength );
6697 #endif
6698 
6700 
6709 #ifdef LIBTIEPIE_DYNAMIC
6710 typedef uint64_t(*LibTiePieScpVerifyRecordLength_t)( TpDeviceHandle_t hDevice , uint64_t qwRecordLength );
6711 #else
6712 uint64_t ScpVerifyRecordLength( TpDeviceHandle_t hDevice , uint64_t qwRecordLength );
6713 #endif
6714 
6726 #ifdef LIBTIEPIE_DYNAMIC
6727 typedef uint64_t(*LibTiePieScpVerifyRecordLengthEx_t)( TpDeviceHandle_t hDevice , uint64_t qwRecordLength , uint32_t dwMeasureMode , uint8_t byResolution , uint64_t qwActiveChannelMask );
6728 #else
6729 uint64_t ScpVerifyRecordLengthEx( TpDeviceHandle_t hDevice , uint64_t qwRecordLength , uint32_t dwMeasureMode , uint8_t byResolution , uint64_t qwActiveChannelMask );
6730 #endif
6731 
6733 
6752 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6753 
6761 #ifdef LIBTIEPIE_DYNAMIC
6762 typedef double(*LibTiePieScpGetSampleFrequencyMax_t)( TpDeviceHandle_t hDevice );
6763 #else
6764 double ScpGetSampleFrequencyMax( TpDeviceHandle_t hDevice );
6765 #endif
6766 
6774 #ifdef LIBTIEPIE_DYNAMIC
6775 typedef double(*LibTiePieScpGetSampleFrequency_t)( TpDeviceHandle_t hDevice );
6776 #else
6777 double ScpGetSampleFrequency( TpDeviceHandle_t hDevice );
6778 #endif
6779 
6790 #ifdef LIBTIEPIE_DYNAMIC
6791 typedef double(*LibTiePieScpSetSampleFrequency_t)( TpDeviceHandle_t hDevice , double dSampleFrequency );
6792 #else
6793 double ScpSetSampleFrequency( TpDeviceHandle_t hDevice , double dSampleFrequency );
6794 #endif
6795 
6797 
6806 #ifdef LIBTIEPIE_DYNAMIC
6807 typedef double(*LibTiePieScpVerifySampleFrequency_t)( TpDeviceHandle_t hDevice , double dSampleFrequency );
6808 #else
6809 double ScpVerifySampleFrequency( TpDeviceHandle_t hDevice , double dSampleFrequency );
6810 #endif
6811 
6823 #ifdef LIBTIEPIE_DYNAMIC
6824 typedef double(*LibTiePieScpVerifySampleFrequencyEx_t)( TpDeviceHandle_t hDevice , double dSampleFrequency , uint32_t dwMeasureMode , uint8_t byResolution , uint64_t qwActiveChannelMask );
6825 #else
6826 double ScpVerifySampleFrequencyEx( TpDeviceHandle_t hDevice , double dSampleFrequency , uint32_t dwMeasureMode , uint8_t byResolution , uint64_t qwActiveChannelMask );
6827 #endif
6828 
6841 #ifdef LIBTIEPIE_DYNAMIC
6842 typedef void(*LibTiePieScpVerifySampleFrequenciesEx_t)( TpDeviceHandle_t hDevice , double* pSampleFrequencies , uint32_t dwSampleFrequencyCount , uint32_t dwMeasureMode , uint32_t dwAutoResolutionMode , uint8_t byResolution , bool8_t* pChannelEnabled , uint16_t wChannelCount );
6843 #else
6844 void ScpVerifySampleFrequenciesEx( TpDeviceHandle_t hDevice , double* pSampleFrequencies , uint32_t dwSampleFrequencyCount , uint32_t dwMeasureMode , uint32_t dwAutoResolutionMode , uint8_t byResolution , bool8_t* pChannelEnabled , uint16_t wChannelCount );
6845 #endif
6846 
6848 
6858 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6859 
6867 #ifdef LIBTIEPIE_DYNAMIC
6868 typedef uint32_t(*LibTiePieScpGetSegmentCountMax_t)( TpDeviceHandle_t hDevice );
6869 #else
6870 uint32_t ScpGetSegmentCountMax( TpDeviceHandle_t hDevice );
6871 #endif
6872 
6874 
6882 #ifdef LIBTIEPIE_DYNAMIC
6883 typedef uint32_t(*LibTiePieScpGetSegmentCountMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
6884 #else
6885 uint32_t ScpGetSegmentCountMaxEx( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
6886 #endif
6887 
6889 
6897 #ifdef LIBTIEPIE_DYNAMIC
6898 typedef uint32_t(*LibTiePieScpGetSegmentCount_t)( TpDeviceHandle_t hDevice );
6899 #else
6900 uint32_t ScpGetSegmentCount( TpDeviceHandle_t hDevice );
6901 #endif
6902 
6911 #ifdef LIBTIEPIE_DYNAMIC
6912 typedef uint32_t(*LibTiePieScpSetSegmentCount_t)( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount );
6913 #else
6914 uint32_t ScpSetSegmentCount( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount );
6915 #endif
6916 
6918 
6927 #ifdef LIBTIEPIE_DYNAMIC
6928 typedef uint32_t(*LibTiePieScpVerifySegmentCount_t)( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount );
6929 #else
6930 uint32_t ScpVerifySegmentCount( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount );
6931 #endif
6932 
6944 #ifdef LIBTIEPIE_DYNAMIC
6945 typedef uint32_t(*LibTiePieScpVerifySegmentCountEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount , uint64_t qwRecordLength , double dSampleFrequency );
6946 #else
6947 uint32_t ScpVerifySegmentCountEx( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount , uint64_t qwRecordLength , double dSampleFrequency );
6948 #endif
6949 
6962 #ifdef LIBTIEPIE_DYNAMIC
6963 typedef uint32_t(*LibTiePieScpVerifySegmentCountEx2_t)( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount , uint32_t dwMeasureMode , uint64_t qwRecordLength , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
6964 #else
6965 uint32_t ScpVerifySegmentCountEx2( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount , uint32_t dwMeasureMode , uint64_t qwRecordLength , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
6966 #endif
6967 
6969 
7002 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7003 
7011 #ifdef LIBTIEPIE_DYNAMIC
7012 typedef double(*LibTiePieScpGetTriggerTimeOut_t)( TpDeviceHandle_t hDevice );
7013 #else
7014 double ScpGetTriggerTimeOut( TpDeviceHandle_t hDevice );
7015 #endif
7016 
7025 #ifdef LIBTIEPIE_DYNAMIC
7026 typedef double(*LibTiePieScpSetTriggerTimeOut_t)( TpDeviceHandle_t hDevice , double dTimeOut );
7027 #else
7028 double ScpSetTriggerTimeOut( TpDeviceHandle_t hDevice , double dTimeOut );
7029 #endif
7030 
7032 
7041 #ifdef LIBTIEPIE_DYNAMIC
7042 typedef double(*LibTiePieScpVerifyTriggerTimeOut_t)( TpDeviceHandle_t hDevice , double dTimeOut );
7043 #else
7044 double ScpVerifyTriggerTimeOut( TpDeviceHandle_t hDevice , double dTimeOut );
7045 #endif
7046 
7057 #ifdef LIBTIEPIE_DYNAMIC
7058 typedef double(*LibTiePieScpVerifyTriggerTimeOutEx_t)( TpDeviceHandle_t hDevice , double dTimeOut , uint32_t dwMeasureMode , double dSampleFrequency );
7059 #else
7060 double ScpVerifyTriggerTimeOutEx( TpDeviceHandle_t hDevice , double dTimeOut , uint32_t dwMeasureMode , double dSampleFrequency );
7061 #endif
7062 
7064 
7075 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7076 
7084 #ifdef LIBTIEPIE_DYNAMIC
7085 typedef double(*LibTiePieScpGetTriggerDelay_t)( TpDeviceHandle_t hDevice );
7086 #else
7087 double ScpGetTriggerDelay( TpDeviceHandle_t hDevice );
7088 #endif
7089 
7098 #ifdef LIBTIEPIE_DYNAMIC
7099 typedef double(*LibTiePieScpSetTriggerDelay_t)( TpDeviceHandle_t hDevice , double dDelay );
7100 #else
7101 double ScpSetTriggerDelay( TpDeviceHandle_t hDevice , double dDelay );
7102 #endif
7103 
7105 
7114 #ifdef LIBTIEPIE_DYNAMIC
7115 typedef double(*LibTiePieScpVerifyTriggerDelay_t)( TpDeviceHandle_t hDevice , double dDelay );
7116 #else
7117 double ScpVerifyTriggerDelay( TpDeviceHandle_t hDevice , double dDelay );
7118 #endif
7119 
7130 #ifdef LIBTIEPIE_DYNAMIC
7131 typedef double(*LibTiePieScpVerifyTriggerDelayEx_t)( TpDeviceHandle_t hDevice , double dDelay , uint32_t dwMeasureMode , double dSampleFrequency );
7132 #else
7133 double ScpVerifyTriggerDelayEx( TpDeviceHandle_t hDevice , double dDelay , uint32_t dwMeasureMode , double dSampleFrequency );
7134 #endif
7135 
7137 
7147 #ifdef LIBTIEPIE_DYNAMIC
7148 typedef uint64_t(*LibTiePieScpGetTriggerSources_t)( TpDeviceHandle_t hDevice );
7149 #else
7150 uint64_t ScpGetTriggerSources( TpDeviceHandle_t hDevice );
7151 #endif
7152 
7154 
7164 #ifdef LIBTIEPIE_DYNAMIC
7165 typedef uint64_t(*LibTiePieScpGetTriggerSourcesEx_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
7166 #else
7167 uint64_t ScpGetTriggerSourcesEx( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
7168 #endif
7169 
7171 
7180 #ifdef LIBTIEPIE_DYNAMIC
7181 typedef uint64_t(*LibTiePieScpGetTriggerSourceOR_t)( TpDeviceHandle_t hDevice );
7182 #else
7183 uint64_t ScpGetTriggerSourceOR( TpDeviceHandle_t hDevice );
7184 #endif
7185 
7195 #ifdef LIBTIEPIE_DYNAMIC
7196 typedef uint64_t(*LibTiePieScpSetTriggerSourceOR_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerSourceMask );
7197 #else
7198 uint64_t ScpSetTriggerSourceOR( TpDeviceHandle_t hDevice , uint64_t qwTriggerSourceMask );
7199 #endif
7200 
7209 #ifdef LIBTIEPIE_DYNAMIC
7210 typedef uint64_t(*LibTiePieScpGetTriggerSourceAND_t)( TpDeviceHandle_t hDevice );
7211 #else
7212 uint64_t ScpGetTriggerSourceAND( TpDeviceHandle_t hDevice );
7213 #endif
7214 
7224 #ifdef LIBTIEPIE_DYNAMIC
7225 typedef uint64_t(*LibTiePieScpSetTriggerSourceAND_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerSourceMask );
7226 #else
7227 uint64_t ScpSetTriggerSourceAND( TpDeviceHandle_t hDevice , uint64_t qwTriggerSourceMask );
7228 #endif
7229 
7242 #ifdef LIBTIEPIE_DYNAMIC
7243 typedef uint64_t(*LibTiePieScpGetTriggerKinds_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerSourceMask );
7244 #else
7245 uint64_t ScpGetTriggerKinds( TpDeviceHandle_t hDevice , uint64_t qwTriggerSourceMask );
7246 #endif
7247 
7249 
7263 #ifdef LIBTIEPIE_DYNAMIC
7264 typedef uint64_t(*LibTiePieScpGetTriggerKindsEx_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerSourceMask , uint32_t dwMeasureMode );
7265 #else
7266 uint64_t ScpGetTriggerKindsEx( TpDeviceHandle_t hDevice , uint64_t qwTriggerSourceMask , uint32_t dwMeasureMode );
7267 #endif
7268 
7270 
7280 #ifdef LIBTIEPIE_DYNAMIC
7281 typedef uint64_t(*LibTiePieScpGetTriggerKind_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerSource );
7282 #else
7283 uint64_t ScpGetTriggerKind( TpDeviceHandle_t hDevice , uint64_t qwTriggerSource );
7284 #endif
7285 
7296 #ifdef LIBTIEPIE_DYNAMIC
7297 typedef uint64_t(*LibTiePieScpSetTriggerKind_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerSource , uint64_t qwTriggerKind );
7298 #else
7299 uint64_t ScpSetTriggerKind( TpDeviceHandle_t hDevice , uint64_t qwTriggerSource , uint64_t qwTriggerKind );
7300 #endif
7301 
7312 #ifdef LIBTIEPIE_DYNAMIC
7313 typedef double(*LibTiePieScpGetTriggerLevel_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerSource , uint32_t dwIndex );
7314 #else
7315 double ScpGetTriggerLevel( TpDeviceHandle_t hDevice , uint64_t qwTriggerSource , uint32_t dwIndex );
7316 #endif
7317 
7329 #ifdef LIBTIEPIE_DYNAMIC
7330 typedef double(*LibTiePieScpSetTriggerLevel_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerSource , uint32_t dwIndex , double dLevel );
7331 #else
7332 double ScpSetTriggerLevel( TpDeviceHandle_t hDevice , uint64_t qwTriggerSource , uint32_t dwIndex , double dLevel );
7333 #endif
7334 
7345 #ifdef LIBTIEPIE_DYNAMIC
7346 typedef double(*LibTiePieScpGetTriggerHysteresis_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerSource , uint32_t dwIndex );
7347 #else
7348 double ScpGetTriggerHysteresis( TpDeviceHandle_t hDevice , uint64_t qwTriggerSource , uint32_t dwIndex );
7349 #endif
7350 
7362 #ifdef LIBTIEPIE_DYNAMIC
7363 typedef double(*LibTiePieScpSetTriggerHysteresis_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerSource , uint32_t dwIndex , double dHysteresis );
7364 #else
7365 double ScpSetTriggerHysteresis( TpDeviceHandle_t hDevice , uint64_t qwTriggerSource , uint32_t dwIndex , double dHysteresis );
7366 #endif
7367 
7377 #ifdef LIBTIEPIE_DYNAMIC
7378 typedef uint64_t(*LibTiePieScpChGetTriggerKinds_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
7379 #else
7380 uint64_t ScpChGetTriggerKinds( TpDeviceHandle_t hDevice , uint16_t wCh );
7381 #endif
7382 
7384 
7395 #ifdef LIBTIEPIE_DYNAMIC
7396 typedef uint64_t(*LibTiePieScpChGetTriggerKindsEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode );
7397 #else
7398 uint64_t ScpChGetTriggerKindsEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode );
7399 #endif
7400 
7402 
7412 #ifdef LIBTIEPIE_DYNAMIC
7413 typedef uint64_t(*LibTiePieScpChGetTriggerKind_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
7414 #else
7415 uint64_t ScpChGetTriggerKind( TpDeviceHandle_t hDevice , uint16_t wCh );
7416 #endif
7417 
7428 #ifdef LIBTIEPIE_DYNAMIC
7429 typedef uint64_t(*LibTiePieScpChSetTriggerKind_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwTriggerKind );
7430 #else
7431 uint64_t ScpChSetTriggerKind( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwTriggerKind );
7432 #endif
7433 
7444 #ifdef LIBTIEPIE_DYNAMIC
7445 typedef double(*LibTiePieScpChGetTriggerLevel_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
7446 #else
7447 double ScpChGetTriggerLevel( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
7448 #endif
7449 
7461 #ifdef LIBTIEPIE_DYNAMIC
7462 typedef double(*LibTiePieScpChSetTriggerLevel_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dLevel );
7463 #else
7464 double ScpChSetTriggerLevel( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dLevel );
7465 #endif
7466 
7477 #ifdef LIBTIEPIE_DYNAMIC
7478 typedef double(*LibTiePieScpChGetTriggerHysteresis_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
7479 #else
7480 double ScpChGetTriggerHysteresis( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
7481 #endif
7482 
7494 #ifdef LIBTIEPIE_DYNAMIC
7495 typedef double(*LibTiePieScpChSetTriggerHysteresis_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dHysteresis );
7496 #else
7497 double ScpChSetTriggerHysteresis( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dHysteresis );
7498 #endif
7499 
7509 #ifdef LIBTIEPIE_DYNAMIC
7510 typedef double(*LibTiePieScpChGetTriggerPulseTime_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
7511 #else
7512 double ScpChGetTriggerPulseTime( TpDeviceHandle_t hDevice , uint16_t wCh );
7513 #endif
7514 
7525 #ifdef LIBTIEPIE_DYNAMIC
7526 typedef double(*LibTiePieScpChSetTriggerPulseTime_t)( TpDeviceHandle_t hDevice , uint16_t wCh , double dPulseTime );
7527 #else
7528 double ScpChSetTriggerPulseTime( TpDeviceHandle_t hDevice , uint16_t wCh , double dPulseTime );
7529 #endif
7530 
7537 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7538 
7546 #ifdef LIBTIEPIE_DYNAMIC
7547 typedef bool8_t(*LibTiePieScpHasConnectionTest_t)( TpDeviceHandle_t hDevice );
7548 #else
7549 bool8_t ScpHasConnectionTest( TpDeviceHandle_t hDevice );
7550 #endif
7551 
7560 #ifdef LIBTIEPIE_DYNAMIC
7561 typedef bool8_t(*LibTiePieScpChHasConnectionTest_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
7562 #else
7563 bool8_t ScpChHasConnectionTest( TpDeviceHandle_t hDevice , uint16_t wCh );
7564 #endif
7565 
7574 #ifdef LIBTIEPIE_DYNAMIC
7575 typedef bool8_t(*LibTiePieScpStartConnectionTest_t)( TpDeviceHandle_t hDevice , uint64_t qwChannelMask );
7576 #else
7577 bool8_t ScpStartConnectionTest( TpDeviceHandle_t hDevice , uint64_t qwChannelMask );
7578 #endif
7579 
7581 
7591 #ifdef LIBTIEPIE_DYNAMIC
7592 typedef bool8_t(*LibTiePieScpStartConnectionTestEx_t)( TpDeviceHandle_t hDevice , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
7593 #else
7594 bool8_t ScpStartConnectionTestEx( TpDeviceHandle_t hDevice , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
7595 #endif
7596 
7598 
7606 #ifdef LIBTIEPIE_DYNAMIC
7607 typedef bool8_t(*LibTiePieScpIsConnectionTestCompleted_t)( TpDeviceHandle_t hDevice );
7608 #else
7609 bool8_t ScpIsConnectionTestCompleted( TpDeviceHandle_t hDevice );
7610 #endif
7611 
7621 #ifdef LIBTIEPIE_DYNAMIC
7622 typedef uint16_t(*LibTiePieScpGetConnectionTestData_t)( TpDeviceHandle_t hDevice , LibTiePieTriState_t* pBuffer , uint16_t wChannelCount );
7623 #else
7624 uint16_t ScpGetConnectionTestData( TpDeviceHandle_t hDevice , LibTiePieTriState_t* pBuffer , uint16_t wChannelCount );
7625 #endif
7626 
7639 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7640 
7648 #ifdef LIBTIEPIE_DYNAMIC
7649 typedef uint32_t(*LibTiePieGenGetConnectorType_t)( TpDeviceHandle_t hDevice );
7650 #else
7651 uint32_t GenGetConnectorType( TpDeviceHandle_t hDevice );
7652 #endif
7653 
7661 #ifdef LIBTIEPIE_DYNAMIC
7662 typedef bool8_t(*LibTiePieGenIsDifferential_t)( TpDeviceHandle_t hDevice );
7663 #else
7664 bool8_t GenIsDifferential( TpDeviceHandle_t hDevice );
7665 #endif
7666 
7674 #ifdef LIBTIEPIE_DYNAMIC
7675 typedef double(*LibTiePieGenGetImpedance_t)( TpDeviceHandle_t hDevice );
7676 #else
7677 double GenGetImpedance( TpDeviceHandle_t hDevice );
7678 #endif
7679 
7687 #ifdef LIBTIEPIE_DYNAMIC
7688 typedef uint8_t(*LibTiePieGenGetResolution_t)( TpDeviceHandle_t hDevice );
7689 #else
7690 uint8_t GenGetResolution( TpDeviceHandle_t hDevice );
7691 #endif
7692 
7700 #ifdef LIBTIEPIE_DYNAMIC
7701 typedef double(*LibTiePieGenGetOutputValueMin_t)( TpDeviceHandle_t hDevice );
7702 #else
7703 double GenGetOutputValueMin( TpDeviceHandle_t hDevice );
7704 #endif
7705 
7713 #ifdef LIBTIEPIE_DYNAMIC
7714 typedef double(*LibTiePieGenGetOutputValueMax_t)( TpDeviceHandle_t hDevice );
7715 #else
7716 double GenGetOutputValueMax( TpDeviceHandle_t hDevice );
7717 #endif
7718 
7727 #ifdef LIBTIEPIE_DYNAMIC
7728 typedef void(*LibTiePieGenGetOutputValueMinMax_t)( TpDeviceHandle_t hDevice , double* pMin , double* pMax );
7729 #else
7730 void GenGetOutputValueMinMax( TpDeviceHandle_t hDevice , double* pMin , double* pMax );
7731 #endif
7732 
7740 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7741 
7752 #ifdef LIBTIEPIE_DYNAMIC
7753 typedef bool8_t(*LibTiePieGenIsControllable_t)( TpDeviceHandle_t hDevice );
7754 #else
7755 bool8_t GenIsControllable( TpDeviceHandle_t hDevice );
7756 #endif
7757 
7765 #ifdef LIBTIEPIE_DYNAMIC
7766 typedef bool8_t(*LibTiePieGenGetOutputOn_t)( TpDeviceHandle_t hDevice );
7767 #else
7768 bool8_t GenGetOutputOn( TpDeviceHandle_t hDevice );
7769 #endif
7770 
7779 #ifdef LIBTIEPIE_DYNAMIC
7780 typedef bool8_t(*LibTiePieGenSetOutputOn_t)( TpDeviceHandle_t hDevice , bool8_t bOutputOn );
7781 #else
7782 bool8_t GenSetOutputOn( TpDeviceHandle_t hDevice , bool8_t bOutputOn );
7783 #endif
7784 
7791 #ifdef LIBTIEPIE_DYNAMIC
7792 typedef void(*LibTiePieGenStart_t)( TpDeviceHandle_t hDevice );
7793 #else
7794 void GenStart( TpDeviceHandle_t hDevice );
7795 #endif
7796 
7803 #ifdef LIBTIEPIE_DYNAMIC
7804 typedef void(*LibTiePieGenStop_t)( TpDeviceHandle_t hDevice );
7805 #else
7806 void GenStop( TpDeviceHandle_t hDevice );
7807 #endif
7808 
7820 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7821 
7829 #ifdef LIBTIEPIE_DYNAMIC
7830 typedef bool8_t(*LibTiePieGenIsBurstActive_t)( TpDeviceHandle_t hDevice );
7831 #else
7832 bool8_t GenIsBurstActive( TpDeviceHandle_t hDevice );
7833 #endif
7834 
7842 #ifdef LIBTIEPIE_DYNAMIC
7843 typedef uint64_t(*LibTiePieGenGetBurstCount_t)( TpDeviceHandle_t hDevice );
7844 #else
7845 uint64_t GenGetBurstCount( TpDeviceHandle_t hDevice );
7846 #endif
7847 
7855 #ifdef LIBTIEPIE_DYNAMIC
7856 typedef uint64_t(*LibTiePieGenGetBurstCountMax_t)( TpDeviceHandle_t hDevice );
7857 #else
7858 uint64_t GenGetBurstCountMax( TpDeviceHandle_t hDevice );
7859 #endif
7860 
7870 #ifdef LIBTIEPIE_DYNAMIC
7871 typedef uint64_t(*LibTiePieGenSetBurstCount_t)( TpDeviceHandle_t hDevice , uint64_t qwBurstCount );
7872 #else
7873 uint64_t GenSetBurstCount( TpDeviceHandle_t hDevice , uint64_t qwBurstCount );
7874 #endif
7875 
7883 #ifdef LIBTIEPIE_DYNAMIC
7884 typedef uint64_t(*LibTiePieGenGetBurstModes_t)( TpDeviceHandle_t hDevice );
7885 #else
7886 uint64_t GenGetBurstModes( TpDeviceHandle_t hDevice );
7887 #endif
7888 
7896 #ifdef LIBTIEPIE_DYNAMIC
7897 typedef uint64_t(*LibTiePieGenGetBurstMode_t)( TpDeviceHandle_t hDevice );
7898 #else
7899 uint64_t GenGetBurstMode( TpDeviceHandle_t hDevice );
7900 #endif
7901 
7911 #ifdef LIBTIEPIE_DYNAMIC
7912 typedef uint64_t(*LibTiePieGenSetBurstMode_t)( TpDeviceHandle_t hDevice , uint64_t qwBurstMode );
7913 #else
7914 uint64_t GenSetBurstMode( TpDeviceHandle_t hDevice , uint64_t qwBurstMode );
7915 #endif
7916 
7939 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7940 
7948 #ifdef LIBTIEPIE_DYNAMIC
7949 typedef uint32_t(*LibTiePieGenGetSignalTypes_t)( TpDeviceHandle_t hDevice );
7950 #else
7951 uint32_t GenGetSignalTypes( TpDeviceHandle_t hDevice );
7952 #endif
7953 
7961 #ifdef LIBTIEPIE_DYNAMIC
7962 typedef uint32_t(*LibTiePieGenGetSignalType_t)( TpDeviceHandle_t hDevice );
7963 #else
7964 uint32_t GenGetSignalType( TpDeviceHandle_t hDevice );
7965 #endif
7966 
7978 #ifdef LIBTIEPIE_DYNAMIC
7979 typedef uint32_t(*LibTiePieGenSetSignalType_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType );
7980 #else
7981 uint32_t GenSetSignalType( TpDeviceHandle_t hDevice , uint32_t dwSignalType );
7982 #endif
7983 
7995 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7996 
7998 
8008 #ifdef LIBTIEPIE_DYNAMIC
8009 typedef void(*LibTiePieGenGetAmplitudeMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
8010 #else
8011 void GenGetAmplitudeMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
8012 #endif
8013 
8015 
8023 #ifdef LIBTIEPIE_DYNAMIC
8024 typedef double(*LibTiePieGenGetAmplitudeMax_t)( TpDeviceHandle_t hDevice );
8025 #else
8026 double GenGetAmplitudeMax( TpDeviceHandle_t hDevice );
8027 #endif
8028 
8036 #ifdef LIBTIEPIE_DYNAMIC
8037 typedef double(*LibTiePieGenGetAmplitudeMin_t)( TpDeviceHandle_t hDevice );
8038 #else
8039 double GenGetAmplitudeMin( TpDeviceHandle_t hDevice );
8040 #endif
8041 
8049 #ifdef LIBTIEPIE_DYNAMIC
8050 typedef double(*LibTiePieGenGetAmplitude_t)( TpDeviceHandle_t hDevice );
8051 #else
8052 double GenGetAmplitude( TpDeviceHandle_t hDevice );
8053 #endif
8054 
8065 #ifdef LIBTIEPIE_DYNAMIC
8066 typedef double(*LibTiePieGenSetAmplitude_t)( TpDeviceHandle_t hDevice , double dAmplitude );
8067 #else
8068 double GenSetAmplitude( TpDeviceHandle_t hDevice , double dAmplitude );
8069 #endif
8070 
8072 
8081 #ifdef LIBTIEPIE_DYNAMIC
8082 typedef double(*LibTiePieGenVerifyAmplitude_t)( TpDeviceHandle_t hDevice , double dAmplitude );
8083 #else
8084 double GenVerifyAmplitude( TpDeviceHandle_t hDevice , double dAmplitude );
8085 #endif
8086 
8098 #ifdef LIBTIEPIE_DYNAMIC
8099 typedef double(*LibTiePieGenVerifyAmplitudeEx_t)( TpDeviceHandle_t hDevice , double dAmplitude , uint32_t dwSignalType , uint32_t dwAmplitudeRangeIndex , double dOffset );
8100 #else
8101 double GenVerifyAmplitudeEx( TpDeviceHandle_t hDevice , double dAmplitude , uint32_t dwSignalType , uint32_t dwAmplitudeRangeIndex , double dOffset );
8102 #endif
8103 
8105 
8131 #ifdef LIBTIEPIE_DYNAMIC
8132 typedef uint32_t(*LibTiePieGenGetAmplitudeRanges_t)( TpDeviceHandle_t hDevice , double* pList , uint32_t dwLength );
8133 #else
8134 uint32_t GenGetAmplitudeRanges( TpDeviceHandle_t hDevice , double* pList , uint32_t dwLength );
8135 #endif
8136 
8144 #ifdef LIBTIEPIE_DYNAMIC
8145 typedef double(*LibTiePieGenGetAmplitudeRange_t)( TpDeviceHandle_t hDevice );
8146 #else
8147 double GenGetAmplitudeRange( TpDeviceHandle_t hDevice );
8148 #endif
8149 
8169 #ifdef LIBTIEPIE_DYNAMIC
8170 typedef double(*LibTiePieGenSetAmplitudeRange_t)( TpDeviceHandle_t hDevice , double dRange );
8171 #else
8172 double GenSetAmplitudeRange( TpDeviceHandle_t hDevice , double dRange );
8173 #endif
8174 
8182 #ifdef LIBTIEPIE_DYNAMIC
8183 typedef bool8_t(*LibTiePieGenGetAmplitudeAutoRanging_t)( TpDeviceHandle_t hDevice );
8184 #else
8185 bool8_t GenGetAmplitudeAutoRanging( TpDeviceHandle_t hDevice );
8186 #endif
8187 
8196 #ifdef LIBTIEPIE_DYNAMIC
8197 typedef bool8_t(*LibTiePieGenSetAmplitudeAutoRanging_t)( TpDeviceHandle_t hDevice , bool8_t bEnable );
8198 #else
8199 bool8_t GenSetAmplitudeAutoRanging( TpDeviceHandle_t hDevice , bool8_t bEnable );
8200 #endif
8201 
8214 // Workaround: Without this line Doxygen adds the documentation below to the group above.
8215 
8217 
8227 #ifdef LIBTIEPIE_DYNAMIC
8228 typedef void(*LibTiePieGenGetFrequencyMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwFrequencyMode , uint32_t dwSignalType , double* pMin , double* pMax );
8229 #else
8230 void GenGetFrequencyMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwFrequencyMode , uint32_t dwSignalType , double* pMin , double* pMax );
8231 #endif
8232 
8234 
8244 #ifdef LIBTIEPIE_DYNAMIC
8245 typedef void(*LibTiePieGenGetFrequencyMinMax_t)( TpDeviceHandle_t hDevice , uint32_t dwFrequencyMode , double* pMin , double* pMax );
8246 #else
8247 void GenGetFrequencyMinMax( TpDeviceHandle_t hDevice , uint32_t dwFrequencyMode , double* pMin , double* pMax );
8248 #endif
8249 
8257 #ifdef LIBTIEPIE_DYNAMIC
8258 typedef double(*LibTiePieGenGetFrequencyMin_t)( TpDeviceHandle_t hDevice );
8259 #else
8260 double GenGetFrequencyMin( TpDeviceHandle_t hDevice );
8261 #endif
8262 
8270 #ifdef LIBTIEPIE_DYNAMIC
8271 typedef double(*LibTiePieGenGetFrequencyMax_t)( TpDeviceHandle_t hDevice );
8272 #else
8273 double GenGetFrequencyMax( TpDeviceHandle_t hDevice );
8274 #endif
8275 
8283 #ifdef LIBTIEPIE_DYNAMIC
8284 typedef double(*LibTiePieGenGetFrequency_t)( TpDeviceHandle_t hDevice );
8285 #else
8286 double GenGetFrequency( TpDeviceHandle_t hDevice );
8287 #endif
8288 
8299 #ifdef LIBTIEPIE_DYNAMIC
8300 typedef double(*LibTiePieGenSetFrequency_t)( TpDeviceHandle_t hDevice , double dFrequency );
8301 #else
8302 double GenSetFrequency( TpDeviceHandle_t hDevice , double dFrequency );
8303 #endif
8304 
8306 
8315 #ifdef LIBTIEPIE_DYNAMIC
8316 typedef double(*LibTiePieGenVerifyFrequency_t)( TpDeviceHandle_t hDevice , double dFrequency );
8317 #else
8318 double GenVerifyFrequency( TpDeviceHandle_t hDevice , double dFrequency );
8319 #endif
8320 
8330 #ifdef LIBTIEPIE_DYNAMIC
8331 typedef double(*LibTiePieGenVerifyFrequencyEx_t)( TpDeviceHandle_t hDevice , double dFrequency , uint32_t dwFrequencyMode );
8332 #else
8333 double GenVerifyFrequencyEx( TpDeviceHandle_t hDevice , double dFrequency , uint32_t dwFrequencyMode );
8334 #endif
8335 
8347 #ifdef LIBTIEPIE_DYNAMIC
8348 typedef double(*LibTiePieGenVerifyFrequencyEx2_t)( TpDeviceHandle_t hDevice , double dFrequency , uint32_t dwFrequencyMode , uint32_t dwSignalType , uint64_t qwDataLength );
8349 #else
8350 double GenVerifyFrequencyEx2( TpDeviceHandle_t hDevice , double dFrequency , uint32_t dwFrequencyMode , uint32_t dwSignalType , uint64_t qwDataLength );
8351 #endif
8352 
8354 
8362 #ifdef LIBTIEPIE_DYNAMIC
8363 typedef uint32_t(*LibTiePieGenGetFrequencyModes_t)( TpDeviceHandle_t hDevice );
8364 #else
8365 uint32_t GenGetFrequencyModes( TpDeviceHandle_t hDevice );
8366 #endif
8367 
8369 
8378 #ifdef LIBTIEPIE_DYNAMIC
8379 typedef uint32_t(*LibTiePieGenGetFrequencyModesEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType );
8380 #else
8381 uint32_t GenGetFrequencyModesEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType );
8382 #endif
8383 
8385 
8393 #ifdef LIBTIEPIE_DYNAMIC
8394 typedef uint32_t(*LibTiePieGenGetFrequencyMode_t)( TpDeviceHandle_t hDevice );
8395 #else
8396 uint32_t GenGetFrequencyMode( TpDeviceHandle_t hDevice );
8397 #endif
8398 
8410 #ifdef LIBTIEPIE_DYNAMIC
8411 typedef uint32_t(*LibTiePieGenSetFrequencyMode_t)( TpDeviceHandle_t hDevice , uint32_t dwFrequencyMode );
8412 #else
8413 uint32_t GenSetFrequencyMode( TpDeviceHandle_t hDevice , uint32_t dwFrequencyMode );
8414 #endif
8415 
8425 // Workaround: Without this line Doxygen adds the documentation below to the group above.
8426 
8428 
8438 #ifdef LIBTIEPIE_DYNAMIC
8439 typedef void(*LibTiePieGenGetOffsetMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
8440 #else
8441 void GenGetOffsetMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
8442 #endif
8443 
8445 
8453 #ifdef LIBTIEPIE_DYNAMIC
8454 typedef double(*LibTiePieGenGetOffsetMin_t)( TpDeviceHandle_t hDevice );
8455 #else
8456 double GenGetOffsetMin( TpDeviceHandle_t hDevice );
8457 #endif
8458 
8466 #ifdef LIBTIEPIE_DYNAMIC
8467 typedef double(*LibTiePieGenGetOffsetMax_t)( TpDeviceHandle_t hDevice );
8468 #else
8469 double GenGetOffsetMax( TpDeviceHandle_t hDevice );
8470 #endif
8471 
8479 #ifdef LIBTIEPIE_DYNAMIC
8480 typedef double(*LibTiePieGenGetOffset_t)( TpDeviceHandle_t hDevice );
8481 #else
8482 double GenGetOffset( TpDeviceHandle_t hDevice );
8483 #endif
8484 
8493 #ifdef LIBTIEPIE_DYNAMIC
8494 typedef double(*LibTiePieGenSetOffset_t)( TpDeviceHandle_t hDevice , double dOffset );
8495 #else
8496 double GenSetOffset( TpDeviceHandle_t hDevice , double dOffset );
8497 #endif
8498 
8500 
8509 #ifdef LIBTIEPIE_DYNAMIC
8510 typedef double(*LibTiePieGenVerifyOffset_t)( TpDeviceHandle_t hDevice , double dOffset );
8511 #else
8512 double GenVerifyOffset( TpDeviceHandle_t hDevice , double dOffset );
8513 #endif
8514 
8525 #ifdef LIBTIEPIE_DYNAMIC
8526 typedef double(*LibTiePieGenVerifyOffsetEx_t)( TpDeviceHandle_t hDevice , double dOffset , uint32_t dwSignalType , double dAmplitude );
8527 #else
8528 double GenVerifyOffsetEx( TpDeviceHandle_t hDevice , double dOffset , uint32_t dwSignalType , double dAmplitude );
8529 #endif
8530 
8532 
8542 // Workaround: Without this line Doxygen adds the documentation below to the group above.
8543 
8545 
8555 #ifdef LIBTIEPIE_DYNAMIC
8556 typedef void(*LibTiePieGenGetPhaseMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
8557 #else
8558 void GenGetPhaseMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
8559 #endif
8560 
8562 
8570 #ifdef LIBTIEPIE_DYNAMIC
8571 typedef double(*LibTiePieGenGetPhaseMin_t)( TpDeviceHandle_t hDevice );
8572 #else
8573 double GenGetPhaseMin( TpDeviceHandle_t hDevice );
8574 #endif
8575 
8583 #ifdef LIBTIEPIE_DYNAMIC
8584 typedef double(*LibTiePieGenGetPhaseMax_t)( TpDeviceHandle_t hDevice );
8585 #else
8586 double GenGetPhaseMax( TpDeviceHandle_t hDevice );
8587 #endif
8588 
8596 #ifdef LIBTIEPIE_DYNAMIC
8597 typedef double(*LibTiePieGenGetPhase_t)( TpDeviceHandle_t hDevice );
8598 #else
8599 double GenGetPhase( TpDeviceHandle_t hDevice );
8600 #endif
8601 
8612 #ifdef LIBTIEPIE_DYNAMIC
8613 typedef double(*LibTiePieGenSetPhase_t)( TpDeviceHandle_t hDevice , double dPhase );
8614 #else
8615 double GenSetPhase( TpDeviceHandle_t hDevice , double dPhase );
8616 #endif
8617 
8619 
8628 #ifdef LIBTIEPIE_DYNAMIC
8629 typedef double(*LibTiePieGenVerifyPhase_t)( TpDeviceHandle_t hDevice , double dPhase );
8630 #else
8631 double GenVerifyPhase( TpDeviceHandle_t hDevice , double dPhase );
8632 #endif
8633 
8643 #ifdef LIBTIEPIE_DYNAMIC
8644 typedef double(*LibTiePieGenVerifyPhaseEx_t)( TpDeviceHandle_t hDevice , double dPhase , uint32_t dwSignalType );
8645 #else
8646 double GenVerifyPhaseEx( TpDeviceHandle_t hDevice , double dPhase , uint32_t dwSignalType );
8647 #endif
8648 
8650 
8662 // Workaround: Without this line Doxygen adds the documentation below to the group above.
8663 
8665 
8675 #ifdef LIBTIEPIE_DYNAMIC
8676 typedef void(*LibTiePieGenGetSymmetryMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
8677 #else
8678 void GenGetSymmetryMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
8679 #endif
8680 
8682 
8690 #ifdef LIBTIEPIE_DYNAMIC
8691 typedef double(*LibTiePieGenGetSymmetryMin_t)( TpDeviceHandle_t hDevice );
8692 #else
8693 double GenGetSymmetryMin( TpDeviceHandle_t hDevice );
8694 #endif
8695 
8703 #ifdef LIBTIEPIE_DYNAMIC
8704 typedef double(*LibTiePieGenGetSymmetryMax_t)( TpDeviceHandle_t hDevice );
8705 #else
8706 double GenGetSymmetryMax( TpDeviceHandle_t hDevice );
8707 #endif
8708 
8716 #ifdef LIBTIEPIE_DYNAMIC
8717 typedef double(*LibTiePieGenGetSymmetry_t)( TpDeviceHandle_t hDevice );
8718 #else
8719 double GenGetSymmetry( TpDeviceHandle_t hDevice );
8720 #endif
8721 
8731 #ifdef LIBTIEPIE_DYNAMIC
8732 typedef double(*LibTiePieGenSetSymmetry_t)( TpDeviceHandle_t hDevice , double dSymmetry );
8733 #else
8734 double GenSetSymmetry( TpDeviceHandle_t hDevice , double dSymmetry );
8735 #endif
8736 
8738 
8747 #ifdef LIBTIEPIE_DYNAMIC
8748 typedef double(*LibTiePieGenVerifySymmetry_t)( TpDeviceHandle_t hDevice , double dSymmetry );
8749 #else
8750 double GenVerifySymmetry( TpDeviceHandle_t hDevice , double dSymmetry );
8751 #endif
8752 
8762 #ifdef LIBTIEPIE_DYNAMIC
8763 typedef double(*LibTiePieGenVerifySymmetryEx_t)( TpDeviceHandle_t hDevice , double dSymmetry , uint32_t dwSignalType );
8764 #else
8765 double GenVerifySymmetryEx( TpDeviceHandle_t hDevice , double dSymmetry , uint32_t dwSignalType );
8766 #endif
8767 
8769 
8777 // Workaround: Without this line Doxygen adds the documentation below to the group above.
8778 
8780 
8790 #ifdef LIBTIEPIE_DYNAMIC
8791 typedef void(*LibTiePieGenGetDataLengthMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType , uint64_t* pMin , uint64_t* pMax );
8792 #else
8793 void GenGetDataLengthMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType , uint64_t* pMin , uint64_t* pMax );
8794 #endif
8795 
8797 
8805 #ifdef LIBTIEPIE_DYNAMIC
8806 typedef uint64_t(*LibTiePieGenGetDataLengthMin_t)( TpDeviceHandle_t hDevice );
8807 #else
8808 uint64_t GenGetDataLengthMin( TpDeviceHandle_t hDevice );
8809 #endif
8810 
8818 #ifdef LIBTIEPIE_DYNAMIC
8819 typedef uint64_t(*LibTiePieGenGetDataLengthMax_t)( TpDeviceHandle_t hDevice );
8820 #else
8821 uint64_t GenGetDataLengthMax( TpDeviceHandle_t hDevice );
8822 #endif
8823 
8831 #ifdef LIBTIEPIE_DYNAMIC
8832 typedef uint64_t(*LibTiePieGenGetDataLength_t)( TpDeviceHandle_t hDevice );
8833 #else
8834 uint64_t GenGetDataLength( TpDeviceHandle_t hDevice );
8835 #endif
8836 
8838 
8847 #ifdef LIBTIEPIE_DYNAMIC
8848 typedef uint64_t(*LibTiePieGenVerifyDataLength_t)( TpDeviceHandle_t hDevice , uint64_t qwDataLength );
8849 #else
8850 uint64_t GenVerifyDataLength( TpDeviceHandle_t hDevice , uint64_t qwDataLength );
8851 #endif
8852 
8862 #ifdef LIBTIEPIE_DYNAMIC
8863 typedef uint64_t(*LibTiePieGenVerifyDataLengthEx_t)( TpDeviceHandle_t hDevice , uint64_t qwDataLength , uint32_t dwSignalType );
8864 #else
8865 uint64_t GenVerifyDataLengthEx( TpDeviceHandle_t hDevice , uint64_t qwDataLength , uint32_t dwSignalType );
8866 #endif
8867 
8876 #ifdef LIBTIEPIE_DYNAMIC
8877 typedef uint32_t(*LibTiePieGenGetDataRawType_t)( TpDeviceHandle_t hDevice );
8878 #else
8879 uint32_t GenGetDataRawType( TpDeviceHandle_t hDevice );
8880 #endif
8881 
8883 
8894 #ifdef LIBTIEPIE_DYNAMIC
8895 typedef void(*LibTiePieGenSetData_t)( TpDeviceHandle_t hDevice , float* pBuffer , uint64_t qwSampleCount );
8896 #else
8897 void GenSetData( TpDeviceHandle_t hDevice , float* pBuffer , uint64_t qwSampleCount );
8898 #endif
8899 
8901 
8912 #ifdef LIBTIEPIE_DYNAMIC
8913 typedef void(*LibTiePieGenSetDataEx_t)( TpDeviceHandle_t hDevice , float* pBuffer , uint64_t qwSampleCount , uint32_t dwSignalType , uint32_t dwReserved );
8914 #else
8915 void GenSetDataEx( TpDeviceHandle_t hDevice , float* pBuffer , uint64_t qwSampleCount , uint32_t dwSignalType , uint32_t dwReserved );
8916 #endif
8917 
8927 #ifdef LIBTIEPIE_DYNAMIC
8928 typedef void(*LibTiePieGenSetDataRaw_t)( TpDeviceHandle_t hDevice , void* pBuffer , uint64_t qwSampleCount );
8929 #else
8930 void GenSetDataRaw( TpDeviceHandle_t hDevice , void* pBuffer , uint64_t qwSampleCount );
8931 #endif
8932 
8944 #ifdef LIBTIEPIE_DYNAMIC
8945 typedef void(*LibTiePieGenSetDataRawEx_t)( TpDeviceHandle_t hDevice , void* pBuffer , uint64_t qwSampleCount , uint32_t dwSignalType , uint32_t dwReserved );
8946 #else
8947 void GenSetDataRawEx( TpDeviceHandle_t hDevice , void* pBuffer , uint64_t qwSampleCount , uint32_t dwSignalType , uint32_t dwReserved );
8948 #endif
8949 
8951 
8963 // Workaround: Without this line Doxygen adds the documentation below to the group above.
8964 
8973 #ifdef LIBTIEPIE_DYNAMIC
8974 typedef void(*LibTiePieGenSetCallbackBurstCompleted_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
8975 #else
8976 void GenSetCallbackBurstCompleted( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
8977 #endif
8978 
8986 // Workaround: Without this line Doxygen adds the documentation below to the group above.
8987 
8996 #ifdef LIBTIEPIE_DYNAMIC
8997 typedef void(*LibTiePieGenSetCallbackControllableChanged_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
8998 #else
8999 void GenSetCallbackControllableChanged( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
9000 #endif
9001 
9006 #ifdef __linux__
9007 
9017 #ifdef LIBTIEPIE_DYNAMIC
9018 typedef void(*LibTiePieGenSetEventBurstCompleted_t)( TpDeviceHandle_t hDevice , int fdEvent );
9019 #else
9020 void GenSetEventBurstCompleted( TpDeviceHandle_t hDevice , int fdEvent );
9021 #endif
9022 
9032 #ifdef LIBTIEPIE_DYNAMIC
9033 typedef void(*LibTiePieGenSetEventControllableChanged_t)( TpDeviceHandle_t hDevice , int fdEvent );
9034 #else
9035 void GenSetEventControllableChanged( TpDeviceHandle_t hDevice , int fdEvent );
9036 #endif
9037 
9038 #endif
9039 
9040 #ifdef HAVE_WINDOWS_H
9041 
9051 #ifdef LIBTIEPIE_DYNAMIC
9052 typedef void(*LibTiePieGenSetEventBurstCompleted_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
9053 #else
9054 void GenSetEventBurstCompleted( TpDeviceHandle_t hDevice , HANDLE hEvent );
9055 #endif
9056 
9066 #ifdef LIBTIEPIE_DYNAMIC
9067 typedef void(*LibTiePieGenSetEventControllableChanged_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
9068 #else
9069 void GenSetEventControllableChanged( TpDeviceHandle_t hDevice , HANDLE hEvent );
9070 #endif
9071 
9083 #ifdef LIBTIEPIE_DYNAMIC
9084 typedef void(*LibTiePieGenSetMessageBurstCompleted_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
9085 #else
9086 void GenSetMessageBurstCompleted( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
9087 #endif
9088 
9100 #ifdef LIBTIEPIE_DYNAMIC
9101 typedef void(*LibTiePieGenSetMessageControllableChanged_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
9102 #else
9103 void GenSetMessageControllableChanged( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
9104 #endif
9105 
9106 #endif
9107 
9117 // Workaround: Without this line Doxygen adds the documentation below to the group above.
9118 
9127 #ifdef LIBTIEPIE_DYNAMIC
9128 typedef uint32_t(*LibTiePieGenGetModes_t)( TpDeviceHandle_t hDevice );
9129 #else
9130 uint32_t GenGetModes( TpDeviceHandle_t hDevice );
9131 #endif
9132 
9134 
9144 #ifdef LIBTIEPIE_DYNAMIC
9145 typedef uint32_t(*LibTiePieGenGetModesEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType );
9146 #else
9147 uint32_t GenGetModesEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType );
9148 #endif
9149 
9151 
9160 #ifdef LIBTIEPIE_DYNAMIC
9161 typedef uint32_t(*LibTiePieGenGetMode_t)( TpDeviceHandle_t hDevice );
9162 #else
9163 uint32_t GenGetMode( TpDeviceHandle_t hDevice );
9164 #endif
9165 
9175 #ifdef LIBTIEPIE_DYNAMIC
9176 typedef uint32_t(*LibTiePieGenSetMode_t)( TpDeviceHandle_t hDevice , uint32_t dwMode );
9177 #else
9178 uint32_t GenSetMode( TpDeviceHandle_t hDevice , uint32_t dwMode );
9179 #endif
9180 
9189 #ifdef LIBTIEPIE_DYNAMIC
9190 typedef bool8_t(*LibTiePieGenGetAutoRanging_t)( TpDeviceHandle_t hDevice );
9191 #else
9192 bool8_t GenGetAutoRanging( TpDeviceHandle_t hDevice );
9193 #endif
9194 
9204 #ifdef LIBTIEPIE_DYNAMIC
9205 typedef bool8_t(*LibTiePieGenSetAutoRanging_t)( TpDeviceHandle_t hDevice , bool8_t bEnable );
9206 #else
9207 bool8_t GenSetAutoRanging( TpDeviceHandle_t hDevice , bool8_t bEnable );
9208 #endif
9209 
9220 #ifdef LIBTIEPIE_DYNAMIC
9221 typedef uint32_t(*LibTiePieGenGetRanges_t)( TpDeviceHandle_t hDevice , double* pList , uint32_t dwLength );
9222 #else
9223 uint32_t GenGetRanges( TpDeviceHandle_t hDevice , double* pList , uint32_t dwLength );
9224 #endif
9225 
9234 #ifdef LIBTIEPIE_DYNAMIC
9235 typedef double(*LibTiePieGenGetRange_t)( TpDeviceHandle_t hDevice );
9236 #else
9237 double GenGetRange( TpDeviceHandle_t hDevice );
9238 #endif
9239 
9259 #ifdef LIBTIEPIE_DYNAMIC
9260 typedef double(*LibTiePieGenSetRange_t)( TpDeviceHandle_t hDevice , double dRange );
9261 #else
9262 double GenSetRange( TpDeviceHandle_t hDevice , double dRange );
9263 #endif
9264 
9273 #ifdef LIBTIEPIE_DYNAMIC
9274 typedef uint64_t(*LibTiePieGenGetTriggerSources_t)( TpDeviceHandle_t hDevice );
9275 #else
9276 uint64_t GenGetTriggerSources( TpDeviceHandle_t hDevice );
9277 #endif
9278 
9287 #ifdef LIBTIEPIE_DYNAMIC
9288 typedef uint64_t(*LibTiePieGenGetTriggerSourceAND_t)( TpDeviceHandle_t hDevice );
9289 #else
9290 uint64_t GenGetTriggerSourceAND( TpDeviceHandle_t hDevice );
9291 #endif
9292 
9302 #ifdef LIBTIEPIE_DYNAMIC
9303 typedef uint64_t(*LibTiePieGenSetTriggerSourceAND_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerSourceMask );
9304 #else
9305 uint64_t GenSetTriggerSourceAND( TpDeviceHandle_t hDevice , uint64_t qwTriggerSourceMask );
9306 #endif
9307 
9316 #ifdef LIBTIEPIE_DYNAMIC
9317 typedef uint64_t(*LibTiePieGenGetTriggerSourceOR_t)( TpDeviceHandle_t hDevice );
9318 #else
9319 uint64_t GenGetTriggerSourceOR( TpDeviceHandle_t hDevice );
9320 #endif
9321 
9331 #ifdef LIBTIEPIE_DYNAMIC
9332 typedef uint64_t(*LibTiePieGenSetTriggerSourceOR_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerSourceMask );
9333 #else
9334 uint64_t GenSetTriggerSourceOR( TpDeviceHandle_t hDevice , uint64_t qwTriggerSourceMask );
9335 #endif
9336 
9344 // Workaround: Without this line Doxygen adds the documentation below to the group above.
9345 
9354 #ifdef LIBTIEPIE_DYNAMIC
9355 typedef bool8_t(*LibTiePieI2CIsInternalAddress_t)( TpDeviceHandle_t hDevice , uint16_t wAddress );
9356 #else
9357 bool8_t I2CIsInternalAddress( TpDeviceHandle_t hDevice , uint16_t wAddress );
9358 #endif
9359 
9365 // Workaround: Without this line Doxygen adds the documentation below to the group above.
9366 
9378 #ifdef LIBTIEPIE_DYNAMIC
9379 typedef bool8_t(*LibTiePieI2CRead_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , void* pBuffer , uint32_t dwSize , bool8_t bStop );
9380 #else
9381 bool8_t I2CRead( TpDeviceHandle_t hDevice , uint16_t wAddress , void* pBuffer , uint32_t dwSize , bool8_t bStop );
9382 #endif
9383 
9393 #ifdef LIBTIEPIE_DYNAMIC
9394 typedef bool8_t(*LibTiePieI2CReadByte_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t* pValue );
9395 #else
9396 bool8_t I2CReadByte( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t* pValue );
9397 #endif
9398 
9408 #ifdef LIBTIEPIE_DYNAMIC
9409 typedef bool8_t(*LibTiePieI2CReadWord_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , uint16_t* pValue );
9410 #else
9411 bool8_t I2CReadWord( TpDeviceHandle_t hDevice , uint16_t wAddress , uint16_t* pValue );
9412 #endif
9413 
9420 // Workaround: Without this line Doxygen adds the documentation below to the group above.
9421 
9433 #ifdef LIBTIEPIE_DYNAMIC
9434 typedef bool8_t(*LibTiePieI2CWrite_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , void* pBuffer , uint32_t dwSize , bool8_t bStop );
9435 #else
9436 bool8_t I2CWrite( TpDeviceHandle_t hDevice , uint16_t wAddress , void* pBuffer , uint32_t dwSize , bool8_t bStop );
9437 #endif
9438 
9448 #ifdef LIBTIEPIE_DYNAMIC
9449 typedef bool8_t(*LibTiePieI2CWriteByte_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t byValue );
9450 #else
9451 bool8_t I2CWriteByte( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t byValue );
9452 #endif
9453 
9464 #ifdef LIBTIEPIE_DYNAMIC
9465 typedef bool8_t(*LibTiePieI2CWriteByteByte_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t byValue1 , uint8_t byValue2 );
9466 #else
9467 bool8_t I2CWriteByteByte( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t byValue1 , uint8_t byValue2 );
9468 #endif
9469 
9480 #ifdef LIBTIEPIE_DYNAMIC
9481 typedef bool8_t(*LibTiePieI2CWriteByteWord_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t byValue1 , uint16_t wValue2 );
9482 #else
9483 bool8_t I2CWriteByteWord( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t byValue1 , uint16_t wValue2 );
9484 #endif
9485 
9495 #ifdef LIBTIEPIE_DYNAMIC
9496 typedef bool8_t(*LibTiePieI2CWriteWord_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , uint16_t wValue );
9497 #else
9498 bool8_t I2CWriteWord( TpDeviceHandle_t hDevice , uint16_t wAddress , uint16_t wValue );
9499 #endif
9500 
9507 // Workaround: Without this line Doxygen adds the documentation below to the group above.
9508 
9516 #ifdef LIBTIEPIE_DYNAMIC
9517 typedef double(*LibTiePieI2CGetSpeed_t)( TpDeviceHandle_t hDevice );
9518 #else
9519 double I2CGetSpeed( TpDeviceHandle_t hDevice );
9520 #endif
9521 
9529 #ifdef LIBTIEPIE_DYNAMIC
9530 typedef double(*LibTiePieI2CGetSpeedMax_t)( TpDeviceHandle_t hDevice );
9531 #else
9532 double I2CGetSpeedMax( TpDeviceHandle_t hDevice );
9533 #endif
9534 
9543 #ifdef LIBTIEPIE_DYNAMIC
9544 typedef double(*LibTiePieI2CSetSpeed_t)( TpDeviceHandle_t hDevice , double dSpeed );
9545 #else
9546 double I2CSetSpeed( TpDeviceHandle_t hDevice , double dSpeed );
9547 #endif
9548 
9550 
9559 #ifdef LIBTIEPIE_DYNAMIC
9560 typedef double(*LibTiePieI2CVerifySpeed_t)( TpDeviceHandle_t hDevice , double dSpeed );
9561 #else
9562 double I2CVerifySpeed( TpDeviceHandle_t hDevice , double dSpeed );
9563 #endif
9564 
9566 
9597 // Workaround: Without this line Doxygen adds the documentation below to the group above.
9598 
9607 #ifdef LIBTIEPIE_DYNAMIC
9608 typedef LibTiePiePointerArray_t(*LibTiePieHlpPointerArrayNew_t)( uint32_t dwLength );
9609 #else
9610 LibTiePiePointerArray_t HlpPointerArrayNew( uint32_t dwLength );
9611 #endif
9612 
9619 #ifdef LIBTIEPIE_DYNAMIC
9620 typedef void(*LibTiePieHlpPointerArrayDelete_t)( LibTiePiePointerArray_t pArray );
9621 #else
9622 void HlpPointerArrayDelete( LibTiePiePointerArray_t pArray );
9623 #endif
9624 
9633 #ifdef LIBTIEPIE_DYNAMIC
9634 typedef void(*LibTiePieHlpPointerArraySet_t)( LibTiePiePointerArray_t pArray , uint32_t dwIndex , void* pPointer );
9635 #else
9636 void HlpPointerArraySet( LibTiePiePointerArray_t pArray , uint32_t dwIndex , void* pPointer );
9637 #endif
9638 
9645 #ifdef __cplusplus
9646 }
9647 #endif
9648 
9649 #endif
uint64_t ScpGetData1Ch(TpDeviceHandle_t hDevice, float *pBufferCh1, uint64_t qwStartIndex, uint64_t qwSampleCount)
Get the measurement data for the first channel.
bool8_t I2CReadByte(TpDeviceHandle_t hDevice, uint16_t wAddress, uint8_t *pValue)
Read one byte from the I2C bus.
double ScpChSetTriggerHysteresis(TpDeviceHandle_t hDevice, uint16_t wCh, uint32_t dwIndex, double dHysteresis)
Set channel trigger hysteresis.
void LstSetMessageDeviceAdded(HWND hWnd)
Set a window handle to which a WM_LIBTIEPIE_LST_DEVICEADDED message is sent when a device is added to...
void ScpSetCallbackDataReady(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set callback function which is called when the instrument has data ready.
uint32_t ScpSetClockSource(TpDeviceHandle_t hDevice, uint32_t dwClockSource)
Set clock source.
uint64_t ScpGetTriggerHoldOffCount(TpDeviceHandle_t hDevice)
Get trigger hold off count in samples.
uint64_t GenGetBurstCountMax(TpDeviceHandle_t hDevice)
Get maximum burst count.
TpDate_t DevGetCalibrationDate(TpDeviceHandle_t hDevice)
Get the calibration date of the device.
double ScpChSetProbeGain(TpDeviceHandle_t hDevice, uint16_t wCh, double dProbeGain)
Set the channel probe gain for a specified channel.
bool8_t GenSetOutputOn(TpDeviceHandle_t hDevice, bool8_t bOutputOn)
Enable or disable generator output.
bool8_t ScpIsDataOverflow(TpDeviceHandle_t hDevice)
Check whether a data overflow has occurred.
uint32_t ScpGetMeasureMode(TpDeviceHandle_t hDevice)
Get the current measure mode.
uint64_t DevTrInGetKinds(TpDeviceHandle_t hDevice, uint16_t wInput)
Get the supported trigger kinds for a specified device trigger input.
bool8_t GenSetAutoRanging(TpDeviceHandle_t hDevice, bool8_t bEnable)
Set auto ranging.
TpVersion_t LstDevGetDriverVersion(uint32_t dwIdKind, uint32_t dwId)
Get the version number of the driver currently used by the listed device.
void LstSetCallbackDeviceAdded(TpCallback_t pCallback, void *pData)
Set a callback function which is called when a device is added to the device list.
void GenStart(TpDeviceHandle_t hDevice)
Start generator.
uint64_t GenGetDataLengthMax(TpDeviceHandle_t hDevice)
Get the maximum length of the waveform buffer.
bool8_t DevTrInIsAvailable(TpDeviceHandle_t hDevice, uint16_t wInput)
Check whether a device trigger input is available.
void GenSetEventControllableChanged(TpDeviceHandle_t hDevice, int fdEvent)
Set event file descriptor which is set when the generator controllable property changes.
bool8_t ScpChHasTrigger(TpDeviceHandle_t hDevice, uint16_t wCh)
Check whether the specified channel has trigger support with the currently selected measure mode...
bool8_t DevTrOutSetEnabled(TpDeviceHandle_t hDevice, uint16_t wOutput, bool8_t bEnable)
Set trigger output enable.
uint64_t GenGetTriggerSources(TpDeviceHandle_t hDevice)
Get supported trigger sources.
void DevClose(TpDeviceHandle_t hDevice)
Close a device.
uint32_t DevGetName(TpDeviceHandle_t hDevice, char *pBuffer, uint32_t dwBufferLength)
Get the full name of the device.
uint64_t GenSetTriggerSourceOR(TpDeviceHandle_t hDevice, uint64_t qwTriggerSourceMask)
Set trigger sources OR.
bool8_t ScpChIsDifferential(TpDeviceHandle_t hDevice, uint16_t wCh)
Check whether the channel has a differential input.
bool8_t I2CWriteByte(TpDeviceHandle_t hDevice, uint16_t wAddress, uint8_t byValue)
Write one byte to the I2C bus.
uint64_t ScpGetRecordLengthMax(TpDeviceHandle_t hDevice)
Get the maximum supported record length of a specified device.
double GenGetPhase(TpDeviceHandle_t hDevice)
Get signal phase.
double ScpChSetProbeOffset(TpDeviceHandle_t hDevice, uint16_t wCh, double dProbeOffset)
Set the channel probe offset for a specified channel.
uint64_t ScpChSetCoupling(TpDeviceHandle_t hDevice, uint16_t wCh, uint64_t qwCoupling)
Set the coupling of a specified channel.
void ScpSetEventDataOverflow(TpDeviceHandle_t hDevice, int fdEvent)
double GenGetRange(TpDeviceHandle_t hDevice)
Get range.
uint64_t ScpGetTriggerSourceOR(TpDeviceHandle_t hDevice)
Get trigger sources OR.
uint16_t DevTrGetInputIndexById(TpDeviceHandle_t hDevice, uint32_t dwId)
Get the index of a trigger input identified by its ID.
double ScpChGetProbeGain(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the currently set channel probe gain for a specified channel.
double I2CGetSpeed(TpDeviceHandle_t hDevice)
Get the current I2C bus frequency.
double ScpGetTriggerHysteresis(TpDeviceHandle_t hDevice, uint64_t qwTriggerSource, uint32_t dwIndex)
Get trigger hysteresis.
double ScpChGetDataValueMin(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the minimum value of the input range the current data was measured with.
uint64_t ScpGetRecordLength(TpDeviceHandle_t hDevice)
Get the currently selected record length.
bool8_t ScpIsDataReady(TpDeviceHandle_t hDevice)
Check whether new, unread measured data is available.
double GenGetFrequencyMin(TpDeviceHandle_t hDevice)
Get minimum signal/sample frequency.
bool8_t DevTrInGetEnabled(TpDeviceHandle_t hDevice, uint16_t wInput)
Check whether a device trigger input is enabled.
uint32_t ScpGetMeasureModes(TpDeviceHandle_t hDevice)
Get the supported measure modes for a specified device.
uint64_t ScpGetValidPreSampleCount(TpDeviceHandle_t hDevice)
Get the number of valid pre samples in the measurement.
uint32_t ScpGetClockSource(TpDeviceHandle_t hDevice)
Get clock source.
double ScpSetPreSampleRatio(TpDeviceHandle_t hDevice, double dPreSampleRatio)
Set the pre sample ratio.
double ScpChSetTriggerLevel(TpDeviceHandle_t hDevice, uint16_t wCh, uint32_t dwIndex, double dLevel)
Set channel trigger level.
double GenSetPhase(TpDeviceHandle_t hDevice, double dPhase)
Set signal phase.
TpVersion_t LstDevGetFirmwareVersion(uint32_t dwIdKind, uint32_t dwId)
Get the version number of the firmware currently used by the listed device.
TpVersion_t LibGetVersion(void)
Get the library version number.
uint64_t GenGetDataLengthMin(TpDeviceHandle_t hDevice)
Get the minimum length of the waveform buffer.
bool8_t ScpIsResolutionEnhanced(TpDeviceHandle_t hDevice)
Check whether the currently selected resolution is enhanced or a native resolution of the hardware...
double ScpChGetProbeOffset(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the currently set channel probe offset for a specified channel.
double ScpSetSampleFrequency(TpDeviceHandle_t hDevice, double dSampleFrequency)
Set the sample frequency.
double ScpGetTriggerTimeOut(TpDeviceHandle_t hDevice)
Get the currently selected trigger time out in seconds.
double GenGetAmplitude(TpDeviceHandle_t hDevice)
Get the signal amplitude.
bool8_t ScpChTrSetEnabled(TpDeviceHandle_t hDevice, uint16_t wCh, bool8_t bEnable)
To select a channel as trigger source, set channel trigger enable.
void LstSetEventDeviceRemoved(int fdEvent)
Set an event file descriptor which is set when a device is removed from the device list...
void ScpSetMessageConnectionTestCompleted(TpDeviceHandle_t hDevice, HWND hWnd, WPARAM wParam, LPARAM lParam)
Set window handle to which a WM_LIBTIEPIE_SCP_CONNECTIONTESTCOMPLETED message is sent when the connec...
void LstSetEventDeviceAdded(int fdEvent)
Set an event file descriptor which is set when a device is added to the device list.
TpDeviceHandle_t LstCreateAndOpenCombinedDevice(TpDeviceHandle_t *pDeviceHandles, uint32_t dwCount)
Create and open a combined instrument.
uint32_t GenGetConnectorType(TpDeviceHandle_t hDevice)
Get output connector type.
double ScpChTrGetLevel(TpDeviceHandle_t hDevice, uint16_t wCh, uint32_t dwIndex)
Get the currently set channel trigger level value for a specified channel and trigger level...
bool8_t DevIsRemoved(TpDeviceHandle_t hDevice)
Check whether a device is removed.
uint32_t DevTrInGetName(TpDeviceHandle_t hDevice, uint16_t wInput, char *pBuffer, uint32_t dwBufferLength)
Get the name of a specified device trigger input.
uint32_t ScpSetClockOutput(TpDeviceHandle_t hDevice, uint32_t dwClockOutput)
Set clock output.
const char * LibGetLastStatusStr(void)
Get the last status value as text.
double GenGetOutputValueMax(TpDeviceHandle_t hDevice)
Get maximum output value.
bool8_t ScpIsConnectionTestCompleted(TpDeviceHandle_t hDevice)
Check whether the connection test is completed.
uint64_t DevTrOutGetEvents(TpDeviceHandle_t hDevice, uint16_t wOutput)
Get the supported trigger output events for a specified device trigger output.
uint16_t ScpGetConnectionTestData(TpDeviceHandle_t hDevice, LibTiePieTriState_t *pBuffer, uint16_t wChannelCount)
Get the connection test result data.
uint32_t DevGetNameShortest(TpDeviceHandle_t hDevice, char *pBuffer, uint32_t dwBufferLength)
Get the short name of the device without model postfix.
uint32_t GenSetFrequencyMode(TpDeviceHandle_t hDevice, uint32_t dwFrequencyMode)
Set generator frequency mode.
bool8_t ScpChIsAvailable(TpDeviceHandle_t hDevice, uint16_t wCh)
Check whether the channel is available.
uint64_t ScpGetData2Ch(TpDeviceHandle_t hDevice, float *pBufferCh1, float *pBufferCh2, uint64_t qwStartIndex, uint64_t qwSampleCount)
Get the measurement data for the first two channels.
void ScpStop(TpDeviceHandle_t hDevice)
Stop a running measurement.
uint32_t LstGetDeviceSerialNumber(uint32_t dwIdKind, uint32_t dwId)
Get the serial number of the listed device.
bool8_t I2CRead(TpDeviceHandle_t hDevice, uint16_t wAddress, void *pBuffer, uint32_t dwSize, bool8_t bStop)
Read data from the I2C bus.
double ScpChGetRange(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the currently selected input range for a specified channel.
TpDeviceHandle_t LstOpenDevice(uint32_t dwIdKind, uint32_t dwId, uint32_t dwDeviceType)
Open a device and get a handle to the device.
bool8_t ScpStart(TpDeviceHandle_t hDevice)
Start a single measurement.
uint32_t ScpGetAutoResolutionModes(TpDeviceHandle_t hDevice)
Get the supported auto resolution modes.
uint64_t ScpChTrGetKinds(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the supported channel trigger kinds for a specified channel with the currently selected measure m...
bool8_t GenSetAmplitudeAutoRanging(TpDeviceHandle_t hDevice, bool8_t bEnable)
Set amplitude auto ranging.
LibTiePiePointerArray_t HlpPointerArrayNew(uint32_t dwLength)
Create a new pointer array.
uint64_t GenGetDataLength(TpDeviceHandle_t hDevice)
Get the length of the currently loaded waveform pattern.
uint32_t GenGetFrequencyMode(TpDeviceHandle_t hDevice)
Get generator frequency mode.
bool8_t ScpHasConnectionTest(TpDeviceHandle_t hDevice)
Check whether the instrument supports connection testing.
bool8_t ScpChHasConnectionTest(TpDeviceHandle_t hDevice, uint16_t wCh)
Check whether this channel supports connection testing.
double GenSetAmplitude(TpDeviceHandle_t hDevice, double dAmplitude)
Set the signal amplitude.
uint32_t ScpChTrGetCondition(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the current selected trigger condition for a specified channel.
bool8_t GenGetAmplitudeAutoRanging(TpDeviceHandle_t hDevice)
Get amplitude auto ranging.
void DevSetMessageRemoved(TpDeviceHandle_t hDevice, HWND hWnd, WPARAM wParam, LPARAM lParam)
Set a window handle to which a WM_LIBTIEPIE_DEV_REMOVED message is sent when the device is removed...
void ScpSetCallbackDataOverflow(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set callback function which is called when the instrument has a data overflow.
uint32_t ScpGetSegmentCountMax(TpDeviceHandle_t hDevice)
Get the maximum supported number of segments.
double ScpGetSampleFrequencyMax(TpDeviceHandle_t hDevice)
Get the maximum supported sample frequency of a specified device.
bool8_t ScpIsRunning(TpDeviceHandle_t hDevice)
Check whether the instrument is currently measuring.
uint64_t ScpGetTriggerKinds(TpDeviceHandle_t hDevice, uint64_t qwTriggerSourceMask)
Get supported trigger kinds by source(s).
uint32_t DevGetSerialNumber(TpDeviceHandle_t hDevice)
Get the serial number of the device.
void GenSetMessageControllableChanged(TpDeviceHandle_t hDevice, HWND hWnd, WPARAM wParam, LPARAM lParam)
Set window handle to which a WM_LIBTIEPIE_GEN_CONTROLLABLECHANGED message is sent when the generator ...
uint64_t DevTrOutGetEvent(TpDeviceHandle_t hDevice, uint16_t wOutput)
Get the currently selected trigger output event for a specified device trigger output.
double GenSetRange(TpDeviceHandle_t hDevice, double dRange)
Set range.
uint16_t ScpGetChannelCount(TpDeviceHandle_t hDevice)
Get the number of channels.
TpDate_t LstCbDevGetCalibrationDate(uint32_t dwIdKind, uint32_t dwId, uint32_t dwContainedDeviceSerialNumber)
Get the calibration date of a device contained in a combined device.
uint32_t GenGetSignalTypes(TpDeviceHandle_t hDevice)
Get supported signal types.
uint8_t ScpGetResolution(TpDeviceHandle_t hDevice)
Get the current resolution.
double ScpSetTriggerTimeOut(TpDeviceHandle_t hDevice, double dTimeOut)
Set trigger time out in seconds.
uint32_t ScpGetResolutions(TpDeviceHandle_t hDevice, uint8_t *pList, uint32_t dwLength)
Get an array with the supported resolutions of the specified device.
uint8_t LibTiePieTriState_t
TriState value one byte wide.
Definition: libtiepie.h:1340
double ScpChTrGetHysteresis(TpDeviceHandle_t hDevice, uint16_t wCh, uint32_t dwIndex)
Get the currently set channel trigger hysteresis value for a specified channel and trigger hysteresis...
uint32_t ScpGetClockOutputs(TpDeviceHandle_t hDevice)
Get supported clock outputs.
TpVersion_t LstDevGetRecommendedDriverVersion(uint32_t dwIdKind, uint32_t dwId)
Get the version number of the recommended driver for the listed device.
uint64_t DevTrOutSetEvent(TpDeviceHandle_t hDevice, uint16_t wOutput, uint64_t qwEvent)
Set the trigger output event for a specified device trigger output.
TpVersion_t DevGetFirmwareVersion(TpDeviceHandle_t hDevice)
Get the version number of the firmware used by the device.
bool8_t ScpChTrIsAvailable(TpDeviceHandle_t hDevice, uint16_t wCh)
Check whether the channel trigger for the specified channel is available, with the current oscillosco...
bool8_t I2CWrite(TpDeviceHandle_t hDevice, uint16_t wAddress, void *pBuffer, uint32_t dwSize, bool8_t bStop)
Write data to the I2C bus.
uint8_t GenGetResolution(TpDeviceHandle_t hDevice)
Get resolution.
bool8_t DevTrOutGetEnabled(TpDeviceHandle_t hDevice, uint16_t wOutput)
Check whether a trigger output is enabled.
double ScpChGetImpedance(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the channel input impedance.
void DevSetEventRemoved(TpDeviceHandle_t hDevice, int fdEvent)
Set an event file descriptor which is set when the device is removed.
double ScpSetTriggerHysteresis(TpDeviceHandle_t hDevice, uint64_t qwTriggerSource, uint32_t dwIndex, double dHysteresis)
Set trigger hysteresis.
double GenSetFrequency(TpDeviceHandle_t hDevice, double dFrequency)
Set signal/sample frequency.
void LstSetMessageDeviceRemoved(HWND hWnd)
Set a window handle to which a WM_LIBTIEPIE_LST_DEVICEREMOVED message is sent when a device is remove...
uint16_t DevTrGetInputCount(TpDeviceHandle_t hDevice)
Get the number of trigger inputs.
uint32_t DevTrOutGetId(TpDeviceHandle_t hDevice, uint16_t wOutput)
Get the id of a specified device trigger output.
TpVersion_t DevGetDriverVersion(TpDeviceHandle_t hDevice)
Get the version number of the driver used by the device.
bool8_t ScpChGetAutoRanging(TpDeviceHandle_t hDevice, uint16_t wCh)
Check whether auto ranging is enabled for a specified channel.
uint64_t ScpSetTriggerSourceAND(TpDeviceHandle_t hDevice, uint64_t qwTriggerSourceMask)
Set trigger sources AND.
uint32_t ScpGetSegmentCount(TpDeviceHandle_t hDevice)
Get the currently selected number of segments.
double GenGetOffsetMax(TpDeviceHandle_t hDevice)
Get maximum signal offset.
uint64_t DevTrInSetKind(TpDeviceHandle_t hDevice, uint16_t wInput, uint64_t qwKind)
Set the required trigger kind for a specified device trigger input.
uint32_t ScpChGetConnectorType(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the channel connector type.
void GenSetEventBurstCompleted(TpDeviceHandle_t hDevice, int fdEvent)
Set event file descriptor which is set when the generator burst is completed.
LibTiePieStatus_t LibGetLastStatus(void)
Get the last status value.
uint32_t LstDevGetNameShortest(uint32_t dwIdKind, uint32_t dwId, char *pBuffer, uint32_t dwBufferLength)
Get the short name of the listed device wihout model postfix.
double GenSetAmplitudeRange(TpDeviceHandle_t hDevice, double dRange)
Set the amplitude range.
uint64_t ScpGetTriggerKind(TpDeviceHandle_t hDevice, uint64_t qwTriggerSource)
Get trigger kind.
bool8_t I2CReadWord(TpDeviceHandle_t hDevice, uint16_t wAddress, uint16_t *pValue)
Read one word from the I2C bus.
uint32_t GenSetMode(TpDeviceHandle_t hDevice, uint32_t dwMode)
Set generator frequency mode.
bool8_t ScpChSetAutoRanging(TpDeviceHandle_t hDevice, uint16_t wCh, bool8_t bEnable)
Set auto ranging for a specified channel.
void GenGetOutputValueMinMax(TpDeviceHandle_t hDevice, double *pMin, double *pMax)
Get minimum and/or maximum output value.
double GenGetPhaseMax(TpDeviceHandle_t hDevice)
Get maximum signal phase.
TpVersion_t LstCbDevGetDriverVersion(uint32_t dwIdKind, uint32_t dwId, uint32_t dwContainedDeviceSerialNumber)
Get the driver version of a device contained in a combined device.
uint64_t GenGetBurstCount(TpDeviceHandle_t hDevice)
Get burst count.
uint32_t ScpChTrGetTimeCount(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the number of trigger times for the current trigger kind and trigger condition.
double GenGetImpedance(TpDeviceHandle_t hDevice)
Get output impedance.
uint8_t ScpSetResolution(TpDeviceHandle_t hDevice, uint8_t byResolution)
Set the resolution.
void ScpSetMessageDataReady(TpDeviceHandle_t hDevice, HWND hWnd, WPARAM wParam, LPARAM lParam)
Set window handle to which a WM_LIBTIEPIE_SCP_DATAREADY message is sent when the instrument has data ...
int32_t LibTiePieStatus_t
LibTiePie status code.
Definition: libtiepie.h:1285
bool8_t GenIsDifferential(TpDeviceHandle_t hDevice)
Check whether the output is differential.
uint32_t LstCbDevGetNameShort(uint32_t dwIdKind, uint32_t dwId, uint32_t dwContainedDeviceSerialNumber, char *pBuffer, uint32_t dwBufferLength)
Get the short name of a device contained in a combined device.
uint32_t ScpChTrGetHysteresisCount(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the number of trigger hystereses for a specified channel with the currently selected trigger kind...
uint32_t ScpGetClockOutput(TpDeviceHandle_t hDevice)
Get clock output.
uint32_t GenGetModes(TpDeviceHandle_t hDevice)
Get supported generator frequency modes.
uint16_t DevTrGetOutputIndexById(TpDeviceHandle_t hDevice, uint32_t dwId)
Get the index of trigger output identified by its ID.
TpVersion_t LstCbDevGetFirmwareVersion(uint32_t dwIdKind, uint32_t dwId, uint32_t dwContainedDeviceSerialNumber)
Get the firmware version of a device contained in a combined device.
bool8_t I2CWriteByteWord(TpDeviceHandle_t hDevice, uint16_t wAddress, uint8_t byValue1, uint16_t wValue2)
Write one byte and one word to the I2C bus.
uint64_t GenGetTriggerSourceAND(TpDeviceHandle_t hDevice)
Get trigger sources AND.
uint32_t GenGetSignalType(TpDeviceHandle_t hDevice)
Get signal type.
uint64_t ScpGetData4Ch(TpDeviceHandle_t hDevice, float *pBufferCh1, float *pBufferCh2, float *pBufferCh3, float *pBufferCh4, uint64_t qwStartIndex, uint64_t qwSampleCount)
Get the measurement data for the first four channels.
uint64_t ScpSetTriggerKind(TpDeviceHandle_t hDevice, uint64_t qwTriggerSource, uint64_t qwTriggerKind)
Set trigger kind.
double ScpGetSampleFrequency(TpDeviceHandle_t hDevice)
Get the currently selected sample frequency.
double ScpChGetTriggerHysteresis(TpDeviceHandle_t hDevice, uint16_t wCh, uint32_t dwIndex)
Get channel trigger hysteresis.
uint8_t bool8_t
Boolean value one byte wide.
Definition: libtiepie.h:1339
bool8_t I2CIsInternalAddress(TpDeviceHandle_t hDevice, uint16_t wAddress)
Check whether an address is used internally.
uint64_t ScpSetRecordLength(TpDeviceHandle_t hDevice, uint64_t qwRecordLength)
Set the record length.
void LstSetCallbackDeviceRemoved(TpCallback_t pCallback, void *pData)
Set a callback function which is called when a device is removed from the device list.
uint64_t TpVersion_t
Data type representing a version number.
Definition: libtiepie.h:1317
uint32_t LstGetDeviceProductId(uint32_t dwIdKind, uint32_t dwId)
Get the product id of the listed device.
double GenGetSymmetryMin(TpDeviceHandle_t hDevice)
Get minimum signal symmetry.
double ScpSetTriggerDelay(TpDeviceHandle_t hDevice, double dDelay)
Set trigger delay in seconds.
TpDeviceHandle_t LstOpenOscilloscope(uint32_t dwIdKind, uint32_t dwId)
Open an oscilloscope and get a handle to the oscilloscope.
uint32_t ScpSetMeasureMode(TpDeviceHandle_t hDevice, uint32_t dwMeasureMode)
Set the measure mode.
double ScpChSetTriggerPulseTime(TpDeviceHandle_t hDevice, uint16_t wCh, double dPulseTime)
Set channel trigger pulse time.
uint32_t GenGetMode(TpDeviceHandle_t hDevice)
Get generator frequency mode.
uint64_t ScpGetTriggerSourceAND(TpDeviceHandle_t hDevice)
Get trigger sources AND.
uint32_t DevGetProductId(TpDeviceHandle_t hDevice)
Get the product id of the device.
uint32_t ScpChGetRanges(TpDeviceHandle_t hDevice, uint16_t wCh, double *pList, uint32_t dwLength)
Get the supported input ranges for a specified channel, with the currently selected coupling...
uint32_t LibGetConfig(uint8_t *pBuffer, uint32_t dwBufferLength)
Get the library configuration number.
uint64_t ScpSetTriggerSourceOR(TpDeviceHandle_t hDevice, uint64_t qwTriggerSourceMask)
Set trigger sources OR.
uint64_t ScpChGetTriggerKind(TpDeviceHandle_t hDevice, uint16_t wCh)
Get channel trigger kind.
bool8_t GenIsBurstActive(TpDeviceHandle_t hDevice)
Check whether burst is active.
double GenGetSymmetry(TpDeviceHandle_t hDevice)
Get signal symmetry.
uint64_t ScpChGetCoupling(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the currently set coupling of a specified channel.
TpDate_t LstDevGetCalibrationDate(uint32_t dwIdKind, uint32_t dwId)
Get the calibration date of the listed device.
void ScpSetEventConnectionTestCompleted(TpDeviceHandle_t hDevice, int fdEvent)
double GenGetPhaseMin(TpDeviceHandle_t hDevice)
Get minimum signal phase.
uint32_t GenGetAmplitudeRanges(TpDeviceHandle_t hDevice, double *pList, uint32_t dwLength)
Get the supported amplitude ranges.
uint64_t ScpChTrSetKind(TpDeviceHandle_t hDevice, uint16_t wCh, uint64_t qwTriggerKind)
Set the channel trigger kind for a specified channel.
double ScpChGetDataValueMax(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the maximum value of the input range the current data was measured with.
uint32_t LstDevGetContainedSerialNumbers(uint32_t dwIdKind, uint32_t dwId, uint32_t *pBuffer, uint32_t dwBufferLength)
Get the serial numbers of the individual devices contained in a combined device.
uint64_t ScpGetTriggerSources(TpDeviceHandle_t hDevice)
Get supported trigger sources.
uint32_t GenGetRanges(TpDeviceHandle_t hDevice, double *pList, uint32_t dwLength)
Get supported ranges.
double GenGetAmplitudeMin(TpDeviceHandle_t hDevice)
Get the minimum signal amplitude.
void LstUpdate(uint32_t dwDeviceIdMask)
Update the device list.
void GenSetData(TpDeviceHandle_t hDevice, float *pBuffer, uint64_t qwSampleCount)
Load a waveform pattern into the waveform buffer.
TpDeviceHandle_t LstOpenI2CHost(uint32_t dwIdKind, uint32_t dwId)
Open an I2C host and get a handle to the I2C host.
uint32_t ScpSetSegmentCount(TpDeviceHandle_t hDevice, uint32_t dwSegmentCount)
Set the number of segments.
void LstRemoveDevice(uint32_t dwSerialNumber)
Remove an instrument from the device list so it can be used by other applications.
void GenSetCallbackBurstCompleted(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set callback function which is called when the generator burst is completed.
bool8_t LstGetDeviceCanOpen(uint32_t dwIdKind, uint32_t dwId, uint32_t dwDeviceType)
Check whether the listed device can be opened.
double GenGetAmplitudeRange(TpDeviceHandle_t hDevice)
Get the amplitude range.
void HlpPointerArraySet(LibTiePiePointerArray_t pArray, uint32_t dwIndex, void *pPointer)
Set a pointer in a pointer array.
uint32_t TpDate_t
Data type representing a date.
Definition: libtiepie.h:1338
uint32_t ScpChTrGetLevelCount(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the number of channel trigger levels for a specified channel with the currently selected trigger ...
void GenGetFrequencyMinMax(TpDeviceHandle_t hDevice, uint32_t dwFrequencyMode, double *pMin, double *pMax)
Get minimum and maximum signal/sample frequency by mode.
double GenGetOutputValueMin(TpDeviceHandle_t hDevice)
Get minimum output value.
uint64_t ScpGetTriggerHoldOffCountMax(TpDeviceHandle_t hDevice)
Get maximum trigger hold off count in samples.
void ScpChGetDataValueRange(TpDeviceHandle_t hDevice, uint16_t wCh, double *pMin, double *pMax)
Get the minimum and maximum values of the input range the current data was measured with...
uint32_t DevGetNameShort(TpDeviceHandle_t hDevice, char *pBuffer, uint32_t dwBufferLength)
Get the short name of the device.
double I2CGetSpeedMax(TpDeviceHandle_t hDevice)
Get the maximum I2C bus frequency.
bool8_t ScpChTrGetEnabled(TpDeviceHandle_t hDevice, uint16_t wCh)
Check whether channel trigger for a specified channel is enabled.
uint16_t LstCbScpGetChannelCount(uint32_t dwIdKind, uint32_t dwId, uint32_t dwContainedDeviceSerialNumber)
Get the channel count of an oscilloscope contained in a combined oscilloscope.
double ScpGetTriggerLevel(TpDeviceHandle_t hDevice, uint64_t qwTriggerSource, uint32_t dwIndex)
Get trigger level.
double ScpChTrSetTime(TpDeviceHandle_t hDevice, uint16_t wCh, uint32_t dwIndex, double dTime)
Set the required trigger time value for a specified channel and trigger type.
void GenSetCallbackControllableChanged(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set callback function which is called when the generator controllable property changes.
void ScpSetCallbackConnectionTestCompleted(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set callback function which is called when the connection test is completed.
double ScpChTrGetTime(TpDeviceHandle_t hDevice, uint16_t wCh, uint32_t dwIndex)
Get the current trigger time value for a specified channel and trigger type.
uint32_t LstGetDeviceNameShort(uint32_t dwIdKind, uint32_t dwId, char *pBuffer, uint32_t dwBufferLength)
Get the short name of the listed device.
bool8_t ScpChGetEnabled(TpDeviceHandle_t hDevice, uint16_t wCh)
Check whether a specified channel is currently enabled.
void GenSetMessageBurstCompleted(TpDeviceHandle_t hDevice, HWND hWnd, WPARAM wParam, LPARAM lParam)
Set window handle to which a WM_LIBTIEPIE_GEN_BURSTCOMPLETED message is sent when the generator burst...
bool8_t GenIsControllable(TpDeviceHandle_t hDevice)
Check whether the generator can be controlled.
uint32_t TpDeviceHandle_t
Device handle.
Definition: libtiepie.h:1286
void GenStop(TpDeviceHandle_t hDevice)
Stop generator.
double ScpGetPreSampleRatio(TpDeviceHandle_t hDevice)
Get the current pre sample ratio.
uint32_t LstGetDeviceName(uint32_t dwIdKind, uint32_t dwId, char *pBuffer, uint32_t dwBufferLength)
Get the full name of the listed device.
double GenGetOffsetMin(TpDeviceHandle_t hDevice)
Get minimum signal offset.
double ScpChGetTriggerPulseTime(TpDeviceHandle_t hDevice, uint16_t wCh)
Get channel trigger pulse time.
uint64_t ScpGetData(TpDeviceHandle_t hDevice, float **pBuffers, uint16_t wChannelCount, uint64_t qwStartIndex, uint64_t qwSampleCount)
Get the measurement data for specified channels.
double GenGetOffset(TpDeviceHandle_t hDevice)
Get signal offset.
double GenGetSymmetryMax(TpDeviceHandle_t hDevice)
Get maximum signal symmetry.
double ScpGetTriggerDelay(TpDeviceHandle_t hDevice)
Get the currently selected trigger delay in seconds.
double I2CSetSpeed(TpDeviceHandle_t hDevice, double dSpeed)
Set the I2C bus frequency.
bool8_t ScpStartConnectionTest(TpDeviceHandle_t hDevice, uint64_t qwChannelMask)
Perform a connection test.
double ScpChGetTriggerLevel(TpDeviceHandle_t hDevice, uint16_t wCh, uint32_t dwIndex)
Get channel trigger level.
uint32_t LstGetCount(void)
Get the number of devices in the device list.
uint32_t LstGetDeviceTypes(uint32_t dwIdKind, uint32_t dwId)
Get the device types of the listed device.
void ScpForceTrigger(TpDeviceHandle_t hDevice)
Force a trigger.
uint64_t GenGetBurstModes(TpDeviceHandle_t hDevice)
Get supported generator burst modes.
void HlpPointerArrayDelete(LibTiePiePointerArray_t pArray)
Delete an existing pointer array.
bool8_t GenGetAutoRanging(TpDeviceHandle_t hDevice)
Get auto ranging.
uint16_t DevTrGetOutputCount(TpDeviceHandle_t hDevice)
Get the number of trigger outputs.
bool8_t I2CWriteWord(TpDeviceHandle_t hDevice, uint16_t wAddress, uint16_t wValue)
Write one word to the I2C bus.
uint32_t ScpChTrSetCondition(TpDeviceHandle_t hDevice, uint16_t wCh, uint32_t dwCondition)
Set the trigger condition for a specified channel.
bool8_t DevTrInSetEnabled(TpDeviceHandle_t hDevice, uint16_t wInput, bool8_t bEnable)
To select a device trigger input as trigger source, set trigger input enabled.
uint32_t LstCreateCombinedDevice(TpDeviceHandle_t *pDeviceHandles, uint32_t dwCount)
Create a combined instrument.
double ScpChTrSetHysteresis(TpDeviceHandle_t hDevice, uint16_t wCh, uint32_t dwIndex, double dHysteresis)
Set the channel trigger hysteresis value for a specified channel and trigger hysteresis.
uint32_t GenGetFrequencyModes(TpDeviceHandle_t hDevice)
Get supported generator frequency modes.
uint32_t GenSetSignalType(TpDeviceHandle_t hDevice, uint32_t dwSignalType)
Set signal type.
uint64_t GenSetBurstMode(TpDeviceHandle_t hDevice, uint64_t qwBurstMode)
Set generator burst mode.
double GenGetFrequency(TpDeviceHandle_t hDevice)
Get signal/sample frequency.
bool8_t ScpChSetEnabled(TpDeviceHandle_t hDevice, uint16_t wCh, bool8_t bEnable)
Set channel enable.
void ScpSetEventDataReady(TpDeviceHandle_t hDevice, int fdEvent)
double GenGetFrequencyMax(TpDeviceHandle_t hDevice)
Get maximum signal/sample frequency.
uint64_t ScpChGetTriggerKinds(TpDeviceHandle_t hDevice, uint16_t wCh)
Get supported channel trigger kinds.
double ScpChTrSetLevel(TpDeviceHandle_t hDevice, uint16_t wCh, uint32_t dwIndex, double dLevel)
Set the channel trigger level value for a specified channel and trigger level.
TpDeviceHandle_t LstOpenGenerator(uint32_t dwIdKind, uint32_t dwId)
Open a generator and get a handle to the generator.
uint64_t ScpChGetCouplings(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the supported coupling kinds of a specified channel.
double GenSetOffset(TpDeviceHandle_t hDevice, double dOffset)
Set signal offset.
uint32_t ScpSetAutoResolutionMode(TpDeviceHandle_t hDevice, uint32_t dwAutoResolutionMode)
Set the auto resolution mode.
uint64_t GenSetBurstCount(TpDeviceHandle_t hDevice, uint64_t qwBurstCount)
Set burst count.
uint64_t GenSetTriggerSourceAND(TpDeviceHandle_t hDevice, uint64_t qwTriggerSourceMask)
Set trigger sources AND.
bool8_t I2CWriteByteByte(TpDeviceHandle_t hDevice, uint16_t wAddress, uint8_t byValue1, uint8_t byValue2)
Write two bytes to the I2C bus.
uint32_t DevTrOutGetName(TpDeviceHandle_t hDevice, uint16_t wOutput, char *pBuffer, uint32_t dwBufferLength)
Get the name of a specified device trigger output.
void ScpSetMessageDataOverflow(TpDeviceHandle_t hDevice, HWND hWnd, WPARAM wParam, LPARAM lParam)
Set window handle to which a WM_LIBTIEPIE_SCP_DATAOVERFLOW message is sent when a data overflow has o...
uint32_t LstCbDevGetProductId(uint32_t dwIdKind, uint32_t dwId, uint32_t dwContainedDeviceSerialNumber)
Get the product id of a device contained in a combined device.
uint64_t ScpChSetTriggerKind(TpDeviceHandle_t hDevice, uint16_t wCh, uint64_t qwTriggerKind)
Set channel trigger kind.
void ** LibTiePiePointerArray_t
Pointer array.
Definition: libtiepie.h:1341
void(* TpCallback_t)(void *pData)
Definition: libtiepie.h:753
uint64_t ScpGetData3Ch(TpDeviceHandle_t hDevice, float *pBufferCh1, float *pBufferCh2, float *pBufferCh3, uint64_t qwStartIndex, uint64_t qwSampleCount)
Get the measurement data for the first three channels.
double GenSetSymmetry(TpDeviceHandle_t hDevice, double dSymmetry)
Set signal symmetry.
void DevSetCallbackRemoved(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set a callback function which is called when the device is removed.
uint32_t DevTrInGetId(TpDeviceHandle_t hDevice, uint16_t wInput)
Get the id of a specified device trigger input.
uint32_t DevGetType(TpDeviceHandle_t hDevice)
Get the device type.
uint32_t ScpChTrGetConditions(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the supported trigger conditions for a specified channel with the currently selected trigger kind...
uint32_t LstCbDevGetNameShortest(uint32_t dwIdKind, uint32_t dwId, uint32_t dwContainedDeviceSerialNumber, char *pBuffer, uint32_t dwBufferLength)
Get the short name without model postfix of a device contained in a combined device.
double ScpChSetRange(TpDeviceHandle_t hDevice, uint16_t wCh, double dRange)
Set the input range for a specified channel.
uint32_t ScpGetAutoResolutionMode(TpDeviceHandle_t hDevice)
Get the current auto resolution mode.
double ScpSetTriggerLevel(TpDeviceHandle_t hDevice, uint64_t qwTriggerSource, uint32_t dwIndex, double dLevel)
Set trigger level.
uint64_t ScpSetTriggerHoldOffCount(TpDeviceHandle_t hDevice, uint64_t qwTriggerHoldOffCount)
Set trigger hold off count in samples.
double GenGetAmplitudeMax(TpDeviceHandle_t hDevice)
Get the maximum signal amplitude.
uint64_t DevTrInGetKind(TpDeviceHandle_t hDevice, uint16_t wInput)
Get the currently selected trigger kind for a specified device trigger input.
uint64_t GenGetTriggerSourceOR(TpDeviceHandle_t hDevice)
Get trigger sources OR.
bool8_t GenGetOutputOn(TpDeviceHandle_t hDevice)
Check whether generator output is on.
uint32_t LstCbDevGetName(uint32_t dwIdKind, uint32_t dwId, uint32_t dwContainedDeviceSerialNumber, char *pBuffer, uint32_t dwBufferLength)
Get the full name of a device contained in a combined device.
bool8_t ScpIsTriggered(TpDeviceHandle_t hDevice)
Check whether the instrument has triggered.
uint64_t GenGetBurstMode(TpDeviceHandle_t hDevice)
Get generator burst mode.
uint64_t ScpChTrGetKind(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the currently selected channel trigger kind for a specified channel.
uint32_t ScpGetClockSources(TpDeviceHandle_t hDevice)
Get supported clock sources.