LibTiePie  0.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 #elif defined( _MSC_VER )
41  #include "stdint.h" // Note: You can find a stdint.h for microsoft compilers at http://msinttypes.googlecode.com/svn/trunk/stdint.h .
42 #else
43  #error "C99 stdint types not defined!"
44 #endif
45 
46 // Check whether we are on a Windows NT or Linux based operating system:
47 #if defined( _WIN32 ) || defined( _WIN64 ) || defined( __WIN32__ ) || defined( __TOS_WIN__ ) || defined( __WINDOWS__ )
48  #define LIBTIEPIE_WINDOWS
49  #include <windows.h>
50 #elif defined( __linux__ ) || defined( _NI_linux_ )
51  #define LIBTIEPIE_LINUX
52 #endif
53 
54 #ifdef __cplusplus
55 extern "C"
56 {
57 #endif
58 
59 #define LIBTIEPIE_VERSION_MAJOR 0
60 #define LIBTIEPIE_VERSION_MINOR 5
61 #define LIBTIEPIE_VERSION_RELEASE 0
62 #define LIBTIEPIE_VERSION_NUMBER "0.5.0"
63 #define LIBTIEPIE_VERSION "0.5.0"
64 #define LIBTIEPIE_REVISION 6687
65 
73 #define ARN_COUNT 3
74 
75 
80 #define ARB_DISABLED 0
81 #define ARB_NATIVEONLY 1
82 #define ARB_ALL 2
83 
88 #define AR_UNKNOWN 0
89 
90 #define AR_DISABLED ( 1 << ARB_DISABLED )
91 #define AR_NATIVEONLY ( 1 << ARB_NATIVEONLY )
92 #define AR_ALL ( 1 << ARB_ALL )
93 
94 
99 #define ARM_NONE 0
100 #define ARM_ALL ( ( 1 << ARN_COUNT ) - 1 )
101 #define ARM_ENABLED ( ARM_ALL & ~AR_DISABLED )
102 
113 #define CKN_COUNT 5
114 
115 
120 #define CKB_DCV 0
121 #define CKB_ACV 1
122 #define CKB_DCA 2
123 #define CKB_ACA 3
124 #define CKB_OHM 4
125 
126 
130 #define CK_UNKNOWN 0
131 
132 #define CK_DCV ( 1 << CKB_DCV )
133 #define CK_ACV ( 1 << CKB_ACV )
134 #define CK_DCA ( 1 << CKB_DCA )
135 #define CK_ACA ( 1 << CKB_ACA )
136 #define CK_OHM ( 1 << CKB_OHM )
137 
138 
143 #define CKM_NONE 0
144 #define CKM_V ( CK_DCV | CK_ACV )
145 #define CKM_A ( CK_DCA | CK_ACA )
146 #define CKM_OHM ( CK_OHM )
147 
148 #define CKM_ASYMMETRICRANGE ( CKM_OHM )
149 #define CKM_SYMMETRICRANGE ( CKM_V | CKM_A )
150 
151 
161 #define CON_COUNT 3
162 
163 
168 #define COB_DISABLED 0
169 #define COB_SAMPLE 1
170 #define COB_FIXED 2
171 
172 
176 #define CO_DISABLED ( 1 << COB_DISABLED )
177 #define CO_SAMPLE ( 1 << COB_SAMPLE )
178 #define CO_FIXED ( 1 << COB_FIXED )
179 
180 
185 #define COM_ALL ( ( 1 << CON_COUNT ) - 1 )
186 #define COM_ENABLED ( COM_ALL & ~CO_DISABLED )
187 
198 #define CSN_COUNT 2
199 
200 
205 #define CSB_EXTERNAL 0
206 #define CSB_INTERNAL 1
207 
208 
212 #define CS_EXTERNAL ( 1 << CSB_EXTERNAL )
213 #define CS_INTERNAL ( 1 << CSB_INTERNAL )
214 
215 
224 #define FMN_COUNT 2
225 
226 
231 #define FMB_SIGNALFREQUENCY 0
232 #define FMB_SAMPLEFREQUENCY 1
233 
238 #define FM_UNKNOWN 0x00000000
239 
240 #define FM_SIGNALFREQUENCY ( 1 << FMB_SIGNALFREQUENCY )
241 #define FM_SAMPLEFREQUENCY ( 1 << FMB_SAMPLEFREQUENCY )
242 
248 #define FMM_NONE 0x00000000
249 #define FMM_ALL ( ( 1 << FMN_COUNT ) - 1 )
250 
261 #define GMN_COUNT 12
262 
263 
268 #define GMB_CONTINUOUS 0
269 #define GMB_BURST_COUNT 1
270 #define GMB_GATED_PERIODS 2
271 #define GMB_GATED 3
272 #define GMB_GATED_PERIOD_START 4
273 #define GMB_GATED_PERIOD_FINISH 5
274 #define GMB_GATED_RUN 6
275 #define GMB_GATED_RUN_OUTPUT 7
276 #define GMB_BURST_SAMPLE_COUNT 8
277 #define GMB_BURST_SAMPLE_COUNT_OUTPUT 9
278 #define GMB_BURST_SEGMENT_COUNT 10
279 #define GMB_BURST_SEGMENT_COUNT_OUTPUT 11
280 
285 #define GM_UNKNOWN 0
286 
287 #define GM_CONTINUOUS ( 1 << GMB_CONTINUOUS )
288 #define GM_BURST_COUNT ( 1 << GMB_BURST_COUNT )
289 #define GM_GATED_PERIODS ( 1 << GMB_GATED_PERIODS )
290 #define GM_GATED ( 1 << GMB_GATED )
291 #define GM_GATED_PERIOD_START ( 1 << GMB_GATED_PERIOD_START )
292 #define GM_GATED_PERIOD_FINISH ( 1 << GMB_GATED_PERIOD_FINISH )
293 #define GM_GATED_RUN ( 1 << GMB_GATED_RUN )
294 #define GM_GATED_RUN_OUTPUT ( 1 << GMB_GATED_RUN_OUTPUT )
295 #define GM_BURST_SAMPLE_COUNT ( 1 << GMB_BURST_SAMPLE_COUNT )
296 #define GM_BURST_SAMPLE_COUNT_OUTPUT ( 1 << GMB_BURST_SAMPLE_COUNT_OUTPUT )
297 #define GM_BURST_SEGMENT_COUNT ( 1 << GMB_BURST_SEGMENT_COUNT )
298 #define GM_BURST_SEGMENT_COUNT_OUTPUT ( 1 << GMB_BURST_SEGMENT_COUNT_OUTPUT )
299 
305 #define GMM_NONE 0
306 #define GMM_BURST_COUNT ( GM_BURST_COUNT )
307 #define GMM_GATED ( GM_GATED_PERIODS | GM_GATED | GM_GATED_PERIOD_START | GM_GATED_PERIOD_FINISH | GM_GATED_RUN | GM_GATED_RUN_OUTPUT )
308 #define GMM_BURST_SAMPLE_COUNT ( GM_BURST_SAMPLE_COUNT | GM_BURST_SAMPLE_COUNT_OUTPUT )
309 #define GMM_BURST_SEGMENT_COUNT ( GM_BURST_SEGMENT_COUNT | GM_BURST_SEGMENT_COUNT_OUTPUT )
310 #define GMM_REQUIRE_TRIGGER ( GMM_GATED | GMM_BURST_SAMPLE_COUNT | GMM_BURST_SEGMENT_COUNT )
311 #define GMM_ALL ( ( 1ULL << GMN_COUNT ) - 1 )
312 
313 #define GMM_SIGNALFREQUENCY ( GMM_ALL & ~GMM_BURST_SAMPLE_COUNT )
314 #define GMM_SAMPLEFREQUENCY ( GMM_ALL )
315 
316 #define GMM_SINE ( GMM_SIGNALFREQUENCY )
317 #define GMM_TRIANGLE ( GMM_SIGNALFREQUENCY )
318 #define GMM_SQUARE ( GMM_SIGNALFREQUENCY )
319 #define GMM_DC ( GM_CONTINUOUS )
320 #define GMM_NOISE ( GM_CONTINUOUS | GM_GATED )
321 #define GMM_ARBITRARY ( GMM_SIGNALFREQUENCY | GMM_SAMPLEFREQUENCY )
322 #define GMM_PULSE ( GMM_SIGNALFREQUENCY & ~GMM_BURST_SEGMENT_COUNT )
323 
324 
335 #define GSN_COUNT 4
336 
337 
343 #define GSB_STOPPED 0
344 #define GSB_RUNNING 1
345 #define GSB_BURSTACTIVE 2
346 #define GSB_WAITING 3
347 
352 #define GS_STOPPED ( 1 << GSB_STOPPED )
353 #define GS_RUNNING ( 1 << GSB_RUNNING )
354 #define GS_BURSTACTIVE ( 1 << GSB_BURSTACTIVE )
355 #define GS_WAITING ( 1 << GSB_WAITING )
356 
357 
362 #define GSM_NONE 0
363 #define GSM_ALL ( ( 1UL << GSN_COUNT ) - 1 )
364 
375 #define MMN_COUNT 2
376 
377 
382 #define MMB_STREAM 0
383 #define MMB_BLOCK 1
384 
385 
391 #define MMM_NONE 0
392 #define MMM_ALL ( ( 1 << MMN_COUNT ) - 1 )
393 
398 #define MM_UNKNOWN 0
399 
400 #define MM_STREAM ( 1 << MMB_STREAM )
401 #define MM_BLOCK ( 1 << MMB_BLOCK )
402 
403 
412 #define STN_COUNT 7
413 
414 
419 #define STB_SINE 0
420 #define STB_TRIANGLE 1
421 #define STB_SQUARE 2
422 #define STB_DC 3
423 #define STB_NOISE 4
424 #define STB_ARBITRARY 5
425 #define STB_PULSE 6
426 
431 #define ST_UNKNOWN 0
432 
433 #define ST_SINE ( 1 << STB_SINE )
434 #define ST_TRIANGLE ( 1 << STB_TRIANGLE )
435 #define ST_SQUARE ( 1 << STB_SQUARE )
436 #define ST_DC ( 1 << STB_DC )
437 #define ST_NOISE ( 1 << STB_NOISE )
438 #define ST_ARBITRARY ( 1 << STB_ARBITRARY )
439 #define ST_PULSE ( 1 << STB_PULSE )
440 
446 #define STM_NONE 0
447 
448 #define STM_AMPLITUDE ( ST_SINE | ST_TRIANGLE | ST_SQUARE | ST_NOISE | ST_ARBITRARY | ST_PULSE )
449 #define STM_OFFSET ( ST_SINE | ST_TRIANGLE | ST_SQUARE | ST_DC | ST_NOISE | ST_ARBITRARY | ST_PULSE )
450 #define STM_FREQUENCY ( ST_SINE | ST_TRIANGLE | ST_SQUARE | ST_NOISE | ST_ARBITRARY | ST_PULSE )
451 #define STM_PHASE ( ST_SINE | ST_TRIANGLE | ST_SQUARE | ST_ARBITRARY | ST_PULSE )
452 #define STM_SYMMETRY ( ST_SINE | ST_TRIANGLE | ST_SQUARE )
453 #define STM_WIDTH ( ST_PULSE )
454 #define STM_DATALENGTH ( ST_ARBITRARY )
455 #define STM_DATA ( ST_ARBITRARY )
456 
467 #define TCN_COUNT 3
468 
469 
474 #define TCB_NONE 0
475 #define TCB_SMALLER 1
476 #define TCB_LARGER 2
477 
482 #define TC_UNKNOWN 0
483 
484 #define TC_NONE ( 1 << TCB_NONE )
485 #define TC_SMALLER ( 1 << TCB_SMALLER )
486 #define TC_LARGER ( 1 << TCB_LARGER )
487 
493 #define TCM_NONE 0
494 #define TCM_ALL ( ( 1 << TCN_COUNT ) - 1 )
495 #define TCM_ENABLED ( TCM_ALL & ~TC_NONE )
496 
497 
507 #define TH_ALLPRESAMPLES 0xffffffffffffffffULL
508 
509 
516 #define TRIGGER_IO_ID( pgid , sgid , fid ) ( ( DN_MAIN << TIOID_SHIFT_DN ) | ( ( pgid ) << TIOID_SHIFT_PGID ) | ( ( sgid ) << TIOID_SHIFT_SGID ) | ( ( fid ) << TIOID_SHIFT_FID ) )
517 
518 #define COMBI_TRIGGER_IO_ID( dn , tiid ) ( ( ( dn ) << TIOID_SHIFT_DN ) | ( ( tiid ) & ( ( 1 << TIOID_SHIFT_DN ) - 1 ) ) )
519 
530 #define DN_MAIN 0
531 #define DN_SUB_FIRST 1
532 #define DN_SUB_SECOND 2
533 
534 
540 #define PGID_OSCILLOSCOPE 1
541 #define PGID_GENERATOR 2
542 #define PGID_EXTERNAL_DSUB 3
543 
544 
552 #define SGID_MAIN 0
553 #define SGID_CHANNEL1 1
554 #define SGID_CHANNEL2 2
555 
562 #define SGID_PIN1 1
563 #define SGID_PIN2 2
564 #define SGID_PIN3 3
565 
575 #define FID_SCP_TRIGGERED 0
576 
583 #define FID_GEN_START 0
584 #define FID_GEN_STOP 1
585 #define FID_GEN_NEW_PERIOD 2
586 
593 #define FID_EXT_TRIGGERED 0
594 
602 #define TIOID_SHIFT_PGID 20
603 #define TIOID_SHIFT_DN 24
604 #define TIOID_SHIFT_SGID 8
605 #define TIOID_SHIFT_FID 0
606 
613 #define TIID_INVALID 0
614 #define TIID_EXT1 TRIGGER_IO_ID( PGID_EXTERNAL_DSUB , SGID_PIN1 , FID_EXT_TRIGGERED )
615 #define TIID_EXT2 TRIGGER_IO_ID( PGID_EXTERNAL_DSUB , SGID_PIN2 , FID_EXT_TRIGGERED )
616 #define TIID_EXT3 TRIGGER_IO_ID( PGID_EXTERNAL_DSUB , SGID_PIN3 , FID_EXT_TRIGGERED )
617 #define TIID_GENERATOR_START TRIGGER_IO_ID( PGID_GENERATOR , SGID_MAIN , FID_GEN_START )
618 #define TIID_GENERATOR_STOP TRIGGER_IO_ID( PGID_GENERATOR , SGID_MAIN , FID_GEN_STOP )
619 #define TIID_GENERATOR_NEW_PERIOD TRIGGER_IO_ID( PGID_GENERATOR , SGID_MAIN , FID_GEN_NEW_PERIOD )
620 
627 #define TOID_INVALID 0
628 #define TOID_EXT1 TRIGGER_IO_ID( PGID_EXTERNAL_DSUB , SGID_PIN1 , FID_EXT_TRIGGERED )
629 #define TOID_EXT2 TRIGGER_IO_ID( PGID_EXTERNAL_DSUB , SGID_PIN2 , FID_EXT_TRIGGERED )
630 #define TOID_EXT3 TRIGGER_IO_ID( PGID_EXTERNAL_DSUB , SGID_PIN3 , FID_EXT_TRIGGERED )
631 
642 #define TKN_COUNT 9
643 
644 
649 #define TKB_RISINGEDGE 0
650 #define TKB_FALLINGEDGE 1
651 #define TKB_INWINDOW 2
652 #define TKB_OUTWINDOW 3
653 #define TKB_ANYEDGE 4
654 #define TKB_ENTERWINDOW 5
655 #define TKB_EXITWINDOW 6
656 #define TKB_PULSEWIDTHPOSITIVE 7
657 #define TKB_PULSEWIDTHNEGATIVE 8
658 
663 #define TK_UNKNOWN 0
664 #define TK_RISINGEDGE ( 1ULL << TKB_RISINGEDGE )
665 #define TK_FALLINGEDGE ( 1ULL << TKB_FALLINGEDGE )
666 #define TK_INWINDOW ( 1ULL << TKB_INWINDOW )
667 #define TK_OUTWINDOW ( 1ULL << TKB_OUTWINDOW )
668 #define TK_ANYEDGE ( 1ULL << TKB_ANYEDGE )
669 #define TK_ENTERWINDOW ( 1ULL << TKB_ENTERWINDOW )
670 #define TK_EXITWINDOW ( 1ULL << TKB_EXITWINDOW )
671 #define TK_PULSEWIDTHPOSITIVE ( 1ULL << TKB_PULSEWIDTHPOSITIVE )
672 #define TK_PULSEWIDTHNEGATIVE ( 1ULL << TKB_PULSEWIDTHNEGATIVE )
673 
674 
679 #define TKM_NONE 0
680 #define TKM_EDGE ( TK_RISINGEDGE | TK_FALLINGEDGE | TK_ANYEDGE )
681 #define TKM_WINDOW ( TK_INWINDOW | TK_OUTWINDOW | TK_ENTERWINDOW | TK_EXITWINDOW )
682 #define TKM_PULSEWIDTH ( TK_PULSEWIDTHPOSITIVE | TK_PULSEWIDTHNEGATIVE )
683 #define TKM_TIME ( TKM_PULSEWIDTH | TKM_WINDOW )
684 #define TKM_ALL ( ( 1ULL << TKN_COUNT ) - 1 )
685 
686 
696 #define TO_INFINITY -1
697 
698 
707 #define TOEN_COUNT 3
708 
709 
714 #define TOEB_GENERATOR_START 0
715 #define TOEB_GENERATOR_STOP 1
716 #define TOEB_GENERATOR_NEWPERIOD 2
717 
722 #define TOE_UNKNOWN 0
723 #define TOE_GENERATOR_START ( 1 << TOEB_GENERATOR_START )
724 #define TOE_GENERATOR_STOP ( 1 << TOEB_GENERATOR_STOP )
725 #define TOE_GENERATOR_NEWPERIOD ( 1 << TOEB_GENERATOR_NEWPERIOD )
726 
732 #define TOEM_NONE 0
733 #define TOEM_GENERATOR ( TOE_GENERATOR_START | TOE_GENERATOR_STOP | TOE_GENERATOR_NEWPERIOD )
734 #define TOEM_ALL ( ( 1ULL << TOEN_COUNT ) - 1 )
735 
736 
746 #define PID_NONE 0
747 #define PID_COMBI 2
748 
749 #define PID_HS4 15
750 #define PID_HP3 18
751 #define PID_HS4D 20
752 #define PID_HS5 22
753 
754 
761 #ifdef INCLUDED_BY_MATLAB
762 typedef void* TpCallback_t;
763 #else
764 typedef void(*TpCallback_t)( void* pData );
765 #endif
766 
767 #ifdef INCLUDED_BY_MATLAB
768 typedef void* TpCallbackDeviceList_t;
769 #else
770 typedef void(*TpCallbackDeviceList_t)( void* pData , uint32_t dwDeviceTypes , uint32_t dwSerialNumber );
771 #endif
772 
773 
1098 #define TPDEVICEHANDLE_INVALID 0
1099 
1100 
1106 #define DEVICETYPE_OSCILLOSCOPE 0x00000001
1107 #define DEVICETYPE_GENERATOR 0x00000002
1108 #define DEVICETYPE_I2CHOST 0x00000004
1109 
1110 #define DEVICETYPE_COUNT 3
1111 
1112 
1118 #define IDKIND_PRODUCTID 0x00000001
1119 #define IDKIND_INDEX 0x00000002
1120 #define IDKIND_SERIALNUMBER 0x00000004
1121 
1122 #define IDKIND_COUNT 3
1123 
1124 
1136 #define LIBTIEPIESTATUS_SUCCESS 0
1137 #define LIBTIEPIESTATUS_VALUE_CLIPPED 1
1138 #define LIBTIEPIESTATUS_VALUE_MODIFIED 2
1139 #define LIBTIEPIESTATUS_UNSUCCESSFUL -1
1140 #define LIBTIEPIESTATUS_NOT_SUPPORTED -2
1141 #define LIBTIEPIESTATUS_INVALID_HANDLE -3
1142 #define LIBTIEPIESTATUS_INVALID_VALUE -4
1143 #define LIBTIEPIESTATUS_INVALID_CHANNEL -5
1144 #define LIBTIEPIESTATUS_INVALID_TRIGGER_SOURCE -6
1145 #define LIBTIEPIESTATUS_INVALID_DEVICE_TYPE -7
1146 #define LIBTIEPIESTATUS_INVALID_DEVICE_INDEX -8
1147 #define LIBTIEPIESTATUS_INVALID_PRODUCT_ID -9
1148 #define LIBTIEPIESTATUS_INVALID_DEVICE_SERIALNUMBER -10
1149 #define LIBTIEPIESTATUS_DEVICE_GONE -11
1150 #define LIBTIEPIESTATUS_INTERNAL_ADDRESS -12
1151 #define LIBTIEPIESTATUS_NOT_CONTROLLABLE -13
1152 #define LIBTIEPIESTATUS_BIT_ERROR -14
1153 #define LIBTIEPIESTATUS_NO_ACKNOWLEDGE -15
1154 #define LIBTIEPIESTATUS_INVALID_CONTAINED_DEVICE_SERIALNUMBER -16
1155 #define LIBTIEPIESTATUS_INVALID_INPUT -17
1156 #define LIBTIEPIESTATUS_INVALID_OUTPUT -18
1157 #define LIBTIEPIESTATUS_INVALID_DRIVER -19
1158 #define LIBTIEPIESTATUS_NOT_AVAILABLE -20
1159 #define LIBTIEPIESTATUS_INVALID_FIRMWARE -21
1160 #define LIBTIEPIESTATUS_INVALID_INDEX -22
1161 #define LIBTIEPIESTATUS_INVALID_EEPROM -23
1162 #define LIBTIEPIESTATUS_INITIALIZATION_FAILED -24
1163 #define LIBTIEPIESTATUS_LIBRARY_NOT_INITIALIZED -25
1164 #define LIBTIEPIESTATUS_NO_TRIGGER_ENABLED -26
1165 
1166 
1172 #define CONNECTORTYPE_UNKNOWN 0x00000000
1173 
1174 #define CONNECTORTYPE_BNC 0x00000001
1175 #define CONNECTORTYPE_BANANA 0x00000002
1176 #define CONNECTORTYPE_POWERPLUG 0x00000004
1177 
1178 #define CONNECTORTYPE_COUNT 3
1179 
1180 
1185 #define CONNECTORTYPE_MASK ( CONNECTORTYPE_BNC | CONNECTORTYPE_BANANA | CONNECTORTYPE_POWERPLUG )
1186 
1194 #define DATARAWTYPE_UNKNOWN 0x00000000
1195 
1196 #define DATARAWTYPE_INT8 0x00000001
1197 #define DATARAWTYPE_INT16 0x00000002
1198 #define DATARAWTYPE_INT32 0x00000004
1199 #define DATARAWTYPE_INT64 0x00000008
1200 
1201 #define DATARAWTYPE_UINT8 0x00000010
1202 #define DATARAWTYPE_UINT16 0x00000020
1203 #define DATARAWTYPE_UINT32 0x00000040
1204 #define DATARAWTYPE_UINT64 0x00000080
1205 
1206 #define DATARAWTYPE_FLOAT32 0x00000100
1207 #define DATARAWTYPE_FLOAT64 0x00000200
1208 
1209 #define DATARAWTYPE_COUNT 10
1210 
1211 
1216 #define DATARAWTYPE_MASK_INT ( DATARAWTYPE_INT8 | DATARAWTYPE_INT16 | DATARAWTYPE_INT32 | DATARAWTYPE_INT64 )
1217 #define DATARAWTYPE_MASK_UINT ( DATARAWTYPE_UINT8 | DATARAWTYPE_UINT16 | DATARAWTYPE_UINT32 | DATARAWTYPE_UINT64 )
1218 #define DATARAWTYPE_MASK_FLOAT ( DATARAWTYPE_FLOAT32 | DATARAWTYPE_FLOAT64 )
1219 #define DATARAWTYPE_MASK_FIXED ( DATARAWTYPE_MASK_INT | DATARAWTYPE_MASK_UINT )
1220 
1228 #define BOOL8_FALSE 0
1229 #define BOOL8_TRUE 1
1230 
1237 #define LIBTIEPIE_TRISTATE_UNDEFINED 0
1238 #define LIBTIEPIE_TRISTATE_FALSE 1
1239 #define LIBTIEPIE_TRISTATE_TRUE 2
1240 
1241 
1247 #define LIBTIEPIE_TRIGGERIO_INDEX_INVALID 0xffff
1248 
1255 #define LIBTIEPIE_STRING_LENGTH_NULL_TERMINATED 0xffffffff
1256 
1261 
1268 #define LIBTIEPIE_RANGEINDEX_AUTO 0xffffffff
1269 
1270 
1274 
1281 #define LIBTIEPIE_POINTER_ARRAY_MAX_LENGTH 256
1282 
1290 typedef int32_t LibTiePieStatus_t;
1291 typedef uint32_t TpDeviceHandle_t;
1292 
1322 typedef uint64_t TpVersion_t;
1323 
1343 typedef uint32_t TpDate_t;
1344 typedef uint8_t bool8_t;
1345 typedef uint8_t LibTiePieTriState_t;
1346 typedef void** LibTiePiePointerArray_t;
1347 
1354 #define TPVERSION_MAJOR( x ) ( x >> 48 )
1355 #define TPVERSION_MINOR( x ) ( ( x >> 32 ) & 0xffff )
1356 #define TPVERSION_RELEASE( x ) ( ( x >> 16 ) & 0xffff )
1357 #define TPVERSION_BUILD( x ) ( x & 0xffff )
1358 
1359 #define TPDATE_YEAR( x ) ( x >> 16 )
1360 #define TPDATE_MONTH( x ) ( ( x >> 8 ) & 0xff )
1361 #define TPDATE_DAY( x ) ( x & 0xff )
1362 
1363 
1367 #ifdef LIBTIEPIE_WINDOWS
1368 
1374 #define WM_LIBTIEPIE ( WM_USER + 1337 )
1375 
1376 #define WM_LIBTIEPIE_LST_DEVICEADDED ( WM_LIBTIEPIE + 2 )
1377 #define WM_LIBTIEPIE_LST_DEVICEREMOVED ( WM_LIBTIEPIE + 3 )
1378 
1379 #define WM_LIBTIEPIE_DEV_REMOVED ( WM_LIBTIEPIE + 4 )
1380 
1381 #define WM_LIBTIEPIE_SCP_DATAREADY ( WM_LIBTIEPIE + 0 )
1382 #define WM_LIBTIEPIE_SCP_DATAOVERFLOW ( WM_LIBTIEPIE + 1 )
1383 #define WM_LIBTIEPIE_SCP_CONNECTIONTESTCOMPLETED ( WM_LIBTIEPIE + 7 )
1384 #define WM_LIBTIEPIE_SCP_TRIGGERED ( WM_LIBTIEPIE + 8 )
1385 
1386 #define WM_LIBTIEPIE_GEN_BURSTCOMPLETED ( WM_LIBTIEPIE + 5 )
1387 #define WM_LIBTIEPIE_GEN_CONTROLLABLECHANGED ( WM_LIBTIEPIE + 6 )
1388 
1389 
1393 #endif
1394 
1413 // Workaround: Without this line Doxygen adds the documentation below to the group above.
1414 
1430 #ifdef LIBTIEPIE_DYNAMIC
1431 typedef void(*LibTiePieLibInit_t)( void );
1432 #else
1433 void LibInit( void );
1434 #endif
1435 
1446 #ifdef LIBTIEPIE_DYNAMIC
1447 typedef bool8_t(*LibTiePieLibIsInitialized_t)( void );
1448 #else
1449 bool8_t LibIsInitialized( void );
1450 #endif
1451 
1463 #ifdef LIBTIEPIE_DYNAMIC
1464 typedef void(*LibTiePieLibExit_t)( void );
1465 #else
1466 void LibExit( void );
1467 #endif
1468 
1489 #ifdef LIBTIEPIE_DYNAMIC
1490 typedef TpVersion_t(*LibTiePieLibGetVersion_t)( void );
1491 #else
1492 TpVersion_t LibGetVersion( void );
1493 #endif
1494 
1505 #ifdef LIBTIEPIE_DYNAMIC
1506 typedef const char*(*LibTiePieLibGetVersionExtra_t)( void );
1507 #else
1508 const char* LibGetVersionExtra( void );
1509 #endif
1510 
1535 #ifdef LIBTIEPIE_DYNAMIC
1536 typedef uint32_t(*LibTiePieLibGetConfig_t)( uint8_t* pBuffer , uint32_t dwBufferLength );
1537 #else
1538 uint32_t LibGetConfig( uint8_t* pBuffer , uint32_t dwBufferLength );
1539 #endif
1540 
1558 #ifdef LIBTIEPIE_DYNAMIC
1559 typedef LibTiePieStatus_t(*LibTiePieLibGetLastStatus_t)( void );
1560 #else
1561 LibTiePieStatus_t LibGetLastStatus( void );
1562 #endif
1563 
1581 #ifdef LIBTIEPIE_DYNAMIC
1582 typedef const char*(*LibTiePieLibGetLastStatusStr_t)( void );
1583 #else
1584 const char* LibGetLastStatusStr( void );
1585 #endif
1586 
1678 // Workaround: Without this line Doxygen adds the documentation below to the group above.
1679 
1697 #ifdef LIBTIEPIE_DYNAMIC
1698 typedef void(*LibTiePieLstUpdate_t)( void );
1699 #else
1700 void LstUpdate( void );
1701 #endif
1702 
1714 #ifdef LIBTIEPIE_DYNAMIC
1715 typedef uint32_t(*LibTiePieLstGetCount_t)( void );
1716 #else
1717 uint32_t LstGetCount( void );
1718 #endif
1719 
1759 #ifdef LIBTIEPIE_DYNAMIC
1760 typedef TpDeviceHandle_t(*LibTiePieLstOpenDevice_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwDeviceType );
1761 #else
1762 TpDeviceHandle_t LstOpenDevice( uint32_t dwIdKind , uint32_t dwId , uint32_t dwDeviceType );
1763 #endif
1764 
1802 #ifdef LIBTIEPIE_DYNAMIC
1803 typedef TpDeviceHandle_t(*LibTiePieLstOpenOscilloscope_t)( uint32_t dwIdKind , uint32_t dwId );
1804 #else
1805 TpDeviceHandle_t LstOpenOscilloscope( uint32_t dwIdKind , uint32_t dwId );
1806 #endif
1807 
1845 #ifdef LIBTIEPIE_DYNAMIC
1846 typedef TpDeviceHandle_t(*LibTiePieLstOpenGenerator_t)( uint32_t dwIdKind , uint32_t dwId );
1847 #else
1848 TpDeviceHandle_t LstOpenGenerator( uint32_t dwIdKind , uint32_t dwId );
1849 #endif
1850 
1888 #ifdef LIBTIEPIE_DYNAMIC
1889 typedef TpDeviceHandle_t(*LibTiePieLstOpenI2CHost_t)( uint32_t dwIdKind , uint32_t dwId );
1890 #else
1891 TpDeviceHandle_t LstOpenI2CHost( uint32_t dwIdKind , uint32_t dwId );
1892 #endif
1893 
1914 #ifdef LIBTIEPIE_DYNAMIC
1915 typedef uint32_t(*LibTiePieLstCreateCombinedDevice_t)( const TpDeviceHandle_t* pDeviceHandles , uint32_t dwCount );
1916 #else
1917 uint32_t LstCreateCombinedDevice( const TpDeviceHandle_t* pDeviceHandles , uint32_t dwCount );
1918 #endif
1919 
1941 #ifdef LIBTIEPIE_DYNAMIC
1942 typedef TpDeviceHandle_t(*LibTiePieLstCreateAndOpenCombinedDevice_t)( const TpDeviceHandle_t* pDeviceHandles , uint32_t dwCount );
1943 #else
1944 TpDeviceHandle_t LstCreateAndOpenCombinedDevice( const TpDeviceHandle_t* pDeviceHandles , uint32_t dwCount );
1945 #endif
1946 
1961 #ifdef LIBTIEPIE_DYNAMIC
1962 typedef void(*LibTiePieLstRemoveDevice_t)( uint32_t dwSerialNumber );
1963 #else
1964 void LstRemoveDevice( uint32_t dwSerialNumber );
1965 #endif
1966 
1993 // Workaround: Without this line Doxygen adds the documentation below to the group above.
1994 
2018 #ifdef LIBTIEPIE_DYNAMIC
2019 typedef bool8_t(*LibTiePieLstDevCanOpen_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwDeviceType );
2020 #else
2021 bool8_t LstDevCanOpen( uint32_t dwIdKind , uint32_t dwId , uint32_t dwDeviceType );
2022 #endif
2023 
2042 #ifdef LIBTIEPIE_DYNAMIC
2043 typedef uint32_t(*LibTiePieLstDevGetProductId_t)( uint32_t dwIdKind , uint32_t dwId );
2044 #else
2045 uint32_t LstDevGetProductId( uint32_t dwIdKind , uint32_t dwId );
2046 #endif
2047 
2049 
2068 #ifdef LIBTIEPIE_DYNAMIC
2069 typedef uint32_t(*LibTiePieLstDevGetVendorId_t)( uint32_t dwIdKind , uint32_t dwId );
2070 #else
2071 uint32_t LstDevGetVendorId( uint32_t dwIdKind , uint32_t dwId );
2072 #endif
2073 
2075 
2112 #ifdef LIBTIEPIE_DYNAMIC
2113 typedef uint32_t(*LibTiePieLstDevGetName_t)( uint32_t dwIdKind , uint32_t dwId , char* pBuffer , uint32_t dwBufferLength );
2114 #else
2115 uint32_t LstDevGetName( uint32_t dwIdKind , uint32_t dwId , char* pBuffer , uint32_t dwBufferLength );
2116 #endif
2117 
2154 #ifdef LIBTIEPIE_DYNAMIC
2155 typedef uint32_t(*LibTiePieLstDevGetNameShort_t)( uint32_t dwIdKind , uint32_t dwId , char* pBuffer , uint32_t dwBufferLength );
2156 #else
2157 uint32_t LstDevGetNameShort( uint32_t dwIdKind , uint32_t dwId , char* pBuffer , uint32_t dwBufferLength );
2158 #endif
2159 
2196 #ifdef LIBTIEPIE_DYNAMIC
2197 typedef uint32_t(*LibTiePieLstDevGetNameShortest_t)( uint32_t dwIdKind , uint32_t dwId , char* pBuffer , uint32_t dwBufferLength );
2198 #else
2199 uint32_t LstDevGetNameShortest( uint32_t dwIdKind , uint32_t dwId , char* pBuffer , uint32_t dwBufferLength );
2200 #endif
2201 
2220 #ifdef LIBTIEPIE_DYNAMIC
2221 typedef TpVersion_t(*LibTiePieLstDevGetDriverVersion_t)( uint32_t dwIdKind , uint32_t dwId );
2222 #else
2223 TpVersion_t LstDevGetDriverVersion( uint32_t dwIdKind , uint32_t dwId );
2224 #endif
2225 
2244 #ifdef LIBTIEPIE_DYNAMIC
2245 typedef TpVersion_t(*LibTiePieLstDevGetRecommendedDriverVersion_t)( uint32_t dwIdKind , uint32_t dwId );
2246 #else
2247 TpVersion_t LstDevGetRecommendedDriverVersion( uint32_t dwIdKind , uint32_t dwId );
2248 #endif
2249 
2268 #ifdef LIBTIEPIE_DYNAMIC
2269 typedef TpVersion_t(*LibTiePieLstDevGetFirmwareVersion_t)( uint32_t dwIdKind , uint32_t dwId );
2270 #else
2271 TpVersion_t LstDevGetFirmwareVersion( uint32_t dwIdKind , uint32_t dwId );
2272 #endif
2273 
2275 
2294 #ifdef LIBTIEPIE_DYNAMIC
2295 typedef TpVersion_t(*LibTiePieLstDevGetRecommendedFirmwareVersion_t)( uint32_t dwIdKind , uint32_t dwId );
2296 #else
2297 TpVersion_t LstDevGetRecommendedFirmwareVersion( uint32_t dwIdKind , uint32_t dwId );
2298 #endif
2299 
2301 
2329 #ifdef LIBTIEPIE_DYNAMIC
2330 typedef TpDate_t(*LibTiePieLstDevGetCalibrationDate_t)( uint32_t dwIdKind , uint32_t dwId );
2331 #else
2332 TpDate_t LstDevGetCalibrationDate( uint32_t dwIdKind , uint32_t dwId );
2333 #endif
2334 
2357 #ifdef LIBTIEPIE_DYNAMIC
2358 typedef uint32_t(*LibTiePieLstDevGetSerialNumber_t)( uint32_t dwIdKind , uint32_t dwId );
2359 #else
2360 uint32_t LstDevGetSerialNumber( uint32_t dwIdKind , uint32_t dwId );
2361 #endif
2362 
2401 #ifdef LIBTIEPIE_DYNAMIC
2402 typedef uint32_t(*LibTiePieLstDevGetTypes_t)( uint32_t dwIdKind , uint32_t dwId );
2403 #else
2404 uint32_t LstDevGetTypes( uint32_t dwIdKind , uint32_t dwId );
2405 #endif
2406 
2432 // Workaround: Without this line Doxygen adds the documentation below to the group above.
2433 
2469 #ifdef LIBTIEPIE_DYNAMIC
2470 typedef uint32_t(*LibTiePieLstDevGetContainedSerialNumbers_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t* pBuffer , uint32_t dwBufferLength );
2471 #else
2472 uint32_t LstDevGetContainedSerialNumbers( uint32_t dwIdKind , uint32_t dwId , uint32_t* pBuffer , uint32_t dwBufferLength );
2473 #endif
2474 
2495 #ifdef LIBTIEPIE_DYNAMIC
2496 typedef uint32_t(*LibTiePieLstCbDevGetProductId_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2497 #else
2498 uint32_t LstCbDevGetProductId( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2499 #endif
2500 
2502 
2523 #ifdef LIBTIEPIE_DYNAMIC
2524 typedef uint32_t(*LibTiePieLstCbDevGetVendorId_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2525 #else
2526 uint32_t LstCbDevGetVendorId( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2527 #endif
2528 
2530 
2555 #ifdef LIBTIEPIE_DYNAMIC
2556 typedef uint32_t(*LibTiePieLstCbDevGetName_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber , char* pBuffer , uint32_t dwBufferLength );
2557 #else
2558 uint32_t LstCbDevGetName( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber , char* pBuffer , uint32_t dwBufferLength );
2559 #endif
2560 
2585 #ifdef LIBTIEPIE_DYNAMIC
2586 typedef uint32_t(*LibTiePieLstCbDevGetNameShort_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber , char* pBuffer , uint32_t dwBufferLength );
2587 #else
2588 uint32_t LstCbDevGetNameShort( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber , char* pBuffer , uint32_t dwBufferLength );
2589 #endif
2590 
2615 #ifdef LIBTIEPIE_DYNAMIC
2616 typedef uint32_t(*LibTiePieLstCbDevGetNameShortest_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber , char* pBuffer , uint32_t dwBufferLength );
2617 #else
2618 uint32_t LstCbDevGetNameShortest( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber , char* pBuffer , uint32_t dwBufferLength );
2619 #endif
2620 
2641 #ifdef LIBTIEPIE_DYNAMIC
2642 typedef TpVersion_t(*LibTiePieLstCbDevGetDriverVersion_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2643 #else
2644 TpVersion_t LstCbDevGetDriverVersion( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2645 #endif
2646 
2667 #ifdef LIBTIEPIE_DYNAMIC
2668 typedef TpVersion_t(*LibTiePieLstCbDevGetFirmwareVersion_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2669 #else
2670 TpVersion_t LstCbDevGetFirmwareVersion( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2671 #endif
2672 
2693 #ifdef LIBTIEPIE_DYNAMIC
2694 typedef TpDate_t(*LibTiePieLstCbDevGetCalibrationDate_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2695 #else
2696 TpDate_t LstCbDevGetCalibrationDate( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2697 #endif
2698 
2719 #ifdef LIBTIEPIE_DYNAMIC
2720 typedef uint16_t(*LibTiePieLstCbScpGetChannelCount_t)( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2721 #else
2722 uint16_t LstCbScpGetChannelCount( uint32_t dwIdKind , uint32_t dwId , uint32_t dwContainedDeviceSerialNumber );
2723 #endif
2724 
2742 // Workaround: Without this line Doxygen adds the documentation below to the group above.
2743 
2756 #ifdef LIBTIEPIE_DYNAMIC
2757 typedef void(*LibTiePieLstSetCallbackDeviceAdded_t)( TpCallbackDeviceList_t pCallback , void* pData );
2758 #else
2759 void LstSetCallbackDeviceAdded( TpCallbackDeviceList_t pCallback , void* pData );
2760 #endif
2761 
2769 // Workaround: Without this line Doxygen adds the documentation below to the group above.
2770 
2783 #ifdef LIBTIEPIE_DYNAMIC
2784 typedef void(*LibTiePieLstSetCallbackDeviceRemoved_t)( TpCallbackDeviceList_t pCallback , void* pData );
2785 #else
2786 void LstSetCallbackDeviceRemoved( TpCallbackDeviceList_t pCallback , void* pData );
2787 #endif
2788 
2793 #ifdef LIBTIEPIE_LINUX
2794 
2808 #ifdef LIBTIEPIE_DYNAMIC
2809 typedef void(*LibTiePieLstSetEventDeviceAdded_t)( int fdEvent );
2810 #else
2811 void LstSetEventDeviceAdded( int fdEvent );
2812 #endif
2813 
2827 #ifdef LIBTIEPIE_DYNAMIC
2828 typedef void(*LibTiePieLstSetEventDeviceRemoved_t)( int fdEvent );
2829 #else
2830 void LstSetEventDeviceRemoved( int fdEvent );
2831 #endif
2832 
2833 #endif
2834 
2835 #ifdef LIBTIEPIE_WINDOWS
2836 
2850 #ifdef LIBTIEPIE_DYNAMIC
2851 typedef void(*LibTiePieLstSetEventDeviceAdded_t)( HANDLE hEvent );
2852 #else
2853 void LstSetEventDeviceAdded( HANDLE hEvent );
2854 #endif
2855 
2869 #ifdef LIBTIEPIE_DYNAMIC
2870 typedef void(*LibTiePieLstSetEventDeviceRemoved_t)( HANDLE hEvent );
2871 #else
2872 void LstSetEventDeviceRemoved( HANDLE hEvent );
2873 #endif
2874 
2892 #ifdef LIBTIEPIE_DYNAMIC
2893 typedef void(*LibTiePieLstSetMessageDeviceAdded_t)( HWND hWnd );
2894 #else
2895 void LstSetMessageDeviceAdded( HWND hWnd );
2896 #endif
2897 
2915 #ifdef LIBTIEPIE_DYNAMIC
2916 typedef void(*LibTiePieLstSetMessageDeviceRemoved_t)( HWND hWnd );
2917 #else
2918 void LstSetMessageDeviceRemoved( HWND hWnd );
2919 #endif
2920 
2921 #endif
2922 
2943 // Workaround: Without this line Doxygen adds the documentation below to the group above.
2944 
2963 #ifdef LIBTIEPIE_DYNAMIC
2964 typedef void(*LibTiePieDevClose_t)( TpDeviceHandle_t hDevice );
2965 #else
2966 void DevClose( TpDeviceHandle_t hDevice );
2967 #endif
2968 
2975 // Workaround: Without this line Doxygen adds the documentation below to the group above.
2976 
2990 #ifdef LIBTIEPIE_DYNAMIC
2991 typedef bool8_t(*LibTiePieDevIsRemoved_t)( TpDeviceHandle_t hDevice );
2992 #else
2993 bool8_t DevIsRemoved( TpDeviceHandle_t hDevice );
2994 #endif
2995 
3003 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3004 
3031 #ifdef LIBTIEPIE_DYNAMIC
3032 typedef TpVersion_t(*LibTiePieDevGetDriverVersion_t)( TpDeviceHandle_t hDevice );
3033 #else
3034 TpVersion_t DevGetDriverVersion( TpDeviceHandle_t hDevice );
3035 #endif
3036 
3063 #ifdef LIBTIEPIE_DYNAMIC
3064 typedef TpVersion_t(*LibTiePieDevGetFirmwareVersion_t)( TpDeviceHandle_t hDevice );
3065 #else
3066 TpVersion_t DevGetFirmwareVersion( TpDeviceHandle_t hDevice );
3067 #endif
3068 
3094 #ifdef LIBTIEPIE_DYNAMIC
3095 typedef TpDate_t(*LibTiePieDevGetCalibrationDate_t)( TpDeviceHandle_t hDevice );
3096 #else
3097 TpDate_t DevGetCalibrationDate( TpDeviceHandle_t hDevice );
3098 #endif
3099 
3114 #ifdef LIBTIEPIE_DYNAMIC
3115 typedef uint32_t(*LibTiePieDevGetSerialNumber_t)( TpDeviceHandle_t hDevice );
3116 #else
3117 uint32_t DevGetSerialNumber( TpDeviceHandle_t hDevice );
3118 #endif
3119 
3134 #ifdef LIBTIEPIE_DYNAMIC
3135 typedef uint32_t(*LibTiePieDevGetProductId_t)( TpDeviceHandle_t hDevice );
3136 #else
3137 uint32_t DevGetProductId( TpDeviceHandle_t hDevice );
3138 #endif
3139 
3141 
3157 #ifdef LIBTIEPIE_DYNAMIC
3158 typedef uint32_t(*LibTiePieDevGetVendorId_t)( TpDeviceHandle_t hDevice );
3159 #else
3160 uint32_t DevGetVendorId( TpDeviceHandle_t hDevice );
3161 #endif
3162 
3164 
3180 #ifdef LIBTIEPIE_DYNAMIC
3181 typedef uint32_t(*LibTiePieDevGetType_t)( TpDeviceHandle_t hDevice );
3182 #else
3183 uint32_t DevGetType( TpDeviceHandle_t hDevice );
3184 #endif
3185 
3219 #ifdef LIBTIEPIE_DYNAMIC
3220 typedef uint32_t(*LibTiePieDevGetName_t)( TpDeviceHandle_t hDevice , char* pBuffer , uint32_t dwBufferLength );
3221 #else
3222 uint32_t DevGetName( TpDeviceHandle_t hDevice , char* pBuffer , uint32_t dwBufferLength );
3223 #endif
3224 
3258 #ifdef LIBTIEPIE_DYNAMIC
3259 typedef uint32_t(*LibTiePieDevGetNameShort_t)( TpDeviceHandle_t hDevice , char* pBuffer , uint32_t dwBufferLength );
3260 #else
3261 uint32_t DevGetNameShort( TpDeviceHandle_t hDevice , char* pBuffer , uint32_t dwBufferLength );
3262 #endif
3263 
3297 #ifdef LIBTIEPIE_DYNAMIC
3298 typedef uint32_t(*LibTiePieDevGetNameShortest_t)( TpDeviceHandle_t hDevice , char* pBuffer , uint32_t dwBufferLength );
3299 #else
3300 uint32_t DevGetNameShortest( TpDeviceHandle_t hDevice , char* pBuffer , uint32_t dwBufferLength );
3301 #endif
3302 
3320 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3321 
3337 #ifdef LIBTIEPIE_DYNAMIC
3338 typedef void(*LibTiePieDevSetCallbackRemoved_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
3339 #else
3340 void DevSetCallbackRemoved( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
3341 #endif
3342 
3343 #ifdef LIBTIEPIE_LINUX
3344 
3360 #ifdef LIBTIEPIE_DYNAMIC
3361 typedef void(*LibTiePieDevSetEventRemoved_t)( TpDeviceHandle_t hDevice , int fdEvent );
3362 #else
3363 void DevSetEventRemoved( TpDeviceHandle_t hDevice , int fdEvent );
3364 #endif
3365 
3366 #endif
3367 
3368 #ifdef LIBTIEPIE_WINDOWS
3369 
3385 #ifdef LIBTIEPIE_DYNAMIC
3386 typedef void(*LibTiePieDevSetEventRemoved_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
3387 #else
3388 void DevSetEventRemoved( TpDeviceHandle_t hDevice , HANDLE hEvent );
3389 #endif
3390 
3408 #ifdef LIBTIEPIE_DYNAMIC
3409 typedef void(*LibTiePieDevSetMessageRemoved_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
3410 #else
3411 void DevSetMessageRemoved( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
3412 #endif
3413 
3414 #endif
3415 
3431 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3432 
3448 #ifdef LIBTIEPIE_DYNAMIC
3449 typedef uint16_t(*LibTiePieDevTrGetInputCount_t)( TpDeviceHandle_t hDevice );
3450 #else
3451 uint16_t DevTrGetInputCount( TpDeviceHandle_t hDevice );
3452 #endif
3453 
3474 #ifdef LIBTIEPIE_DYNAMIC
3475 typedef uint16_t(*LibTiePieDevTrGetInputIndexById_t)( TpDeviceHandle_t hDevice , uint32_t dwId );
3476 #else
3477 uint16_t DevTrGetInputIndexById( TpDeviceHandle_t hDevice , uint32_t dwId );
3478 #endif
3479 
3485 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3486 
3499 #ifdef LIBTIEPIE_DYNAMIC
3500 typedef bool8_t(*LibTiePieScpTrInIsTriggered_t)( TpDeviceHandle_t hDevice , uint16_t wInput );
3501 #else
3502 bool8_t ScpTrInIsTriggered( TpDeviceHandle_t hDevice , uint16_t wInput );
3503 #endif
3504 
3514 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3515 
3535 #ifdef LIBTIEPIE_DYNAMIC
3536 typedef bool8_t(*LibTiePieDevTrInGetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wInput );
3537 #else
3538 bool8_t DevTrInGetEnabled( TpDeviceHandle_t hDevice , uint16_t wInput );
3539 #endif
3540 
3561 #ifdef LIBTIEPIE_DYNAMIC
3562 typedef bool8_t(*LibTiePieDevTrInSetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wInput , bool8_t bEnable );
3563 #else
3564 bool8_t DevTrInSetEnabled( TpDeviceHandle_t hDevice , uint16_t wInput , bool8_t bEnable );
3565 #endif
3566 
3579 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3580 
3601 #ifdef LIBTIEPIE_DYNAMIC
3602 typedef uint64_t(*LibTiePieDevTrInGetKinds_t)( TpDeviceHandle_t hDevice , uint16_t wInput );
3603 #else
3604 uint64_t DevTrInGetKinds( TpDeviceHandle_t hDevice , uint16_t wInput );
3605 #endif
3606 
3608 
3631 #ifdef LIBTIEPIE_DYNAMIC
3632 typedef uint64_t(*LibTiePieScpTrInGetKindsEx_t)( TpDeviceHandle_t hDevice , uint16_t wInput , uint32_t dwMeasureMode );
3633 #else
3634 uint64_t ScpTrInGetKindsEx( TpDeviceHandle_t hDevice , uint16_t wInput , uint32_t dwMeasureMode );
3635 #endif
3636 
3638 
3659 #ifdef LIBTIEPIE_DYNAMIC
3660 typedef uint64_t(*LibTiePieDevTrInGetKind_t)( TpDeviceHandle_t hDevice , uint16_t wInput );
3661 #else
3662 uint64_t DevTrInGetKind( TpDeviceHandle_t hDevice , uint16_t wInput );
3663 #endif
3664 
3687 #ifdef LIBTIEPIE_DYNAMIC
3688 typedef uint64_t(*LibTiePieDevTrInSetKind_t)( TpDeviceHandle_t hDevice , uint16_t wInput , uint64_t qwKind );
3689 #else
3690 uint64_t DevTrInSetKind( TpDeviceHandle_t hDevice , uint16_t wInput , uint64_t qwKind );
3691 #endif
3692 
3705 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3706 
3728 #ifdef LIBTIEPIE_DYNAMIC
3729 typedef bool8_t(*LibTiePieDevTrInIsAvailable_t)( TpDeviceHandle_t hDevice , uint16_t wInput );
3730 #else
3731 bool8_t DevTrInIsAvailable( TpDeviceHandle_t hDevice , uint16_t wInput );
3732 #endif
3733 
3735 
3745 #ifdef LIBTIEPIE_DYNAMIC
3746 typedef bool8_t(*LibTiePieScpTrInIsAvailableEx_t)( TpDeviceHandle_t hDevice , uint16_t wInput , uint32_t dwMeasureMode );
3747 #else
3748 bool8_t ScpTrInIsAvailableEx( TpDeviceHandle_t hDevice , uint16_t wInput , uint32_t dwMeasureMode );
3749 #endif
3750 
3752 
3771 #ifdef LIBTIEPIE_DYNAMIC
3772 typedef uint32_t(*LibTiePieDevTrInGetId_t)( TpDeviceHandle_t hDevice , uint16_t wInput );
3773 #else
3774 uint32_t DevTrInGetId( TpDeviceHandle_t hDevice , uint16_t wInput );
3775 #endif
3776 
3796 #ifdef LIBTIEPIE_DYNAMIC
3797 typedef uint32_t(*LibTiePieDevTrInGetName_t)( TpDeviceHandle_t hDevice , uint16_t wInput , char* pBuffer , uint32_t dwBufferLength );
3798 #else
3799 uint32_t DevTrInGetName( TpDeviceHandle_t hDevice , uint16_t wInput , char* pBuffer , uint32_t dwBufferLength );
3800 #endif
3801 
3814 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3815 
3831 #ifdef LIBTIEPIE_DYNAMIC
3832 typedef uint16_t(*LibTiePieDevTrGetOutputCount_t)( TpDeviceHandle_t hDevice );
3833 #else
3834 uint16_t DevTrGetOutputCount( TpDeviceHandle_t hDevice );
3835 #endif
3836 
3855 #ifdef LIBTIEPIE_DYNAMIC
3856 typedef uint16_t(*LibTiePieDevTrGetOutputIndexById_t)( TpDeviceHandle_t hDevice , uint32_t dwId );
3857 #else
3858 uint16_t DevTrGetOutputIndexById( TpDeviceHandle_t hDevice , uint32_t dwId );
3859 #endif
3860 
3869 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3870 
3889 #ifdef LIBTIEPIE_DYNAMIC
3890 typedef bool8_t(*LibTiePieDevTrOutGetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wOutput );
3891 #else
3892 bool8_t DevTrOutGetEnabled( TpDeviceHandle_t hDevice , uint16_t wOutput );
3893 #endif
3894 
3914 #ifdef LIBTIEPIE_DYNAMIC
3915 typedef bool8_t(*LibTiePieDevTrOutSetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wOutput , bool8_t bEnable );
3916 #else
3917 bool8_t DevTrOutSetEnabled( TpDeviceHandle_t hDevice , uint16_t wOutput , bool8_t bEnable );
3918 #endif
3919 
3936 // Workaround: Without this line Doxygen adds the documentation below to the group above.
3937 
3957 #ifdef LIBTIEPIE_DYNAMIC
3958 typedef uint64_t(*LibTiePieDevTrOutGetEvents_t)( TpDeviceHandle_t hDevice , uint16_t wOutput );
3959 #else
3960 uint64_t DevTrOutGetEvents( TpDeviceHandle_t hDevice , uint16_t wOutput );
3961 #endif
3962 
3982 #ifdef LIBTIEPIE_DYNAMIC
3983 typedef uint64_t(*LibTiePieDevTrOutGetEvent_t)( TpDeviceHandle_t hDevice , uint16_t wOutput );
3984 #else
3985 uint64_t DevTrOutGetEvent( TpDeviceHandle_t hDevice , uint16_t wOutput );
3986 #endif
3987 
4009 #ifdef LIBTIEPIE_DYNAMIC
4010 typedef uint64_t(*LibTiePieDevTrOutSetEvent_t)( TpDeviceHandle_t hDevice , uint16_t wOutput , uint64_t qwEvent );
4011 #else
4012 uint64_t DevTrOutSetEvent( TpDeviceHandle_t hDevice , uint16_t wOutput , uint64_t qwEvent );
4013 #endif
4014 
4026 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4027 
4046 #ifdef LIBTIEPIE_DYNAMIC
4047 typedef uint32_t(*LibTiePieDevTrOutGetId_t)( TpDeviceHandle_t hDevice , uint16_t wOutput );
4048 #else
4049 uint32_t DevTrOutGetId( TpDeviceHandle_t hDevice , uint16_t wOutput );
4050 #endif
4051 
4071 #ifdef LIBTIEPIE_DYNAMIC
4072 typedef uint32_t(*LibTiePieDevTrOutGetName_t)( TpDeviceHandle_t hDevice , uint16_t wOutput , char* pBuffer , uint32_t dwBufferLength );
4073 #else
4074 uint32_t DevTrOutGetName( TpDeviceHandle_t hDevice , uint16_t wOutput , char* pBuffer , uint32_t dwBufferLength );
4075 #endif
4076 
4101 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4102 
4117 #ifdef LIBTIEPIE_DYNAMIC
4118 typedef uint16_t(*LibTiePieScpGetChannelCount_t)( TpDeviceHandle_t hDevice );
4119 #else
4120 uint16_t ScpGetChannelCount( TpDeviceHandle_t hDevice );
4121 #endif
4122 
4142 #ifdef LIBTIEPIE_DYNAMIC
4143 typedef bool8_t(*LibTiePieScpChIsAvailable_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4144 #else
4145 bool8_t ScpChIsAvailable( TpDeviceHandle_t hDevice , uint16_t wCh );
4146 #endif
4147 
4149 
4163 #ifdef LIBTIEPIE_DYNAMIC
4164 typedef bool8_t(*LibTiePieScpChIsAvailableEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode , double dSampleFrequency , uint8_t byResolution , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
4165 #else
4166 bool8_t ScpChIsAvailableEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode , double dSampleFrequency , uint8_t byResolution , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
4167 #endif
4168 
4170 
4177 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4178 
4196 #ifdef LIBTIEPIE_DYNAMIC
4197 typedef uint32_t(*LibTiePieScpChGetConnectorType_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4198 #else
4199 uint32_t ScpChGetConnectorType( TpDeviceHandle_t hDevice , uint16_t wCh );
4200 #endif
4201 
4218 #ifdef LIBTIEPIE_DYNAMIC
4219 typedef bool8_t(*LibTiePieScpChIsDifferential_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4220 #else
4221 bool8_t ScpChIsDifferential( TpDeviceHandle_t hDevice , uint16_t wCh );
4222 #endif
4223 
4241 #ifdef LIBTIEPIE_DYNAMIC
4242 typedef double(*LibTiePieScpChGetImpedance_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4243 #else
4244 double ScpChGetImpedance( TpDeviceHandle_t hDevice , uint16_t wCh );
4245 #endif
4246 
4256 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4257 
4276 #ifdef LIBTIEPIE_DYNAMIC
4277 typedef uint64_t(*LibTiePieScpChGetCouplings_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4278 #else
4279 uint64_t ScpChGetCouplings( TpDeviceHandle_t hDevice , uint16_t wCh );
4280 #endif
4281 
4300 #ifdef LIBTIEPIE_DYNAMIC
4301 typedef uint64_t(*LibTiePieScpChGetCoupling_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4302 #else
4303 uint64_t ScpChGetCoupling( TpDeviceHandle_t hDevice , uint16_t wCh );
4304 #endif
4305 
4328 #ifdef LIBTIEPIE_DYNAMIC
4329 typedef uint64_t(*LibTiePieScpChSetCoupling_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwCoupling );
4330 #else
4331 uint64_t ScpChSetCoupling( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwCoupling );
4332 #endif
4333 
4345 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4346 
4364 #ifdef LIBTIEPIE_DYNAMIC
4365 typedef bool8_t(*LibTiePieScpChGetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4366 #else
4367 bool8_t ScpChGetEnabled( TpDeviceHandle_t hDevice , uint16_t wCh );
4368 #endif
4369 
4389 #ifdef LIBTIEPIE_DYNAMIC
4390 typedef bool8_t(*LibTiePieScpChSetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wCh , bool8_t bEnable );
4391 #else
4392 bool8_t ScpChSetEnabled( TpDeviceHandle_t hDevice , uint16_t wCh , bool8_t bEnable );
4393 #endif
4394 
4413 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4414 
4435 #ifdef LIBTIEPIE_DYNAMIC
4436 typedef double(*LibTiePieScpChGetProbeGain_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4437 #else
4438 double ScpChGetProbeGain( TpDeviceHandle_t hDevice , uint16_t wCh );
4439 #endif
4440 
4464 #ifdef LIBTIEPIE_DYNAMIC
4465 typedef double(*LibTiePieScpChSetProbeGain_t)( TpDeviceHandle_t hDevice , uint16_t wCh , double dProbeGain );
4466 #else
4467 double ScpChSetProbeGain( TpDeviceHandle_t hDevice , uint16_t wCh , double dProbeGain );
4468 #endif
4469 
4492 #ifdef LIBTIEPIE_DYNAMIC
4493 typedef double(*LibTiePieScpChGetProbeOffset_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4494 #else
4495 double ScpChGetProbeOffset( TpDeviceHandle_t hDevice , uint16_t wCh );
4496 #endif
4497 
4522 #ifdef LIBTIEPIE_DYNAMIC
4523 typedef double(*LibTiePieScpChSetProbeOffset_t)( TpDeviceHandle_t hDevice , uint16_t wCh , double dProbeOffset );
4524 #else
4525 double ScpChSetProbeOffset( TpDeviceHandle_t hDevice , uint16_t wCh , double dProbeOffset );
4526 #endif
4527 
4546 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4547 
4565 #ifdef LIBTIEPIE_DYNAMIC
4566 typedef bool8_t(*LibTiePieScpChGetAutoRanging_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4567 #else
4568 bool8_t ScpChGetAutoRanging( TpDeviceHandle_t hDevice , uint16_t wCh );
4569 #endif
4570 
4590 #ifdef LIBTIEPIE_DYNAMIC
4591 typedef bool8_t(*LibTiePieScpChSetAutoRanging_t)( TpDeviceHandle_t hDevice , uint16_t wCh , bool8_t bEnable );
4592 #else
4593 bool8_t ScpChSetAutoRanging( TpDeviceHandle_t hDevice , uint16_t wCh , bool8_t bEnable );
4594 #endif
4595 
4634 #ifdef LIBTIEPIE_DYNAMIC
4635 typedef uint32_t(*LibTiePieScpChGetRanges_t)( TpDeviceHandle_t hDevice , uint16_t wCh , double* pList , uint32_t dwLength );
4636 #else
4637 uint32_t ScpChGetRanges( TpDeviceHandle_t hDevice , uint16_t wCh , double* pList , uint32_t dwLength );
4638 #endif
4639 
4641 
4654 #ifdef LIBTIEPIE_DYNAMIC
4655 typedef uint32_t(*LibTiePieScpChGetRangesEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwCoupling , double* pList , uint32_t dwLength );
4656 #else
4657 uint32_t ScpChGetRangesEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwCoupling , double* pList , uint32_t dwLength );
4658 #endif
4659 
4661 
4680 #ifdef LIBTIEPIE_DYNAMIC
4681 typedef double(*LibTiePieScpChGetRange_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4682 #else
4683 double ScpChGetRange( TpDeviceHandle_t hDevice , uint16_t wCh );
4684 #endif
4685 
4721 #ifdef LIBTIEPIE_DYNAMIC
4722 typedef double(*LibTiePieScpChSetRange_t)( TpDeviceHandle_t hDevice , uint16_t wCh , double dRange );
4723 #else
4724 double ScpChSetRange( TpDeviceHandle_t hDevice , uint16_t wCh , double dRange );
4725 #endif
4726 
4742 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4743 
4760 #ifdef LIBTIEPIE_DYNAMIC
4761 typedef bool8_t(*LibTiePieScpChHasTrigger_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4762 #else
4763 bool8_t ScpChHasTrigger( TpDeviceHandle_t hDevice , uint16_t wCh );
4764 #endif
4765 
4767 
4785 #ifdef LIBTIEPIE_DYNAMIC
4786 typedef bool8_t(*LibTiePieScpChHasTriggerEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode );
4787 #else
4788 bool8_t ScpChHasTriggerEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode );
4789 #endif
4790 
4792 
4809 #ifdef LIBTIEPIE_DYNAMIC
4810 typedef bool8_t(*LibTiePieScpChTrIsAvailable_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4811 #else
4812 bool8_t ScpChTrIsAvailable( TpDeviceHandle_t hDevice , uint16_t wCh );
4813 #endif
4814 
4816 
4831 #ifdef LIBTIEPIE_DYNAMIC
4832 typedef bool8_t(*LibTiePieScpChTrIsAvailableEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode , double dSampleFrequency , uint8_t byResolution , const bool8_t* pChannelEnabled , const bool8_t* pChannelTriggerEnabled , uint16_t wChannelCount );
4833 #else
4834 bool8_t ScpChTrIsAvailableEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode , double dSampleFrequency , uint8_t byResolution , const bool8_t* pChannelEnabled , const bool8_t* pChannelTriggerEnabled , uint16_t wChannelCount );
4835 #endif
4836 
4838 
4851 #ifdef LIBTIEPIE_DYNAMIC
4852 typedef bool8_t(*LibTiePieScpChTrIsTriggered_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4853 #else
4854 bool8_t ScpChTrIsTriggered( TpDeviceHandle_t hDevice , uint16_t wCh );
4855 #endif
4856 
4867 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4868 
4887 #ifdef LIBTIEPIE_DYNAMIC
4888 typedef bool8_t(*LibTiePieScpChTrGetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4889 #else
4890 bool8_t ScpChTrGetEnabled( TpDeviceHandle_t hDevice , uint16_t wCh );
4891 #endif
4892 
4912 #ifdef LIBTIEPIE_DYNAMIC
4913 typedef bool8_t(*LibTiePieScpChTrSetEnabled_t)( TpDeviceHandle_t hDevice , uint16_t wCh , bool8_t bEnable );
4914 #else
4915 bool8_t ScpChTrSetEnabled( TpDeviceHandle_t hDevice , uint16_t wCh , bool8_t bEnable );
4916 #endif
4917 
4931 // Workaround: Without this line Doxygen adds the documentation below to the group above.
4932 
4952 #ifdef LIBTIEPIE_DYNAMIC
4953 typedef uint64_t(*LibTiePieScpChTrGetKinds_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4954 #else
4955 uint64_t ScpChTrGetKinds( TpDeviceHandle_t hDevice , uint16_t wCh );
4956 #endif
4957 
4959 
4969 #ifdef LIBTIEPIE_DYNAMIC
4970 typedef uint64_t(*LibTiePieScpChTrGetKindsEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode );
4971 #else
4972 uint64_t ScpChTrGetKindsEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode );
4973 #endif
4974 
4976 
4996 #ifdef LIBTIEPIE_DYNAMIC
4997 typedef uint64_t(*LibTiePieScpChTrGetKind_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
4998 #else
4999 uint64_t ScpChTrGetKind( TpDeviceHandle_t hDevice , uint16_t wCh );
5000 #endif
5001 
5023 #ifdef LIBTIEPIE_DYNAMIC
5024 typedef uint64_t(*LibTiePieScpChTrSetKind_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwTriggerKind );
5025 #else
5026 uint64_t ScpChTrSetKind( TpDeviceHandle_t hDevice , uint16_t wCh , uint64_t qwTriggerKind );
5027 #endif
5028 
5046 // Workaround: Without this line Doxygen adds the documentation below to the group above.
5047 
5068 #ifdef LIBTIEPIE_DYNAMIC
5069 typedef uint32_t(*LibTiePieScpChTrGetLevelCount_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5070 #else
5071 uint32_t ScpChTrGetLevelCount( TpDeviceHandle_t hDevice , uint16_t wCh );
5072 #endif
5073 
5095 #ifdef LIBTIEPIE_DYNAMIC
5096 typedef double(*LibTiePieScpChTrGetLevel_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
5097 #else
5098 double ScpChTrGetLevel( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
5099 #endif
5100 
5124 #ifdef LIBTIEPIE_DYNAMIC
5125 typedef double(*LibTiePieScpChTrSetLevel_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dLevel );
5126 #else
5127 double ScpChTrSetLevel( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dLevel );
5128 #endif
5129 
5147 // Workaround: Without this line Doxygen adds the documentation below to the group above.
5148 
5169 #ifdef LIBTIEPIE_DYNAMIC
5170 typedef uint32_t(*LibTiePieScpChTrGetHysteresisCount_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5171 #else
5172 uint32_t ScpChTrGetHysteresisCount( TpDeviceHandle_t hDevice , uint16_t wCh );
5173 #endif
5174 
5196 #ifdef LIBTIEPIE_DYNAMIC
5197 typedef double(*LibTiePieScpChTrGetHysteresis_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
5198 #else
5199 double ScpChTrGetHysteresis( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
5200 #endif
5201 
5225 #ifdef LIBTIEPIE_DYNAMIC
5226 typedef double(*LibTiePieScpChTrSetHysteresis_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dHysteresis );
5227 #else
5228 double ScpChTrSetHysteresis( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dHysteresis );
5229 #endif
5230 
5244 // Workaround: Without this line Doxygen adds the documentation below to the group above.
5245 
5266 #ifdef LIBTIEPIE_DYNAMIC
5267 typedef uint32_t(*LibTiePieScpChTrGetConditions_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5268 #else
5269 uint32_t ScpChTrGetConditions( TpDeviceHandle_t hDevice , uint16_t wCh );
5270 #endif
5271 
5273 
5282 #ifdef LIBTIEPIE_DYNAMIC
5283 typedef uint32_t(*LibTiePieScpChTrGetConditionsEx_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode , uint64_t qwTriggerKind );
5284 #else
5285 uint32_t ScpChTrGetConditionsEx( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwMeasureMode , uint64_t qwTriggerKind );
5286 #endif
5287 
5289 
5309 #ifdef LIBTIEPIE_DYNAMIC
5310 typedef uint32_t(*LibTiePieScpChTrGetCondition_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5311 #else
5312 uint32_t ScpChTrGetCondition( TpDeviceHandle_t hDevice , uint16_t wCh );
5313 #endif
5314 
5336 #ifdef LIBTIEPIE_DYNAMIC
5337 typedef uint32_t(*LibTiePieScpChTrSetCondition_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwCondition );
5338 #else
5339 uint32_t ScpChTrSetCondition( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwCondition );
5340 #endif
5341 
5357 // Workaround: Without this line Doxygen adds the documentation below to the group above.
5358 
5384 #ifdef LIBTIEPIE_DYNAMIC
5385 typedef uint32_t(*LibTiePieScpChTrGetTimeCount_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5386 #else
5387 uint32_t ScpChTrGetTimeCount( TpDeviceHandle_t hDevice , uint16_t wCh );
5388 #endif
5389 
5415 #ifdef LIBTIEPIE_DYNAMIC
5416 typedef double(*LibTiePieScpChTrGetTime_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
5417 #else
5418 double ScpChTrGetTime( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex );
5419 #endif
5420 
5449 #ifdef LIBTIEPIE_DYNAMIC
5450 typedef double(*LibTiePieScpChTrSetTime_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime );
5451 #else
5452 double ScpChTrSetTime( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime );
5453 #endif
5454 
5456 
5471 #ifdef LIBTIEPIE_DYNAMIC
5472 typedef double(*LibTiePieScpChTrVerifyTime_t)( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime );
5473 #else
5474 double ScpChTrVerifyTime( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime );
5475 #endif
5476 
5493 #ifdef LIBTIEPIE_DYNAMIC
5494 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 );
5495 #else
5496 double ScpChTrVerifyTimeEx2( TpDeviceHandle_t hDevice , uint16_t wCh , uint32_t dwIndex , double dTime , uint32_t dwMeasureMode , double dSampleFrequency , uint64_t qwTriggerKind , uint32_t dwTriggerCondition );
5497 #endif
5498 
5500 
5558 // Workaround: Without this line Doxygen adds the documentation below to the group above.
5559 
5618 #ifdef INCLUDED_BY_MATLAB
5619 #ifdef LIBTIEPIE_DYNAMIC
5620 typedef uint64_t(*LibTiePieScpGetData_t)( TpDeviceHandle_t hDevice , void** pBuffers , uint16_t wChannelCount , uint64_t qwStartIndex , uint64_t qwSampleCount );
5621 #else
5622 uint64_t ScpGetData( TpDeviceHandle_t hDevice , void** pBuffers , uint16_t wChannelCount , uint64_t qwStartIndex , uint64_t qwSampleCount );
5623 #endif
5624 #else
5625 #ifdef LIBTIEPIE_DYNAMIC
5626 typedef uint64_t(*LibTiePieScpGetData_t)( TpDeviceHandle_t hDevice , float** pBuffers , uint16_t wChannelCount , uint64_t qwStartIndex , uint64_t qwSampleCount );
5627 #else
5628 uint64_t ScpGetData( TpDeviceHandle_t hDevice , float** pBuffers , uint16_t wChannelCount , uint64_t qwStartIndex , uint64_t qwSampleCount );
5629 #endif
5630 #endif
5631 
5653 #ifdef LIBTIEPIE_DYNAMIC
5654 typedef uint64_t(*LibTiePieScpGetData1Ch_t)( TpDeviceHandle_t hDevice , float* pBufferCh1 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5655 #else
5656 uint64_t ScpGetData1Ch( TpDeviceHandle_t hDevice , float* pBufferCh1 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5657 #endif
5658 
5681 #ifdef LIBTIEPIE_DYNAMIC
5682 typedef uint64_t(*LibTiePieScpGetData2Ch_t)( TpDeviceHandle_t hDevice , float* pBufferCh1 , float* pBufferCh2 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5683 #else
5684 uint64_t ScpGetData2Ch( TpDeviceHandle_t hDevice , float* pBufferCh1 , float* pBufferCh2 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5685 #endif
5686 
5710 #ifdef LIBTIEPIE_DYNAMIC
5711 typedef uint64_t(*LibTiePieScpGetData3Ch_t)( TpDeviceHandle_t hDevice , float* pBufferCh1 , float* pBufferCh2 , float* pBufferCh3 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5712 #else
5713 uint64_t ScpGetData3Ch( TpDeviceHandle_t hDevice , float* pBufferCh1 , float* pBufferCh2 , float* pBufferCh3 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5714 #endif
5715 
5740 #ifdef LIBTIEPIE_DYNAMIC
5741 typedef uint64_t(*LibTiePieScpGetData4Ch_t)( TpDeviceHandle_t hDevice , float* pBufferCh1 , float* pBufferCh2 , float* pBufferCh3 , float* pBufferCh4 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5742 #else
5743 uint64_t ScpGetData4Ch( TpDeviceHandle_t hDevice , float* pBufferCh1 , float* pBufferCh2 , float* pBufferCh3 , float* pBufferCh4 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5744 #endif
5745 
5765 #ifdef LIBTIEPIE_DYNAMIC
5766 typedef uint64_t(*LibTiePieScpGetValidPreSampleCount_t)( TpDeviceHandle_t hDevice );
5767 #else
5768 uint64_t ScpGetValidPreSampleCount( TpDeviceHandle_t hDevice );
5769 #endif
5770 
5791 #ifdef LIBTIEPIE_DYNAMIC
5792 typedef void(*LibTiePieScpChGetDataValueRange_t)( TpDeviceHandle_t hDevice , uint16_t wCh , double* pMin , double* pMax );
5793 #else
5794 void ScpChGetDataValueRange( TpDeviceHandle_t hDevice , uint16_t wCh , double* pMin , double* pMax );
5795 #endif
5796 
5816 #ifdef LIBTIEPIE_DYNAMIC
5817 typedef double(*LibTiePieScpChGetDataValueMin_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5818 #else
5819 double ScpChGetDataValueMin( TpDeviceHandle_t hDevice , uint16_t wCh );
5820 #endif
5821 
5841 #ifdef LIBTIEPIE_DYNAMIC
5842 typedef double(*LibTiePieScpChGetDataValueMax_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5843 #else
5844 double ScpChGetDataValueMax( TpDeviceHandle_t hDevice , uint16_t wCh );
5845 #endif
5846 
5853 // Workaround: Without this line Doxygen adds the documentation below to the group above.
5854 
5867 #ifdef LIBTIEPIE_DYNAMIC
5868 typedef uint64_t(*LibTiePieScpGetDataRaw_t)( TpDeviceHandle_t hDevice , void** pBuffers , uint16_t wChannelCount , uint64_t qwStartIndex , uint64_t qwSampleCount );
5869 #else
5870 uint64_t ScpGetDataRaw( TpDeviceHandle_t hDevice , void** pBuffers , uint16_t wChannelCount , uint64_t qwStartIndex , uint64_t qwSampleCount );
5871 #endif
5872 
5883 #ifdef LIBTIEPIE_DYNAMIC
5884 typedef uint64_t(*LibTiePieScpGetDataRaw1Ch_t)( TpDeviceHandle_t hDevice , void* pBufferCh1 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5885 #else
5886 uint64_t ScpGetDataRaw1Ch( TpDeviceHandle_t hDevice , void* pBufferCh1 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5887 #endif
5888 
5900 #ifdef LIBTIEPIE_DYNAMIC
5901 typedef uint64_t(*LibTiePieScpGetDataRaw2Ch_t)( TpDeviceHandle_t hDevice , void* pBufferCh1 , void* pBufferCh2 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5902 #else
5903 uint64_t ScpGetDataRaw2Ch( TpDeviceHandle_t hDevice , void* pBufferCh1 , void* pBufferCh2 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5904 #endif
5905 
5918 #ifdef LIBTIEPIE_DYNAMIC
5919 typedef uint64_t(*LibTiePieScpGetDataRaw3Ch_t)( TpDeviceHandle_t hDevice , void* pBufferCh1 , void* pBufferCh2 , void* pBufferCh3 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5920 #else
5921 uint64_t ScpGetDataRaw3Ch( TpDeviceHandle_t hDevice , void* pBufferCh1 , void* pBufferCh2 , void* pBufferCh3 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5922 #endif
5923 
5937 #ifdef LIBTIEPIE_DYNAMIC
5938 typedef uint64_t(*LibTiePieScpGetDataRaw4Ch_t)( TpDeviceHandle_t hDevice , void* pBufferCh1 , void* pBufferCh2 , void* pBufferCh3 , void* pBufferCh4 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5939 #else
5940 uint64_t ScpGetDataRaw4Ch( TpDeviceHandle_t hDevice , void* pBufferCh1 , void* pBufferCh2 , void* pBufferCh3 , void* pBufferCh4 , uint64_t qwStartIndex , uint64_t qwSampleCount );
5941 #endif
5942 
5951 #ifdef LIBTIEPIE_DYNAMIC
5952 typedef uint32_t(*LibTiePieScpChGetDataRawType_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5953 #else
5954 uint32_t ScpChGetDataRawType( TpDeviceHandle_t hDevice , uint16_t wCh );
5955 #endif
5956 
5970 #ifdef LIBTIEPIE_DYNAMIC
5971 typedef void(*LibTiePieScpChGetDataRawValueRange_t)( TpDeviceHandle_t hDevice , uint16_t wCh , int64_t* pMin , int64_t* pZero , int64_t* pMax );
5972 #else
5973 void ScpChGetDataRawValueRange( TpDeviceHandle_t hDevice , uint16_t wCh , int64_t* pMin , int64_t* pZero , int64_t* pMax );
5974 #endif
5975 
5987 #ifdef LIBTIEPIE_DYNAMIC
5988 typedef int64_t(*LibTiePieScpChGetDataRawValueMin_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
5989 #else
5990 int64_t ScpChGetDataRawValueMin( TpDeviceHandle_t hDevice , uint16_t wCh );
5991 #endif
5992 
6004 #ifdef LIBTIEPIE_DYNAMIC
6005 typedef int64_t(*LibTiePieScpChGetDataRawValueZero_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
6006 #else
6007 int64_t ScpChGetDataRawValueZero( TpDeviceHandle_t hDevice , uint16_t wCh );
6008 #endif
6009 
6021 #ifdef LIBTIEPIE_DYNAMIC
6022 typedef int64_t(*LibTiePieScpChGetDataRawValueMax_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
6023 #else
6024 int64_t ScpChGetDataRawValueMax( TpDeviceHandle_t hDevice , uint16_t wCh );
6025 #endif
6026 
6035 #ifdef LIBTIEPIE_DYNAMIC
6036 typedef bool8_t(*LibTiePieScpChIsRangeMaxReachable_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
6037 #else
6038 bool8_t ScpChIsRangeMaxReachable( TpDeviceHandle_t hDevice , uint16_t wCh );
6039 #endif
6040 
6059 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6060 
6077 #ifdef LIBTIEPIE_DYNAMIC
6078 typedef void(*LibTiePieScpSetCallbackDataReady_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
6079 #else
6080 void ScpSetCallbackDataReady( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
6081 #endif
6082 
6093 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6094 
6111 #ifdef LIBTIEPIE_DYNAMIC
6112 typedef void(*LibTiePieScpSetCallbackDataOverflow_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
6113 #else
6114 void ScpSetCallbackDataOverflow( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
6115 #endif
6116 
6124 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6125 
6142 #ifdef LIBTIEPIE_DYNAMIC
6143 typedef void(*LibTiePieScpSetCallbackConnectionTestCompleted_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
6144 #else
6145 void ScpSetCallbackConnectionTestCompleted( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
6146 #endif
6147 
6155 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6156 
6172 #ifdef LIBTIEPIE_DYNAMIC
6173 typedef void(*LibTiePieScpSetCallbackTriggered_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
6174 #else
6175 void ScpSetCallbackTriggered( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
6176 #endif
6177 
6182 #ifdef LIBTIEPIE_LINUX
6183 
6201 #ifdef LIBTIEPIE_DYNAMIC
6202 typedef void(*LibTiePieScpSetEventDataReady_t)( TpDeviceHandle_t hDevice , int fdEvent );
6203 #else
6204 void ScpSetEventDataReady( TpDeviceHandle_t hDevice , int fdEvent );
6205 #endif
6206 
6224 #ifdef LIBTIEPIE_DYNAMIC
6225 typedef void(*LibTiePieScpSetEventDataOverflow_t)( TpDeviceHandle_t hDevice , int fdEvent );
6226 #else
6227 void ScpSetEventDataOverflow( TpDeviceHandle_t hDevice , int fdEvent );
6228 #endif
6229 
6247 #ifdef LIBTIEPIE_DYNAMIC
6248 typedef void(*LibTiePieScpSetEventConnectionTestCompleted_t)( TpDeviceHandle_t hDevice , int fdEvent );
6249 #else
6250 void ScpSetEventConnectionTestCompleted( TpDeviceHandle_t hDevice , int fdEvent );
6251 #endif
6252 
6269 #ifdef LIBTIEPIE_DYNAMIC
6270 typedef void(*LibTiePieScpSetEventTriggered_t)( TpDeviceHandle_t hDevice , int fdEvent );
6271 #else
6272 void ScpSetEventTriggered( TpDeviceHandle_t hDevice , int fdEvent );
6273 #endif
6274 
6275 #endif
6276 
6277 #ifdef LIBTIEPIE_WINDOWS
6278 
6296 #ifdef LIBTIEPIE_DYNAMIC
6297 typedef void(*LibTiePieScpSetEventDataReady_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
6298 #else
6299 void ScpSetEventDataReady( TpDeviceHandle_t hDevice , HANDLE hEvent );
6300 #endif
6301 
6319 #ifdef LIBTIEPIE_DYNAMIC
6320 typedef void(*LibTiePieScpSetEventDataOverflow_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
6321 #else
6322 void ScpSetEventDataOverflow( TpDeviceHandle_t hDevice , HANDLE hEvent );
6323 #endif
6324 
6342 #ifdef LIBTIEPIE_DYNAMIC
6343 typedef void(*LibTiePieScpSetEventConnectionTestCompleted_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
6344 #else
6345 void ScpSetEventConnectionTestCompleted( TpDeviceHandle_t hDevice , HANDLE hEvent );
6346 #endif
6347 
6364 #ifdef LIBTIEPIE_DYNAMIC
6365 typedef void(*LibTiePieScpSetEventTriggered_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
6366 #else
6367 void ScpSetEventTriggered( TpDeviceHandle_t hDevice , HANDLE hEvent );
6368 #endif
6369 
6389 #ifdef LIBTIEPIE_DYNAMIC
6390 typedef void(*LibTiePieScpSetMessageDataReady_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
6391 #else
6392 void ScpSetMessageDataReady( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
6393 #endif
6394 
6415 #ifdef LIBTIEPIE_DYNAMIC
6416 typedef void(*LibTiePieScpSetMessageDataOverflow_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
6417 #else
6418 void ScpSetMessageDataOverflow( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
6419 #endif
6420 
6441 #ifdef LIBTIEPIE_DYNAMIC
6442 typedef void(*LibTiePieScpSetMessageConnectionTestCompleted_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
6443 #else
6444 void ScpSetMessageConnectionTestCompleted( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
6445 #endif
6446 
6465 #ifdef LIBTIEPIE_DYNAMIC
6466 typedef void(*LibTiePieScpSetMessageTriggered_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
6467 #else
6468 void ScpSetMessageTriggered( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
6469 #endif
6470 
6471 #endif
6472 
6484 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6485 
6503 #ifdef LIBTIEPIE_DYNAMIC
6504 typedef bool8_t(*LibTiePieScpStart_t)( TpDeviceHandle_t hDevice );
6505 #else
6506 bool8_t ScpStart( TpDeviceHandle_t hDevice );
6507 #endif
6508 
6524 #ifdef LIBTIEPIE_DYNAMIC
6525 typedef bool8_t(*LibTiePieScpStop_t)( TpDeviceHandle_t hDevice );
6526 #else
6527 bool8_t ScpStop( TpDeviceHandle_t hDevice );
6528 #endif
6529 
6551 #ifdef LIBTIEPIE_DYNAMIC
6552 typedef bool8_t(*LibTiePieScpForceTrigger_t)( TpDeviceHandle_t hDevice );
6553 #else
6554 bool8_t ScpForceTrigger( TpDeviceHandle_t hDevice );
6555 #endif
6556 
6596 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6597 
6614 #ifdef LIBTIEPIE_DYNAMIC
6615 typedef uint32_t(*LibTiePieScpGetMeasureModes_t)( TpDeviceHandle_t hDevice );
6616 #else
6617 uint32_t ScpGetMeasureModes( TpDeviceHandle_t hDevice );
6618 #endif
6619 
6636 #ifdef LIBTIEPIE_DYNAMIC
6637 typedef uint32_t(*LibTiePieScpGetMeasureMode_t)( TpDeviceHandle_t hDevice );
6638 #else
6639 uint32_t ScpGetMeasureMode( TpDeviceHandle_t hDevice );
6640 #endif
6641 
6661 #ifdef LIBTIEPIE_DYNAMIC
6662 typedef uint32_t(*LibTiePieScpSetMeasureMode_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
6663 #else
6664 uint32_t ScpSetMeasureMode( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
6665 #endif
6666 
6677 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6678 
6693 #ifdef LIBTIEPIE_DYNAMIC
6694 typedef bool8_t(*LibTiePieScpIsRunning_t)( TpDeviceHandle_t hDevice );
6695 #else
6696 bool8_t ScpIsRunning( TpDeviceHandle_t hDevice );
6697 #endif
6698 
6719 #ifdef LIBTIEPIE_DYNAMIC
6720 typedef bool8_t(*LibTiePieScpIsTriggered_t)( TpDeviceHandle_t hDevice );
6721 #else
6722 bool8_t ScpIsTriggered( TpDeviceHandle_t hDevice );
6723 #endif
6724 
6743 #ifdef LIBTIEPIE_DYNAMIC
6744 typedef bool8_t(*LibTiePieScpIsTimeOutTriggered_t)( TpDeviceHandle_t hDevice );
6745 #else
6746 bool8_t ScpIsTimeOutTriggered( TpDeviceHandle_t hDevice );
6747 #endif
6748 
6767 #ifdef LIBTIEPIE_DYNAMIC
6768 typedef bool8_t(*LibTiePieScpIsForceTriggered_t)( TpDeviceHandle_t hDevice );
6769 #else
6770 bool8_t ScpIsForceTriggered( TpDeviceHandle_t hDevice );
6771 #endif
6772 
6796 #ifdef LIBTIEPIE_DYNAMIC
6797 typedef bool8_t(*LibTiePieScpIsDataReady_t)( TpDeviceHandle_t hDevice );
6798 #else
6799 bool8_t ScpIsDataReady( TpDeviceHandle_t hDevice );
6800 #endif
6801 
6822 #ifdef LIBTIEPIE_DYNAMIC
6823 typedef bool8_t(*LibTiePieScpIsDataOverflow_t)( TpDeviceHandle_t hDevice );
6824 #else
6825 bool8_t ScpIsDataOverflow( TpDeviceHandle_t hDevice );
6826 #endif
6827 
6869 // Workaround: Without this line Doxygen adds the documentation below to the group above.
6870 
6887 #ifdef LIBTIEPIE_DYNAMIC
6888 typedef uint32_t(*LibTiePieScpGetAutoResolutionModes_t)( TpDeviceHandle_t hDevice );
6889 #else
6890 uint32_t ScpGetAutoResolutionModes( TpDeviceHandle_t hDevice );
6891 #endif
6892 
6910 #ifdef LIBTIEPIE_DYNAMIC
6911 typedef uint32_t(*LibTiePieScpGetAutoResolutionMode_t)( TpDeviceHandle_t hDevice );
6912 #else
6913 uint32_t ScpGetAutoResolutionMode( TpDeviceHandle_t hDevice );
6914 #endif
6915 
6935 #ifdef LIBTIEPIE_DYNAMIC
6936 typedef uint32_t(*LibTiePieScpSetAutoResolutionMode_t)( TpDeviceHandle_t hDevice , uint32_t dwAutoResolutionMode );
6937 #else
6938 uint32_t ScpSetAutoResolutionMode( TpDeviceHandle_t hDevice , uint32_t dwAutoResolutionMode );
6939 #endif
6940 
6976 #ifdef LIBTIEPIE_DYNAMIC
6977 typedef uint32_t(*LibTiePieScpGetResolutions_t)( TpDeviceHandle_t hDevice , uint8_t* pList , uint32_t dwLength );
6978 #else
6979 uint32_t ScpGetResolutions( TpDeviceHandle_t hDevice , uint8_t* pList , uint32_t dwLength );
6980 #endif
6981 
6998 #ifdef LIBTIEPIE_DYNAMIC
6999 typedef uint8_t(*LibTiePieScpGetResolution_t)( TpDeviceHandle_t hDevice );
7000 #else
7001 uint8_t ScpGetResolution( TpDeviceHandle_t hDevice );
7002 #endif
7003 
7024 #ifdef LIBTIEPIE_DYNAMIC
7025 typedef uint8_t(*LibTiePieScpSetResolution_t)( TpDeviceHandle_t hDevice , uint8_t byResolution );
7026 #else
7027 uint8_t ScpSetResolution( TpDeviceHandle_t hDevice , uint8_t byResolution );
7028 #endif
7029 
7044 #ifdef LIBTIEPIE_DYNAMIC
7045 typedef bool8_t(*LibTiePieScpIsResolutionEnhanced_t)( TpDeviceHandle_t hDevice );
7046 #else
7047 bool8_t ScpIsResolutionEnhanced( TpDeviceHandle_t hDevice );
7048 #endif
7049 
7051 
7060 #ifdef LIBTIEPIE_DYNAMIC
7061 typedef bool8_t(*LibTiePieScpIsResolutionEnhancedEx_t)( TpDeviceHandle_t hDevice , uint8_t byResolution );
7062 #else
7063 bool8_t ScpIsResolutionEnhancedEx( TpDeviceHandle_t hDevice , uint8_t byResolution );
7064 #endif
7065 
7067 
7087 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7088 
7105 #ifdef LIBTIEPIE_DYNAMIC
7106 typedef uint32_t(*LibTiePieScpGetClockSources_t)( TpDeviceHandle_t hDevice );
7107 #else
7108 uint32_t ScpGetClockSources( TpDeviceHandle_t hDevice );
7109 #endif
7110 
7127 #ifdef LIBTIEPIE_DYNAMIC
7128 typedef uint32_t(*LibTiePieScpGetClockSource_t)( TpDeviceHandle_t hDevice );
7129 #else
7130 uint32_t ScpGetClockSource( TpDeviceHandle_t hDevice );
7131 #endif
7132 
7151 #ifdef LIBTIEPIE_DYNAMIC
7152 typedef uint32_t(*LibTiePieScpSetClockSource_t)( TpDeviceHandle_t hDevice , uint32_t dwClockSource );
7153 #else
7154 uint32_t ScpSetClockSource( TpDeviceHandle_t hDevice , uint32_t dwClockSource );
7155 #endif
7156 
7172 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7173 
7190 #ifdef LIBTIEPIE_DYNAMIC
7191 typedef uint32_t(*LibTiePieScpGetClockOutputs_t)( TpDeviceHandle_t hDevice );
7192 #else
7193 uint32_t ScpGetClockOutputs( TpDeviceHandle_t hDevice );
7194 #endif
7195 
7212 #ifdef LIBTIEPIE_DYNAMIC
7213 typedef uint32_t(*LibTiePieScpGetClockOutput_t)( TpDeviceHandle_t hDevice );
7214 #else
7215 uint32_t ScpGetClockOutput( TpDeviceHandle_t hDevice );
7216 #endif
7217 
7236 #ifdef LIBTIEPIE_DYNAMIC
7237 typedef uint32_t(*LibTiePieScpSetClockOutput_t)( TpDeviceHandle_t hDevice , uint32_t dwClockOutput );
7238 #else
7239 uint32_t ScpSetClockOutput( TpDeviceHandle_t hDevice , uint32_t dwClockOutput );
7240 #endif
7241 
7265 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7266 
7283 #ifdef LIBTIEPIE_DYNAMIC
7284 typedef double(*LibTiePieScpGetSampleFrequencyMax_t)( TpDeviceHandle_t hDevice );
7285 #else
7286 double ScpGetSampleFrequencyMax( TpDeviceHandle_t hDevice );
7287 #endif
7288 
7305 #ifdef LIBTIEPIE_DYNAMIC
7306 typedef double(*LibTiePieScpGetSampleFrequency_t)( TpDeviceHandle_t hDevice );
7307 #else
7308 double ScpGetSampleFrequency( TpDeviceHandle_t hDevice );
7309 #endif
7310 
7333 #ifdef LIBTIEPIE_DYNAMIC
7334 typedef double(*LibTiePieScpSetSampleFrequency_t)( TpDeviceHandle_t hDevice , double dSampleFrequency );
7335 #else
7336 double ScpSetSampleFrequency( TpDeviceHandle_t hDevice , double dSampleFrequency );
7337 #endif
7338 
7340 
7354 #ifdef LIBTIEPIE_DYNAMIC
7355 typedef double(*LibTiePieScpVerifySampleFrequency_t)( TpDeviceHandle_t hDevice , double dSampleFrequency );
7356 #else
7357 double ScpVerifySampleFrequency( TpDeviceHandle_t hDevice , double dSampleFrequency );
7358 #endif
7359 
7377 #ifdef LIBTIEPIE_DYNAMIC
7378 typedef double(*LibTiePieScpVerifySampleFrequencyEx_t)( TpDeviceHandle_t hDevice , double dSampleFrequency , uint32_t dwMeasureMode , uint8_t byResolution , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
7379 #else
7380 double ScpVerifySampleFrequencyEx( TpDeviceHandle_t hDevice , double dSampleFrequency , uint32_t dwMeasureMode , uint8_t byResolution , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
7381 #endif
7382 
7400 #ifdef LIBTIEPIE_DYNAMIC
7401 typedef void(*LibTiePieScpVerifySampleFrequenciesEx_t)( TpDeviceHandle_t hDevice , double* pSampleFrequencies , uint32_t dwSampleFrequencyCount , uint32_t dwMeasureMode , uint32_t dwAutoResolutionMode , uint8_t byResolution , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
7402 #else
7403 void ScpVerifySampleFrequenciesEx( TpDeviceHandle_t hDevice , double* pSampleFrequencies , uint32_t dwSampleFrequencyCount , uint32_t dwMeasureMode , uint32_t dwAutoResolutionMode , uint8_t byResolution , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
7404 #endif
7405 
7407 
7426 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7427 
7444 #ifdef LIBTIEPIE_DYNAMIC
7445 typedef uint64_t(*LibTiePieScpGetRecordLengthMax_t)( TpDeviceHandle_t hDevice );
7446 #else
7447 uint64_t ScpGetRecordLengthMax( TpDeviceHandle_t hDevice );
7448 #endif
7449 
7451 
7466 #ifdef LIBTIEPIE_DYNAMIC
7467 typedef uint64_t(*LibTiePieScpGetRecordLengthMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode , uint8_t byResolution );
7468 #else
7469 uint64_t ScpGetRecordLengthMaxEx( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode , uint8_t byResolution );
7470 #endif
7471 
7473 
7490 #ifdef LIBTIEPIE_DYNAMIC
7491 typedef uint64_t(*LibTiePieScpGetRecordLength_t)( TpDeviceHandle_t hDevice );
7492 #else
7493 uint64_t ScpGetRecordLength( TpDeviceHandle_t hDevice );
7494 #endif
7495 
7517 #ifdef LIBTIEPIE_DYNAMIC
7518 typedef uint64_t(*LibTiePieScpSetRecordLength_t)( TpDeviceHandle_t hDevice , uint64_t qwRecordLength );
7519 #else
7520 uint64_t ScpSetRecordLength( TpDeviceHandle_t hDevice , uint64_t qwRecordLength );
7521 #endif
7522 
7524 
7538 #ifdef LIBTIEPIE_DYNAMIC
7539 typedef uint64_t(*LibTiePieScpVerifyRecordLength_t)( TpDeviceHandle_t hDevice , uint64_t qwRecordLength );
7540 #else
7541 uint64_t ScpVerifyRecordLength( TpDeviceHandle_t hDevice , uint64_t qwRecordLength );
7542 #endif
7543 
7561 #ifdef LIBTIEPIE_DYNAMIC
7562 typedef uint64_t(*LibTiePieScpVerifyRecordLengthEx_t)( TpDeviceHandle_t hDevice , uint64_t qwRecordLength , uint32_t dwMeasureMode , uint8_t byResolution , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
7563 #else
7564 uint64_t ScpVerifyRecordLengthEx( TpDeviceHandle_t hDevice , uint64_t qwRecordLength , uint32_t dwMeasureMode , uint8_t byResolution , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
7565 #endif
7566 
7568 
7592 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7593 
7610 #ifdef LIBTIEPIE_DYNAMIC
7611 typedef double(*LibTiePieScpGetPreSampleRatio_t)( TpDeviceHandle_t hDevice );
7612 #else
7613 double ScpGetPreSampleRatio( TpDeviceHandle_t hDevice );
7614 #endif
7615 
7636 #ifdef LIBTIEPIE_DYNAMIC
7637 typedef double(*LibTiePieScpSetPreSampleRatio_t)( TpDeviceHandle_t hDevice , double dPreSampleRatio );
7638 #else
7639 double ScpSetPreSampleRatio( TpDeviceHandle_t hDevice , double dPreSampleRatio );
7640 #endif
7641 
7651 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7652 
7670 #ifdef LIBTIEPIE_DYNAMIC
7671 typedef uint32_t(*LibTiePieScpGetSegmentCountMax_t)( TpDeviceHandle_t hDevice );
7672 #else
7673 uint32_t ScpGetSegmentCountMax( TpDeviceHandle_t hDevice );
7674 #endif
7675 
7677 
7690 #ifdef LIBTIEPIE_DYNAMIC
7691 typedef uint32_t(*LibTiePieScpGetSegmentCountMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
7692 #else
7693 uint32_t ScpGetSegmentCountMaxEx( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
7694 #endif
7695 
7697 
7716 #ifdef LIBTIEPIE_DYNAMIC
7717 typedef uint32_t(*LibTiePieScpGetSegmentCount_t)( TpDeviceHandle_t hDevice );
7718 #else
7719 uint32_t ScpGetSegmentCount( TpDeviceHandle_t hDevice );
7720 #endif
7721 
7743 #ifdef LIBTIEPIE_DYNAMIC
7744 typedef uint32_t(*LibTiePieScpSetSegmentCount_t)( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount );
7745 #else
7746 uint32_t ScpSetSegmentCount( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount );
7747 #endif
7748 
7750 
7764 #ifdef LIBTIEPIE_DYNAMIC
7765 typedef uint32_t(*LibTiePieScpVerifySegmentCount_t)( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount );
7766 #else
7767 uint32_t ScpVerifySegmentCount( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount );
7768 #endif
7769 
7787 #ifdef LIBTIEPIE_DYNAMIC
7788 typedef uint32_t(*LibTiePieScpVerifySegmentCountEx2_t)( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount , uint32_t dwMeasureMode , uint64_t qwRecordLength , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
7789 #else
7790 uint32_t ScpVerifySegmentCountEx2( TpDeviceHandle_t hDevice , uint32_t dwSegmentCount , uint32_t dwMeasureMode , uint64_t qwRecordLength , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
7791 #endif
7792 
7794 
7805 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7806 
7821 #ifdef LIBTIEPIE_DYNAMIC
7822 typedef bool8_t(*LibTiePieScpHasTrigger_t)( TpDeviceHandle_t hDevice );
7823 #else
7824 bool8_t ScpHasTrigger( TpDeviceHandle_t hDevice );
7825 #endif
7826 
7828 
7846 #ifdef LIBTIEPIE_DYNAMIC
7847 typedef bool8_t(*LibTiePieScpHasTriggerEx_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
7848 #else
7849 bool8_t ScpHasTriggerEx( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
7850 #endif
7851 
7853 
7878 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7879 
7896 #ifdef LIBTIEPIE_DYNAMIC
7897 typedef double(*LibTiePieScpGetTriggerTimeOut_t)( TpDeviceHandle_t hDevice );
7898 #else
7899 double ScpGetTriggerTimeOut( TpDeviceHandle_t hDevice );
7900 #endif
7901 
7921 #ifdef LIBTIEPIE_DYNAMIC
7922 typedef double(*LibTiePieScpSetTriggerTimeOut_t)( TpDeviceHandle_t hDevice , double dTimeOut );
7923 #else
7924 double ScpSetTriggerTimeOut( TpDeviceHandle_t hDevice , double dTimeOut );
7925 #endif
7926 
7928 
7940 #ifdef LIBTIEPIE_DYNAMIC
7941 typedef double(*LibTiePieScpVerifyTriggerTimeOut_t)( TpDeviceHandle_t hDevice , double dTimeOut );
7942 #else
7943 double ScpVerifyTriggerTimeOut( TpDeviceHandle_t hDevice , double dTimeOut );
7944 #endif
7945 
7959 #ifdef LIBTIEPIE_DYNAMIC
7960 typedef double(*LibTiePieScpVerifyTriggerTimeOutEx_t)( TpDeviceHandle_t hDevice , double dTimeOut , uint32_t dwMeasureMode , double dSampleFrequency );
7961 #else
7962 double ScpVerifyTriggerTimeOutEx( TpDeviceHandle_t hDevice , double dTimeOut , uint32_t dwMeasureMode , double dSampleFrequency );
7963 #endif
7964 
7966 
7979 // Workaround: Without this line Doxygen adds the documentation below to the group above.
7980 
7995 #ifdef LIBTIEPIE_DYNAMIC
7996 typedef bool8_t(*LibTiePieScpHasTriggerDelay_t)( TpDeviceHandle_t hDevice );
7997 #else
7998 bool8_t ScpHasTriggerDelay( TpDeviceHandle_t hDevice );
7999 #endif
8000 
8002 
8020 #ifdef LIBTIEPIE_DYNAMIC
8021 typedef bool8_t(*LibTiePieScpHasTriggerDelayEx_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
8022 #else
8023 bool8_t ScpHasTriggerDelayEx( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
8024 #endif
8025 
8027 
8045 #ifdef LIBTIEPIE_DYNAMIC
8046 typedef double(*LibTiePieScpGetTriggerDelayMax_t)( TpDeviceHandle_t hDevice );
8047 #else
8048 double ScpGetTriggerDelayMax( TpDeviceHandle_t hDevice );
8049 #endif
8050 
8052 
8077 #ifdef LIBTIEPIE_DYNAMIC
8078 typedef double(*LibTiePieScpGetTriggerDelayMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode , double dSampleFrequency );
8079 #else
8080 double ScpGetTriggerDelayMaxEx( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode , double dSampleFrequency );
8081 #endif
8082 
8084 
8103 #ifdef LIBTIEPIE_DYNAMIC
8104 typedef double(*LibTiePieScpGetTriggerDelay_t)( TpDeviceHandle_t hDevice );
8105 #else
8106 double ScpGetTriggerDelay( TpDeviceHandle_t hDevice );
8107 #endif
8108 
8130 #ifdef LIBTIEPIE_DYNAMIC
8131 typedef double(*LibTiePieScpSetTriggerDelay_t)( TpDeviceHandle_t hDevice , double dDelay );
8132 #else
8133 double ScpSetTriggerDelay( TpDeviceHandle_t hDevice , double dDelay );
8134 #endif
8135 
8137 
8152 #ifdef LIBTIEPIE_DYNAMIC
8153 typedef double(*LibTiePieScpVerifyTriggerDelay_t)( TpDeviceHandle_t hDevice , double dDelay );
8154 #else
8155 double ScpVerifyTriggerDelay( TpDeviceHandle_t hDevice , double dDelay );
8156 #endif
8157 
8174 #ifdef LIBTIEPIE_DYNAMIC
8175 typedef double(*LibTiePieScpVerifyTriggerDelayEx_t)( TpDeviceHandle_t hDevice , double dDelay , uint32_t dwMeasureMode , double dSampleFrequency );
8176 #else
8177 double ScpVerifyTriggerDelayEx( TpDeviceHandle_t hDevice , double dDelay , uint32_t dwMeasureMode , double dSampleFrequency );
8178 #endif
8179 
8181 
8198 // Workaround: Without this line Doxygen adds the documentation below to the group above.
8199 
8214 #ifdef LIBTIEPIE_DYNAMIC
8215 typedef bool8_t(*LibTiePieScpHasTriggerHoldOff_t)( TpDeviceHandle_t hDevice );
8216 #else
8217 bool8_t ScpHasTriggerHoldOff( TpDeviceHandle_t hDevice );
8218 #endif
8219 
8221 
8243 #ifdef LIBTIEPIE_DYNAMIC
8244 typedef bool8_t(*LibTiePieScpHasTriggerHoldOffEx_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
8245 #else
8246 bool8_t ScpHasTriggerHoldOffEx( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
8247 #endif
8248 
8250 
8269 #ifdef LIBTIEPIE_DYNAMIC
8270 typedef uint64_t(*LibTiePieScpGetTriggerHoldOffCountMax_t)( TpDeviceHandle_t hDevice );
8271 #else
8272 uint64_t ScpGetTriggerHoldOffCountMax( TpDeviceHandle_t hDevice );
8273 #endif
8274 
8276 
8290 #ifdef LIBTIEPIE_DYNAMIC
8291 typedef uint64_t(*LibTiePieScpGetTriggerHoldOffCountMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
8292 #else
8293 uint64_t ScpGetTriggerHoldOffCountMaxEx( TpDeviceHandle_t hDevice , uint32_t dwMeasureMode );
8294 #endif
8295 
8297 
8316 #ifdef LIBTIEPIE_DYNAMIC
8317 typedef uint64_t(*LibTiePieScpGetTriggerHoldOffCount_t)( TpDeviceHandle_t hDevice );
8318 #else
8319 uint64_t ScpGetTriggerHoldOffCount( TpDeviceHandle_t hDevice );
8320 #endif
8321 
8342 #ifdef LIBTIEPIE_DYNAMIC
8343 typedef uint64_t(*LibTiePieScpSetTriggerHoldOffCount_t)( TpDeviceHandle_t hDevice , uint64_t qwTriggerHoldOffCount );
8344 #else
8345 uint64_t ScpSetTriggerHoldOffCount( TpDeviceHandle_t hDevice , uint64_t qwTriggerHoldOffCount );
8346 #endif
8347 
8364 // Workaround: Without this line Doxygen adds the documentation below to the group above.
8365 
8381 #ifdef LIBTIEPIE_DYNAMIC
8382 typedef bool8_t(*LibTiePieScpHasConnectionTest_t)( TpDeviceHandle_t hDevice );
8383 #else
8384 bool8_t ScpHasConnectionTest( TpDeviceHandle_t hDevice );
8385 #endif
8386 
8404 #ifdef LIBTIEPIE_DYNAMIC
8405 typedef bool8_t(*LibTiePieScpChHasConnectionTest_t)( TpDeviceHandle_t hDevice , uint16_t wCh );
8406 #else
8407 bool8_t ScpChHasConnectionTest( TpDeviceHandle_t hDevice , uint16_t wCh );
8408 #endif
8409 
8430 #ifdef LIBTIEPIE_DYNAMIC
8431 typedef bool8_t(*LibTiePieScpStartConnectionTest_t)( TpDeviceHandle_t hDevice );
8432 #else
8433 bool8_t ScpStartConnectionTest( TpDeviceHandle_t hDevice );
8434 #endif
8435 
8437 
8466 #ifdef LIBTIEPIE_DYNAMIC
8467 typedef bool8_t(*LibTiePieScpStartConnectionTestEx_t)( TpDeviceHandle_t hDevice , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
8468 #else
8469 bool8_t ScpStartConnectionTestEx( TpDeviceHandle_t hDevice , const bool8_t* pChannelEnabled , uint16_t wChannelCount );
8470 #endif
8471 
8473 
8494 #ifdef LIBTIEPIE_DYNAMIC
8495 typedef bool8_t(*LibTiePieScpIsConnectionTestCompleted_t)( TpDeviceHandle_t hDevice );
8496 #else
8497 bool8_t ScpIsConnectionTestCompleted( TpDeviceHandle_t hDevice );
8498 #endif
8499 
8558 #ifdef LIBTIEPIE_DYNAMIC
8559 typedef uint16_t(*LibTiePieScpGetConnectionTestData_t)( TpDeviceHandle_t hDevice , LibTiePieTriState_t* pBuffer , uint16_t wChannelCount );
8560 #else
8561 uint16_t ScpGetConnectionTestData( TpDeviceHandle_t hDevice , LibTiePieTriState_t* pBuffer , uint16_t wChannelCount );
8562 #endif
8563 
8582 // Workaround: Without this line Doxygen adds the documentation below to the group above.
8583 
8599 #ifdef LIBTIEPIE_DYNAMIC
8600 typedef uint32_t(*LibTiePieGenGetConnectorType_t)( TpDeviceHandle_t hDevice );
8601 #else
8602 uint32_t GenGetConnectorType( TpDeviceHandle_t hDevice );
8603 #endif
8604 
8619 #ifdef LIBTIEPIE_DYNAMIC
8620 typedef bool8_t(*LibTiePieGenIsDifferential_t)( TpDeviceHandle_t hDevice );
8621 #else
8622 bool8_t GenIsDifferential( TpDeviceHandle_t hDevice );
8623 #endif
8624 
8640 #ifdef LIBTIEPIE_DYNAMIC
8641 typedef double(*LibTiePieGenGetImpedance_t)( TpDeviceHandle_t hDevice );
8642 #else
8643 double GenGetImpedance( TpDeviceHandle_t hDevice );
8644 #endif
8645 
8661 #ifdef LIBTIEPIE_DYNAMIC
8662 typedef uint8_t(*LibTiePieGenGetResolution_t)( TpDeviceHandle_t hDevice );
8663 #else
8664 uint8_t GenGetResolution( TpDeviceHandle_t hDevice );
8665 #endif
8666 
8683 #ifdef LIBTIEPIE_DYNAMIC
8684 typedef double(*LibTiePieGenGetOutputValueMin_t)( TpDeviceHandle_t hDevice );
8685 #else
8686 double GenGetOutputValueMin( TpDeviceHandle_t hDevice );
8687 #endif
8688 
8705 #ifdef LIBTIEPIE_DYNAMIC
8706 typedef double(*LibTiePieGenGetOutputValueMax_t)( TpDeviceHandle_t hDevice );
8707 #else
8708 double GenGetOutputValueMax( TpDeviceHandle_t hDevice );
8709 #endif
8710 
8712 
8728 #ifdef LIBTIEPIE_DYNAMIC
8729 typedef void(*LibTiePieGenGetOutputValueMinMax_t)( TpDeviceHandle_t hDevice , double* pMin , double* pMax );
8730 #else
8731 void GenGetOutputValueMinMax( TpDeviceHandle_t hDevice , double* pMin , double* pMax );
8732 #endif
8733 
8735 
8751 // Workaround: Without this line Doxygen adds the documentation below to the group above.
8752 
8771 #ifdef LIBTIEPIE_DYNAMIC
8772 typedef bool8_t(*LibTiePieGenIsControllable_t)( TpDeviceHandle_t hDevice );
8773 #else
8774 bool8_t GenIsControllable( TpDeviceHandle_t hDevice );
8775 #endif
8776 
8793 #ifdef LIBTIEPIE_DYNAMIC
8794 typedef uint32_t(*LibTiePieGenGetStatus_t)( TpDeviceHandle_t hDevice );
8795 #else
8796 uint32_t GenGetStatus( TpDeviceHandle_t hDevice );
8797 #endif
8798 
8814 #ifdef LIBTIEPIE_DYNAMIC
8815 typedef bool8_t(*LibTiePieGenGetOutputOn_t)( TpDeviceHandle_t hDevice );
8816 #else
8817 bool8_t GenGetOutputOn( TpDeviceHandle_t hDevice );
8818 #endif
8819 
8838 #ifdef LIBTIEPIE_DYNAMIC
8839 typedef bool8_t(*LibTiePieGenSetOutputOn_t)( TpDeviceHandle_t hDevice , bool8_t bOutputOn );
8840 #else
8841 bool8_t GenSetOutputOn( TpDeviceHandle_t hDevice , bool8_t bOutputOn );
8842 #endif
8843 
8859 #ifdef LIBTIEPIE_DYNAMIC
8860 typedef bool8_t(*LibTiePieGenGetOutputInvert_t)( TpDeviceHandle_t hDevice );
8861 #else
8862 bool8_t GenGetOutputInvert( TpDeviceHandle_t hDevice );
8863 #endif
8864 
8883 #ifdef LIBTIEPIE_DYNAMIC
8884 typedef bool8_t(*LibTiePieGenSetOutputInvert_t)( TpDeviceHandle_t hDevice , bool8_t bInvert );
8885 #else
8886 bool8_t GenSetOutputInvert( TpDeviceHandle_t hDevice , bool8_t bInvert );
8887 #endif
8888 
8907 #ifdef LIBTIEPIE_DYNAMIC
8908 typedef bool8_t(*LibTiePieGenStart_t)( TpDeviceHandle_t hDevice );
8909 #else
8910 bool8_t GenStart( TpDeviceHandle_t hDevice );
8911 #endif
8912 
8930 #ifdef LIBTIEPIE_DYNAMIC
8931 typedef bool8_t(*LibTiePieGenStop_t)( TpDeviceHandle_t hDevice );
8932 #else
8933 bool8_t GenStop( TpDeviceHandle_t hDevice );
8934 #endif
8935 
8966 // Workaround: Without this line Doxygen adds the documentation below to the group above.
8967 
8984 #ifdef LIBTIEPIE_DYNAMIC
8985 typedef uint32_t(*LibTiePieGenGetSignalTypes_t)( TpDeviceHandle_t hDevice );
8986 #else
8987 uint32_t GenGetSignalTypes( TpDeviceHandle_t hDevice );
8988 #endif
8989 
9006 #ifdef LIBTIEPIE_DYNAMIC
9007 typedef uint32_t(*LibTiePieGenGetSignalType_t)( TpDeviceHandle_t hDevice );
9008 #else
9009 uint32_t GenGetSignalType( TpDeviceHandle_t hDevice );
9010 #endif
9011 
9034 #ifdef LIBTIEPIE_DYNAMIC
9035 typedef uint32_t(*LibTiePieGenSetSignalType_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType );
9036 #else
9037 uint32_t GenSetSignalType( TpDeviceHandle_t hDevice , uint32_t dwSignalType );
9038 #endif
9039 
9061 // Workaround: Without this line Doxygen adds the documentation below to the group above.
9062 
9084 #ifdef LIBTIEPIE_DYNAMIC
9085 typedef double(*LibTiePieGenGetAmplitudeMin_t)( TpDeviceHandle_t hDevice );
9086 #else
9087 double GenGetAmplitudeMin( TpDeviceHandle_t hDevice );
9088 #endif
9089 
9111 #ifdef LIBTIEPIE_DYNAMIC
9112 typedef double(*LibTiePieGenGetAmplitudeMax_t)( TpDeviceHandle_t hDevice );
9113 #else
9114 double GenGetAmplitudeMax( TpDeviceHandle_t hDevice );
9115 #endif
9116 
9118 
9145 #ifdef LIBTIEPIE_DYNAMIC
9146 typedef void(*LibTiePieGenGetAmplitudeMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
9147 #else
9148 void GenGetAmplitudeMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
9149 #endif
9150 
9152 
9171 #ifdef LIBTIEPIE_DYNAMIC
9172 typedef double(*LibTiePieGenGetAmplitude_t)( TpDeviceHandle_t hDevice );
9173 #else
9174 double GenGetAmplitude( TpDeviceHandle_t hDevice );
9175 #endif
9176 
9202 #ifdef LIBTIEPIE_DYNAMIC
9203 typedef double(*LibTiePieGenSetAmplitude_t)( TpDeviceHandle_t hDevice , double dAmplitude );
9204 #else
9205 double GenSetAmplitude( TpDeviceHandle_t hDevice , double dAmplitude );
9206 #endif
9207 
9209 
9236 #ifdef LIBTIEPIE_DYNAMIC
9237 typedef double(*LibTiePieGenVerifyAmplitude_t)( TpDeviceHandle_t hDevice , double dAmplitude );
9238 #else
9239 double GenVerifyAmplitude( TpDeviceHandle_t hDevice , double dAmplitude );
9240 #endif
9241 
9271 #ifdef LIBTIEPIE_DYNAMIC
9272 typedef double(*LibTiePieGenVerifyAmplitudeEx_t)( TpDeviceHandle_t hDevice , double dAmplitude , uint32_t dwSignalType , uint32_t dwAmplitudeRangeIndex , double dOffset );
9273 #else
9274 double GenVerifyAmplitudeEx( TpDeviceHandle_t hDevice , double dAmplitude , uint32_t dwSignalType , uint32_t dwAmplitudeRangeIndex , double dOffset );
9275 #endif
9276 
9278 
9292 // Workaround: Without this line Doxygen adds the documentation below to the group above.
9293 
9329 #ifdef LIBTIEPIE_DYNAMIC
9330 typedef uint32_t(*LibTiePieGenGetAmplitudeRanges_t)( TpDeviceHandle_t hDevice , double* pList , uint32_t dwLength );
9331 #else
9332 uint32_t GenGetAmplitudeRanges( TpDeviceHandle_t hDevice , double* pList , uint32_t dwLength );
9333 #endif
9334 
9354 #ifdef LIBTIEPIE_DYNAMIC
9355 typedef double(*LibTiePieGenGetAmplitudeRange_t)( TpDeviceHandle_t hDevice );
9356 #else
9357 double GenGetAmplitudeRange( TpDeviceHandle_t hDevice );
9358 #endif
9359 
9396 #ifdef LIBTIEPIE_DYNAMIC
9397 typedef double(*LibTiePieGenSetAmplitudeRange_t)( TpDeviceHandle_t hDevice , double dRange );
9398 #else
9399 double GenSetAmplitudeRange( TpDeviceHandle_t hDevice , double dRange );
9400 #endif
9401 
9421 #ifdef LIBTIEPIE_DYNAMIC
9422 typedef bool8_t(*LibTiePieGenGetAmplitudeAutoRanging_t)( TpDeviceHandle_t hDevice );
9423 #else
9424 bool8_t GenGetAmplitudeAutoRanging( TpDeviceHandle_t hDevice );
9425 #endif
9426 
9449 #ifdef LIBTIEPIE_DYNAMIC
9450 typedef bool8_t(*LibTiePieGenSetAmplitudeAutoRanging_t)( TpDeviceHandle_t hDevice , bool8_t bEnable );
9451 #else
9452 bool8_t GenSetAmplitudeAutoRanging( TpDeviceHandle_t hDevice , bool8_t bEnable );
9453 #endif
9454 
9475 // Workaround: Without this line Doxygen adds the documentation below to the group above.
9476 
9495 #ifdef LIBTIEPIE_DYNAMIC
9496 typedef double(*LibTiePieGenGetOffsetMin_t)( TpDeviceHandle_t hDevice );
9497 #else
9498 double GenGetOffsetMin( TpDeviceHandle_t hDevice );
9499 #endif
9500 
9519 #ifdef LIBTIEPIE_DYNAMIC
9520 typedef double(*LibTiePieGenGetOffsetMax_t)( TpDeviceHandle_t hDevice );
9521 #else
9522 double GenGetOffsetMax( TpDeviceHandle_t hDevice );
9523 #endif
9524 
9526 
9551 #ifdef LIBTIEPIE_DYNAMIC
9552 typedef void(*LibTiePieGenGetOffsetMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
9553 #else
9554 void GenGetOffsetMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
9555 #endif
9556 
9558 
9577 #ifdef LIBTIEPIE_DYNAMIC
9578 typedef double(*LibTiePieGenGetOffset_t)( TpDeviceHandle_t hDevice );
9579 #else
9580 double GenGetOffset( TpDeviceHandle_t hDevice );
9581 #endif
9582 
9605 #ifdef LIBTIEPIE_DYNAMIC
9606 typedef double(*LibTiePieGenSetOffset_t)( TpDeviceHandle_t hDevice , double dOffset );
9607 #else
9608 double GenSetOffset( TpDeviceHandle_t hDevice , double dOffset );
9609 #endif
9610 
9612 
9637 #ifdef LIBTIEPIE_DYNAMIC
9638 typedef double(*LibTiePieGenVerifyOffset_t)( TpDeviceHandle_t hDevice , double dOffset );
9639 #else
9640 double GenVerifyOffset( TpDeviceHandle_t hDevice , double dOffset );
9641 #endif
9642 
9671 #ifdef LIBTIEPIE_DYNAMIC
9672 typedef double(*LibTiePieGenVerifyOffsetEx_t)( TpDeviceHandle_t hDevice , double dOffset , uint32_t dwSignalType , double dAmplitude );
9673 #else
9674 double GenVerifyOffsetEx( TpDeviceHandle_t hDevice , double dOffset , uint32_t dwSignalType , double dAmplitude );
9675 #endif
9676 
9678 
9712 // Workaround: Without this line Doxygen adds the documentation below to the group above.
9713 
9731 #ifdef LIBTIEPIE_DYNAMIC
9732 typedef uint32_t(*LibTiePieGenGetFrequencyModes_t)( TpDeviceHandle_t hDevice );
9733 #else
9734 uint32_t GenGetFrequencyModes( TpDeviceHandle_t hDevice );
9735 #endif
9736 
9738 
9759 #ifdef LIBTIEPIE_DYNAMIC
9760 typedef uint32_t(*LibTiePieGenGetFrequencyModesEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType );
9761 #else
9762 uint32_t GenGetFrequencyModesEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType );
9763 #endif
9764 
9766 
9784 #ifdef LIBTIEPIE_DYNAMIC
9785 typedef uint32_t(*LibTiePieGenGetFrequencyMode_t)( TpDeviceHandle_t hDevice );
9786 #else
9787 uint32_t GenGetFrequencyMode( TpDeviceHandle_t hDevice );
9788 #endif
9789 
9814 #ifdef LIBTIEPIE_DYNAMIC
9815 typedef uint32_t(*LibTiePieGenSetFrequencyMode_t)( TpDeviceHandle_t hDevice , uint32_t dwFrequencyMode );
9816 #else
9817 uint32_t GenSetFrequencyMode( TpDeviceHandle_t hDevice , uint32_t dwFrequencyMode );
9818 #endif
9819 
9824 // Workaround: Without this line Doxygen adds the documentation below to the group above.
9825 
9844 #ifdef LIBTIEPIE_DYNAMIC
9845 typedef double(*LibTiePieGenGetFrequencyMin_t)( TpDeviceHandle_t hDevice );
9846 #else
9847 double GenGetFrequencyMin( TpDeviceHandle_t hDevice );
9848 #endif
9849 
9868 #ifdef LIBTIEPIE_DYNAMIC
9869 typedef double(*LibTiePieGenGetFrequencyMax_t)( TpDeviceHandle_t hDevice );
9870 #else
9871 double GenGetFrequencyMax( TpDeviceHandle_t hDevice );
9872 #endif
9873 
9875 
9901 #ifdef LIBTIEPIE_DYNAMIC
9902 typedef void(*LibTiePieGenGetFrequencyMinMax_t)( TpDeviceHandle_t hDevice , uint32_t dwFrequencyMode , double* pMin , double* pMax );
9903 #else
9904 void GenGetFrequencyMinMax( TpDeviceHandle_t hDevice , uint32_t dwFrequencyMode , double* pMin , double* pMax );
9905 #endif
9906 
9933 #ifdef LIBTIEPIE_DYNAMIC
9934 typedef void(*LibTiePieGenGetFrequencyMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwFrequencyMode , uint32_t dwSignalType , double* pMin , double* pMax );
9935 #else
9936 void GenGetFrequencyMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwFrequencyMode , uint32_t dwSignalType , double* pMin , double* pMax );
9937 #endif
9938 
9940 
9959 #ifdef LIBTIEPIE_DYNAMIC
9960 typedef double(*LibTiePieGenGetFrequency_t)( TpDeviceHandle_t hDevice );
9961 #else
9962 double GenGetFrequency( TpDeviceHandle_t hDevice );
9963 #endif
9964 
9989 #ifdef LIBTIEPIE_DYNAMIC
9990 typedef double(*LibTiePieGenSetFrequency_t)( TpDeviceHandle_t hDevice , double dFrequency );
9991 #else
9992 double GenSetFrequency( TpDeviceHandle_t hDevice , double dFrequency );
9993 #endif
9994 
9996 
10021 #ifdef LIBTIEPIE_DYNAMIC
10022 typedef double(*LibTiePieGenVerifyFrequency_t)( TpDeviceHandle_t hDevice , double dFrequency );
10023 #else
10024 double GenVerifyFrequency( TpDeviceHandle_t hDevice , double dFrequency );
10025 #endif
10026 
10057 #ifdef LIBTIEPIE_DYNAMIC
10058 typedef double(*LibTiePieGenVerifyFrequencyEx2_t)( TpDeviceHandle_t hDevice , double dFrequency , uint32_t dwFrequencyMode , uint32_t dwSignalType , uint64_t qwDataLength , double dWidth );
10059 #else
10060 double GenVerifyFrequencyEx2( TpDeviceHandle_t hDevice , double dFrequency , uint32_t dwFrequencyMode , uint32_t dwSignalType , uint64_t qwDataLength , double dWidth );
10061 #endif
10062 
10064 
10081 // Workaround: Without this line Doxygen adds the documentation below to the group above.
10082 
10101 #ifdef LIBTIEPIE_DYNAMIC
10102 typedef double(*LibTiePieGenGetPhaseMin_t)( TpDeviceHandle_t hDevice );
10103 #else
10104 double GenGetPhaseMin( TpDeviceHandle_t hDevice );
10105 #endif
10106 
10125 #ifdef LIBTIEPIE_DYNAMIC
10126 typedef double(*LibTiePieGenGetPhaseMax_t)( TpDeviceHandle_t hDevice );
10127 #else
10128 double GenGetPhaseMax( TpDeviceHandle_t hDevice );
10129 #endif
10130 
10132 
10157 #ifdef LIBTIEPIE_DYNAMIC
10158 typedef void(*LibTiePieGenGetPhaseMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
10159 #else
10160 void GenGetPhaseMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
10161 #endif
10162 
10164 
10183 #ifdef LIBTIEPIE_DYNAMIC
10184 typedef double(*LibTiePieGenGetPhase_t)( TpDeviceHandle_t hDevice );
10185 #else
10186 double GenGetPhase( TpDeviceHandle_t hDevice );
10187 #endif
10188 
10213 #ifdef LIBTIEPIE_DYNAMIC
10214 typedef double(*LibTiePieGenSetPhase_t)( TpDeviceHandle_t hDevice , double dPhase );
10215 #else
10216 double GenSetPhase( TpDeviceHandle_t hDevice , double dPhase );
10217 #endif
10218 
10220 
10245 #ifdef LIBTIEPIE_DYNAMIC
10246 typedef double(*LibTiePieGenVerifyPhase_t)( TpDeviceHandle_t hDevice , double dPhase );
10247 #else
10248 double GenVerifyPhase( TpDeviceHandle_t hDevice , double dPhase );
10249 #endif
10250 
10277 #ifdef LIBTIEPIE_DYNAMIC
10278 typedef double(*LibTiePieGenVerifyPhaseEx_t)( TpDeviceHandle_t hDevice , double dPhase , uint32_t dwSignalType );
10279 #else
10280 double GenVerifyPhaseEx( TpDeviceHandle_t hDevice , double dPhase , uint32_t dwSignalType );
10281 #endif
10282 
10284 
10304 // Workaround: Without this line Doxygen adds the documentation below to the group above.
10305 
10324 #ifdef LIBTIEPIE_DYNAMIC
10325 typedef double(*LibTiePieGenGetSymmetryMin_t)( TpDeviceHandle_t hDevice );
10326 #else
10327 double GenGetSymmetryMin( TpDeviceHandle_t hDevice );
10328 #endif
10329 
10348 #ifdef LIBTIEPIE_DYNAMIC
10349 typedef double(*LibTiePieGenGetSymmetryMax_t)( TpDeviceHandle_t hDevice );
10350 #else
10351 double GenGetSymmetryMax( TpDeviceHandle_t hDevice );
10352 #endif
10353 
10355 
10380 #ifdef LIBTIEPIE_DYNAMIC
10381 typedef void(*LibTiePieGenGetSymmetryMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
10382 #else
10383 void GenGetSymmetryMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double* pMin , double* pMax );
10384 #endif
10385 
10387 
10406 #ifdef LIBTIEPIE_DYNAMIC
10407 typedef double(*LibTiePieGenGetSymmetry_t)( TpDeviceHandle_t hDevice );
10408 #else
10409 double GenGetSymmetry( TpDeviceHandle_t hDevice );
10410 #endif
10411 
10435 #ifdef LIBTIEPIE_DYNAMIC
10436 typedef double(*LibTiePieGenSetSymmetry_t)( TpDeviceHandle_t hDevice , double dSymmetry );
10437 #else
10438 double GenSetSymmetry( TpDeviceHandle_t hDevice , double dSymmetry );
10439 #endif
10440 
10442 
10467 #ifdef LIBTIEPIE_DYNAMIC
10468 typedef double(*LibTiePieGenVerifySymmetry_t)( TpDeviceHandle_t hDevice , double dSymmetry );
10469 #else
10470 double GenVerifySymmetry( TpDeviceHandle_t hDevice , double dSymmetry );
10471 #endif
10472 
10499 #ifdef LIBTIEPIE_DYNAMIC
10500 typedef double(*LibTiePieGenVerifySymmetryEx_t)( TpDeviceHandle_t hDevice , double dSymmetry , uint32_t dwSignalType );
10501 #else
10502 double GenVerifySymmetryEx( TpDeviceHandle_t hDevice , double dSymmetry , uint32_t dwSignalType );
10503 #endif
10504 
10506 
10525 // Workaround: Without this line Doxygen adds the documentation below to the group above.
10526 
10545 #ifdef LIBTIEPIE_DYNAMIC
10546 typedef double(*LibTiePieGenGetWidthMin_t)( TpDeviceHandle_t hDevice );
10547 #else
10548 double GenGetWidthMin( TpDeviceHandle_t hDevice );
10549 #endif
10550 
10569 #ifdef LIBTIEPIE_DYNAMIC
10570 typedef double(*LibTiePieGenGetWidthMax_t)( TpDeviceHandle_t hDevice );
10571 #else
10572 double GenGetWidthMax( TpDeviceHandle_t hDevice );
10573 #endif
10574 
10576 
10602 #ifdef LIBTIEPIE_DYNAMIC
10603 typedef void(*LibTiePieGenGetWidthMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double dSignalFrequency , double* pMin , double* pMax );
10604 #else
10605 void GenGetWidthMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType , double dSignalFrequency , double* pMin , double* pMax );
10606 #endif
10607 
10609 
10628 #ifdef LIBTIEPIE_DYNAMIC
10629 typedef double(*LibTiePieGenGetWidth_t)( TpDeviceHandle_t hDevice );
10630 #else
10631 double GenGetWidth( TpDeviceHandle_t hDevice );
10632 #endif
10633 
10657 #ifdef LIBTIEPIE_DYNAMIC
10658 typedef double(*LibTiePieGenSetWidth_t)( TpDeviceHandle_t hDevice , double dWidth );
10659 #else
10660 double GenSetWidth( TpDeviceHandle_t hDevice , double dWidth );
10661 #endif
10662 
10664 
10689 #ifdef LIBTIEPIE_DYNAMIC
10690 typedef double(*LibTiePieGenVerifyWidth_t)( TpDeviceHandle_t hDevice , double dWidth );
10691 #else
10692 double GenVerifyWidth( TpDeviceHandle_t hDevice , double dWidth );
10693 #endif
10694 
10722 #ifdef LIBTIEPIE_DYNAMIC
10723 typedef double(*LibTiePieGenVerifyWidthEx_t)( TpDeviceHandle_t hDevice , double dWidth , uint32_t dwSignalType , double dSignalFrequency );
10724 #else
10725 double GenVerifyWidthEx( TpDeviceHandle_t hDevice , double dWidth , uint32_t dwSignalType , double dSignalFrequency );
10726 #endif
10727 
10729 
10769 // Workaround: Without this line Doxygen adds the documentation below to the group above.
10770 
10788 #ifdef LIBTIEPIE_DYNAMIC
10789 typedef uint64_t(*LibTiePieGenGetDataLengthMin_t)( TpDeviceHandle_t hDevice );
10790 #else
10791 uint64_t GenGetDataLengthMin( TpDeviceHandle_t hDevice );
10792 #endif
10793 
10811 #ifdef LIBTIEPIE_DYNAMIC
10812 typedef uint64_t(*LibTiePieGenGetDataLengthMax_t)( TpDeviceHandle_t hDevice );
10813 #else
10814 uint64_t GenGetDataLengthMax( TpDeviceHandle_t hDevice );
10815 #endif
10816 
10818 
10842 #ifdef LIBTIEPIE_DYNAMIC
10843 typedef void(*LibTiePieGenGetDataLengthMinMaxEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType , uint64_t* pMin , uint64_t* pMax );
10844 #else
10845 void GenGetDataLengthMinMaxEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType , uint64_t* pMin , uint64_t* pMax );
10846 #endif
10847 
10849 
10867 #ifdef LIBTIEPIE_DYNAMIC
10868 typedef uint64_t(*LibTiePieGenGetDataLength_t)( TpDeviceHandle_t hDevice );
10869 #else
10870 uint64_t GenGetDataLength( TpDeviceHandle_t hDevice );
10871 #endif
10872 
10874 
10900 #ifdef LIBTIEPIE_DYNAMIC
10901 typedef uint64_t(*LibTiePieGenVerifyDataLength_t)( TpDeviceHandle_t hDevice , uint64_t qwDataLength );
10902 #else
10903 uint64_t GenVerifyDataLength( TpDeviceHandle_t hDevice , uint64_t qwDataLength );
10904 #endif
10905 
10932 #ifdef LIBTIEPIE_DYNAMIC
10933 typedef uint64_t(*LibTiePieGenVerifyDataLengthEx_t)( TpDeviceHandle_t hDevice , uint64_t qwDataLength , uint32_t dwSignalType );
10934 #else
10935 uint64_t GenVerifyDataLengthEx( TpDeviceHandle_t hDevice , uint64_t qwDataLength , uint32_t dwSignalType );
10936 #endif
10937 
10939 
10967 #ifdef LIBTIEPIE_DYNAMIC
10968 typedef void(*LibTiePieGenSetData_t)( TpDeviceHandle_t hDevice , const float* pBuffer , uint64_t qwSampleCount );
10969 #else
10970 void GenSetData( TpDeviceHandle_t hDevice , const float* pBuffer , uint64_t qwSampleCount );
10971 #endif
10972 
10974 
11001 #ifdef LIBTIEPIE_DYNAMIC
11002 typedef void(*LibTiePieGenSetDataEx_t)( TpDeviceHandle_t hDevice , const float* pBuffer , uint64_t qwSampleCount , uint32_t dwSignalType , uint32_t dwReserved );
11003 #else
11004 void GenSetDataEx( TpDeviceHandle_t hDevice , const float* pBuffer , uint64_t qwSampleCount , uint32_t dwSignalType , uint32_t dwReserved );
11005 #endif
11006 
11013 // Workaround: Without this line Doxygen adds the documentation below to the group above.
11014 
11023 #ifdef LIBTIEPIE_DYNAMIC
11024 typedef uint32_t(*LibTiePieGenGetDataRawType_t)( TpDeviceHandle_t hDevice );
11025 #else
11026 uint32_t GenGetDataRawType( TpDeviceHandle_t hDevice );
11027 #endif
11028 
11038 #ifdef LIBTIEPIE_DYNAMIC
11039 typedef void(*LibTiePieGenGetDataRawValueRange_t)( TpDeviceHandle_t hDevice , int64_t* pMin , int64_t* pZero , int64_t* pMax );
11040 #else
11041 void GenGetDataRawValueRange( TpDeviceHandle_t hDevice , int64_t* pMin , int64_t* pZero , int64_t* pMax );
11042 #endif
11043 
11051 #ifdef LIBTIEPIE_DYNAMIC
11052 typedef int64_t(*LibTiePieGenGetDataRawValueMin_t)( TpDeviceHandle_t hDevice );
11053 #else
11054 int64_t GenGetDataRawValueMin( TpDeviceHandle_t hDevice );
11055 #endif
11056 
11064 #ifdef LIBTIEPIE_DYNAMIC
11065 typedef int64_t(*LibTiePieGenGetDataRawValueZero_t)( TpDeviceHandle_t hDevice );
11066 #else
11067 int64_t GenGetDataRawValueZero( TpDeviceHandle_t hDevice );
11068 #endif
11069 
11077 #ifdef LIBTIEPIE_DYNAMIC
11078 typedef int64_t(*LibTiePieGenGetDataRawValueMax_t)( TpDeviceHandle_t hDevice );
11079 #else
11080 int64_t GenGetDataRawValueMax( TpDeviceHandle_t hDevice );
11081 #endif
11082 
11093 #ifdef LIBTIEPIE_DYNAMIC
11094 typedef void(*LibTiePieGenSetDataRaw_t)( TpDeviceHandle_t hDevice , const void* pBuffer , uint64_t qwSampleCount );
11095 #else
11096 void GenSetDataRaw( TpDeviceHandle_t hDevice , const void* pBuffer , uint64_t qwSampleCount );
11097 #endif
11098 
11111 #ifdef LIBTIEPIE_DYNAMIC
11112 typedef void(*LibTiePieGenSetDataRawEx_t)( TpDeviceHandle_t hDevice , const void* pBuffer , uint64_t qwSampleCount , uint32_t dwSignalType , uint32_t dwReserved );
11113 #else
11114 void GenSetDataRawEx( TpDeviceHandle_t hDevice , const void* pBuffer , uint64_t qwSampleCount , uint32_t dwSignalType , uint32_t dwReserved );
11115 #endif
11116 
11121 
11145 // Workaround: Without this line Doxygen adds the documentation below to the group above.
11146 
11164 #ifdef LIBTIEPIE_DYNAMIC
11165 typedef uint64_t(*LibTiePieGenGetModes_t)( TpDeviceHandle_t hDevice );
11166 #else
11167 uint64_t GenGetModes( TpDeviceHandle_t hDevice );
11168 #endif
11169 
11171 
11190 #ifdef LIBTIEPIE_DYNAMIC
11191 typedef uint64_t(*LibTiePieGenGetModesEx_t)( TpDeviceHandle_t hDevice , uint32_t dwSignalType , uint32_t dwFrequencyMode );
11192 #else
11193 uint64_t GenGetModesEx( TpDeviceHandle_t hDevice , uint32_t dwSignalType , uint32_t dwFrequencyMode );
11194 #endif
11195 
11197 
11215 #ifdef LIBTIEPIE_DYNAMIC
11216 typedef uint64_t(*LibTiePieGenGetModesNative_t)( TpDeviceHandle_t hDevice );
11217 #else
11218 uint64_t GenGetModesNative( TpDeviceHandle_t hDevice );
11219 #endif
11220 
11238 #ifdef LIBTIEPIE_DYNAMIC
11239 typedef uint64_t(*LibTiePieGenGetMode_t)( TpDeviceHandle_t hDevice );
11240 #else
11241 uint64_t GenGetMode( TpDeviceHandle_t hDevice );
11242 #endif
11243 
11265 #ifdef LIBTIEPIE_DYNAMIC
11266 typedef uint64_t(*LibTiePieGenSetMode_t)( TpDeviceHandle_t hDevice , uint64_t qwGeneratorMode );
11267 #else
11268 uint64_t GenSetMode( TpDeviceHandle_t hDevice , uint64_t qwGeneratorMode );
11269 #endif
11270 
11327 // Workaround: Without this line Doxygen adds the documentation below to the group above.
11328 
11345 #ifdef LIBTIEPIE_DYNAMIC
11346 typedef bool8_t(*LibTiePieGenIsBurstActive_t)( TpDeviceHandle_t hDevice );
11347 #else
11348 bool8_t GenIsBurstActive( TpDeviceHandle_t hDevice );
11349 #endif
11350 
11369 #ifdef LIBTIEPIE_DYNAMIC
11370 typedef uint64_t(*LibTiePieGenGetBurstCountMin_t)( TpDeviceHandle_t hDevice );
11371 #else
11372 uint64_t GenGetBurstCountMin( TpDeviceHandle_t hDevice );
11373 #endif
11374 
11393 #ifdef LIBTIEPIE_DYNAMIC
11394 typedef uint64_t(*LibTiePieGenGetBurstCountMax_t)( TpDeviceHandle_t hDevice );
11395 #else
11396 uint64_t GenGetBurstCountMax( TpDeviceHandle_t hDevice );
11397 #endif
11398 
11400 
11423 #ifdef LIBTIEPIE_DYNAMIC
11424 typedef void(*LibTiePieGenGetBurstCountMinMaxEx_t)( TpDeviceHandle_t hDevice , uint64_t qwGeneratorMode , uint64_t* pMin , uint64_t* pMax );
11425 #else
11426 void GenGetBurstCountMinMaxEx( TpDeviceHandle_t hDevice , uint64_t qwGeneratorMode , uint64_t* pMin , uint64_t* pMax );
11427 #endif
11428 
11430 
11449 #ifdef LIBTIEPIE_DYNAMIC
11450 typedef uint64_t(*LibTiePieGenGetBurstCount_t)( TpDeviceHandle_t hDevice );
11451 #else
11452 uint64_t GenGetBurstCount( TpDeviceHandle_t hDevice );
11453 #endif
11454 
11477 #ifdef LIBTIEPIE_DYNAMIC
11478 typedef uint64_t(*LibTiePieGenSetBurstCount_t)( TpDeviceHandle_t hDevice , uint64_t qwBurstCount );
11479 #else
11480 uint64_t GenSetBurstCount( TpDeviceHandle_t hDevice , uint64_t qwBurstCount );
11481 #endif
11482 
11501 #ifdef LIBTIEPIE_DYNAMIC
11502 typedef uint64_t(*LibTiePieGenGetBurstSampleCountMin_t)( TpDeviceHandle_t hDevice );
11503 #else
11504 uint64_t GenGetBurstSampleCountMin( TpDeviceHandle_t hDevice );
11505 #endif
11506 
11525 #ifdef LIBTIEPIE_DYNAMIC
11526 typedef uint64_t(*LibTiePieGenGetBurstSampleCountMax_t)( TpDeviceHandle_t hDevice );
11527 #else
11528 uint64_t GenGetBurstSampleCountMax( TpDeviceHandle_t hDevice );
11529 #endif
11530 
11532 
11555 #ifdef LIBTIEPIE_DYNAMIC
11556 typedef void(*LibTiePieGenGetBurstSampleCountMinMaxEx_t)( TpDeviceHandle_t hDevice , uint64_t qwGeneratorMode , uint64_t* pMin , uint64_t* pMax );
11557 #else
11558 void GenGetBurstSampleCountMinMaxEx( TpDeviceHandle_t hDevice , uint64_t qwGeneratorMode , uint64_t* pMin , uint64_t* pMax );
11559 #endif
11560 
11562 
11581 #ifdef LIBTIEPIE_DYNAMIC
11582 typedef uint64_t(*LibTiePieGenGetBurstSampleCount_t)( TpDeviceHandle_t hDevice );
11583 #else
11584 uint64_t GenGetBurstSampleCount( TpDeviceHandle_t hDevice );
11585 #endif
11586 
11609 #ifdef LIBTIEPIE_DYNAMIC
11610 typedef uint64_t(*LibTiePieGenSetBurstSampleCount_t)( TpDeviceHandle_t hDevice , uint64_t qwBurstSampleCount );
11611 #else
11612 uint64_t GenSetBurstSampleCount( TpDeviceHandle_t hDevice , uint64_t qwBurstSampleCount );
11613 #endif
11614 
11633 #ifdef LIBTIEPIE_DYNAMIC
11634 typedef uint64_t(*LibTiePieGenGetBurstSegmentCountMin_t)( TpDeviceHandle_t hDevice );
11635 #else
11636 uint64_t GenGetBurstSegmentCountMin( TpDeviceHandle_t hDevice );
11637 #endif
11638 
11657 #ifdef LIBTIEPIE_DYNAMIC
11658 typedef uint64_t(*LibTiePieGenGetBurstSegmentCountMax_t)( TpDeviceHandle_t hDevice );
11659 #else
11660 uint64_t GenGetBurstSegmentCountMax( TpDeviceHandle_t hDevice );
11661 #endif
11662 
11664 
11691 #ifdef LIBTIEPIE_DYNAMIC
11692 typedef void(*LibTiePieGenGetBurstSegmentCountMinMaxEx_t)( TpDeviceHandle_t hDevice , uint64_t qwGeneratorMode , uint32_t dwSignalType , uint32_t dwFrequencyMode , double dFrequency , uint64_t qwDataLength , uint64_t* pMin , uint64_t* pMax );
11693 #else
11694 void GenGetBurstSegmentCountMinMaxEx( TpDeviceHandle_t hDevice , uint64_t qwGeneratorMode , uint32_t dwSignalType , uint32_t dwFrequencyMode , double dFrequency , uint64_t qwDataLength , uint64_t* pMin , uint64_t* pMax );
11695 #endif
11696 
11698 
11717 #ifdef LIBTIEPIE_DYNAMIC
11718 typedef uint64_t(*LibTiePieGenGetBurstSegmentCount_t)( TpDeviceHandle_t hDevice );
11719 #else
11720 uint64_t GenGetBurstSegmentCount( TpDeviceHandle_t hDevice );
11721 #endif
11722 
11745 #ifdef LIBTIEPIE_DYNAMIC
11746 typedef uint64_t(*LibTiePieGenSetBurstSegmentCount_t)( TpDeviceHandle_t hDevice , uint64_t qwBurstSegmentCount );
11747 #else
11748 uint64_t GenSetBurstSegmentCount( TpDeviceHandle_t hDevice , uint64_t qwBurstSegmentCount );
11749 #endif
11750 
11752 
11776 #ifdef LIBTIEPIE_DYNAMIC
11777 typedef uint64_t(*LibTiePieGenVerifyBurstSegmentCount_t)( TpDeviceHandle_t hDevice , uint64_t qwBurstSegmentCount );
11778 #else
11779 uint64_t GenVerifyBurstSegmentCount( TpDeviceHandle_t hDevice , uint64_t qwBurstSegmentCount );
11780 #endif
11781 
11811 #ifdef LIBTIEPIE_DYNAMIC
11812 typedef uint64_t(*LibTiePieGenVerifyBurstSegmentCountEx_t)( TpDeviceHandle_t hDevice , uint64_t qwBurstSegmentCount , uint64_t qwGeneratorMode , uint32_t dwSignalType , uint32_t dwFrequencyMode , double dFrequency , uint64_t qwDataLength );
11813 #else
11814 uint64_t GenVerifyBurstSegmentCountEx( TpDeviceHandle_t hDevice , uint64_t qwBurstSegmentCount , uint64_t qwGeneratorMode , uint32_t dwSignalType , uint32_t dwFrequencyMode , double dFrequency , uint64_t qwDataLength );
11815 #endif
11816 
11818 
11868 // Workaround: Without this line Doxygen adds the documentation below to the group above.
11869 
11886 #ifdef LIBTIEPIE_DYNAMIC
11887 typedef void(*LibTiePieGenSetCallbackBurstCompleted_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
11888 #else
11889 void GenSetCallbackBurstCompleted( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
11890 #endif
11891 
11892 #ifdef LIBTIEPIE_LINUX
11893 
11910 #ifdef LIBTIEPIE_DYNAMIC
11911 typedef void(*LibTiePieGenSetEventBurstCompleted_t)( TpDeviceHandle_t hDevice , int fdEvent );
11912 #else
11913 void GenSetEventBurstCompleted( TpDeviceHandle_t hDevice , int fdEvent );
11914 #endif
11915 
11916 #endif
11917 
11918 #ifdef LIBTIEPIE_WINDOWS
11919 
11936 #ifdef LIBTIEPIE_DYNAMIC
11937 typedef void(*LibTiePieGenSetEventBurstCompleted_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
11938 #else
11939 void GenSetEventBurstCompleted( TpDeviceHandle_t hDevice , HANDLE hEvent );
11940 #endif
11941 
11960 #ifdef LIBTIEPIE_DYNAMIC
11961 typedef void(*LibTiePieGenSetMessageBurstCompleted_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
11962 #else
11963 void GenSetMessageBurstCompleted( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
11964 #endif
11965 
11966 #endif
11967 
11977 // Workaround: Without this line Doxygen adds the documentation below to the group above.
11978 
11995 #ifdef LIBTIEPIE_DYNAMIC
11996 typedef void(*LibTiePieGenSetCallbackControllableChanged_t)( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
11997 #else
11998 void GenSetCallbackControllableChanged( TpDeviceHandle_t hDevice , TpCallback_t pCallback , void* pData );
11999 #endif
12000 
12001 #ifdef LIBTIEPIE_LINUX
12002 
12019 #ifdef LIBTIEPIE_DYNAMIC
12020 typedef void(*LibTiePieGenSetEventControllableChanged_t)( TpDeviceHandle_t hDevice , int fdEvent );
12021 #else
12022 void GenSetEventControllableChanged( TpDeviceHandle_t hDevice , int fdEvent );
12023 #endif
12024 
12025 #endif
12026 
12027 #ifdef LIBTIEPIE_WINDOWS
12028 
12045 #ifdef LIBTIEPIE_DYNAMIC
12046 typedef void(*LibTiePieGenSetEventControllableChanged_t)( TpDeviceHandle_t hDevice , HANDLE hEvent );
12047 #else
12048 void GenSetEventControllableChanged( TpDeviceHandle_t hDevice , HANDLE hEvent );
12049 #endif
12050 
12069 #ifdef LIBTIEPIE_DYNAMIC
12070 typedef void(*LibTiePieGenSetMessageControllableChanged_t)( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
12071 #else
12072 void GenSetMessageControllableChanged( TpDeviceHandle_t hDevice , HWND hWnd , WPARAM wParam , LPARAM lParam );
12073 #endif
12074 
12075 #endif
12076 
12094 // Workaround: Without this line Doxygen adds the documentation below to the group above.
12095 
12111 #ifdef LIBTIEPIE_DYNAMIC
12112 typedef bool8_t(*LibTiePieI2CIsInternalAddress_t)( TpDeviceHandle_t hDevice , uint16_t wAddress );
12113 #else
12114 bool8_t I2CIsInternalAddress( TpDeviceHandle_t hDevice , uint16_t wAddress );
12115 #endif
12116 
12123 // Workaround: Without this line Doxygen adds the documentation below to the group above.
12124 
12148 #ifdef LIBTIEPIE_DYNAMIC
12149 typedef bool8_t(*LibTiePieI2CRead_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , void* pBuffer , uint32_t dwSize , bool8_t bStop );
12150 #else
12151 bool8_t I2CRead( TpDeviceHandle_t hDevice , uint16_t wAddress , void* pBuffer , uint32_t dwSize , bool8_t bStop );
12152 #endif
12153 
12177 #ifdef LIBTIEPIE_DYNAMIC
12178 typedef bool8_t(*LibTiePieI2CReadByte_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t* pValue );
12179 #else
12180 bool8_t I2CReadByte( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t* pValue );
12181 #endif
12182 
12207 #ifdef LIBTIEPIE_DYNAMIC
12208 typedef bool8_t(*LibTiePieI2CReadWord_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , uint16_t* pValue );
12209 #else
12210 bool8_t I2CReadWord( TpDeviceHandle_t hDevice , uint16_t wAddress , uint16_t* pValue );
12211 #endif
12212 
12220 // Workaround: Without this line Doxygen adds the documentation below to the group above.
12221 
12247 #ifdef LIBTIEPIE_DYNAMIC
12248 typedef bool8_t(*LibTiePieI2CWrite_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , const void* pBuffer , uint32_t dwSize , bool8_t bStop );
12249 #else
12250 bool8_t I2CWrite( TpDeviceHandle_t hDevice , uint16_t wAddress , const void* pBuffer , uint32_t dwSize , bool8_t bStop );
12251 #endif
12252 
12278 #ifdef LIBTIEPIE_DYNAMIC
12279 typedef bool8_t(*LibTiePieI2CWriteByte_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t byValue );
12280 #else
12281 bool8_t I2CWriteByte( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t byValue );
12282 #endif
12283 
12310 #ifdef LIBTIEPIE_DYNAMIC
12311 typedef bool8_t(*LibTiePieI2CWriteByteByte_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t byValue1 , uint8_t byValue2 );
12312 #else
12313 bool8_t I2CWriteByteByte( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t byValue1 , uint8_t byValue2 );
12314 #endif
12315 
12343 #ifdef LIBTIEPIE_DYNAMIC
12344 typedef bool8_t(*LibTiePieI2CWriteByteWord_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t byValue1 , uint16_t wValue2 );
12345 #else
12346 bool8_t I2CWriteByteWord( TpDeviceHandle_t hDevice , uint16_t wAddress , uint8_t byValue1 , uint16_t wValue2 );
12347 #endif
12348 
12375 #ifdef LIBTIEPIE_DYNAMIC
12376 typedef bool8_t(*LibTiePieI2CWriteWord_t)( TpDeviceHandle_t hDevice , uint16_t wAddress , uint16_t wValue );
12377 #else
12378 bool8_t I2CWriteWord( TpDeviceHandle_t hDevice , uint16_t wAddress , uint16_t wValue );
12379 #endif
12380 
12388 // Workaround: Without this line Doxygen adds the documentation below to the group above.
12389 
12406 #ifdef LIBTIEPIE_DYNAMIC
12407 typedef double(*LibTiePieI2CGetSpeedMax_t)( TpDeviceHandle_t hDevice );
12408 #else
12409 double I2CGetSpeedMax( TpDeviceHandle_t hDevice );
12410 #endif
12411 
12429 #ifdef LIBTIEPIE_DYNAMIC
12430 typedef double(*LibTiePieI2CGetSpeed_t)( TpDeviceHandle_t hDevice );
12431 #else
12432 double I2CGetSpeed( TpDeviceHandle_t hDevice );
12433 #endif
12434 
12454 #ifdef LIBTIEPIE_DYNAMIC
12455 typedef double(*LibTiePieI2CSetSpeed_t)( TpDeviceHandle_t hDevice , double dSpeed );
12456 #else
12457 double I2CSetSpeed( TpDeviceHandle_t hDevice , double dSpeed );
12458 #endif
12459 
12461 
12483 #ifdef LIBTIEPIE_DYNAMIC
12484 typedef double(*LibTiePieI2CVerifySpeed_t)( TpDeviceHandle_t hDevice , double dSpeed );
12485 #else
12486 double I2CVerifySpeed( TpDeviceHandle_t hDevice , double dSpeed );
12487 #endif
12488 
12490 
12529 // Workaround: Without this line Doxygen adds the documentation below to the group above.
12530 
12547 #ifdef LIBTIEPIE_DYNAMIC
12548 typedef LibTiePiePointerArray_t(*LibTiePieHlpPointerArrayNew_t)( uint32_t dwLength );
12549 #else
12550 LibTiePiePointerArray_t HlpPointerArrayNew( uint32_t dwLength );
12551 #endif
12552 
12568 #ifdef LIBTIEPIE_DYNAMIC
12569 typedef void(*LibTiePieHlpPointerArraySet_t)( LibTiePiePointerArray_t pArray , uint32_t dwIndex , void* pPointer );
12570 #else
12571 void HlpPointerArraySet( LibTiePiePointerArray_t pArray , uint32_t dwIndex , void* pPointer );
12572 #endif
12573 
12586 #ifdef LIBTIEPIE_DYNAMIC
12587 typedef void(*LibTiePieHlpPointerArrayDelete_t)( LibTiePiePointerArray_t pArray );
12588 #else
12589 void HlpPointerArrayDelete( LibTiePiePointerArray_t pArray );
12590 #endif
12591 
12598 #ifdef __cplusplus
12599 }
12600 #endif
12601 
12602 #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 a specified address on the I2C bus, using a specified I2C host.
uint32_t ScpSetClockSource(TpDeviceHandle_t hDevice, uint32_t dwClockSource)
Set the clock source of the specified oscilloscope.
uint64_t GenGetBurstCountMax(TpDeviceHandle_t hDevice)
Get the maximum burst count for the current generator mode of a specified generator.
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 the output of a specified generator.
uint32_t GenGetFrequencyMode(TpDeviceHandle_t hDevice)
Get the current generator frequency mode of a specified generator.
bool8_t ScpIsDataOverflow(TpDeviceHandle_t hDevice)
Check whether a data overflow has occurred.
void ScpSetEventTriggered(TpDeviceHandle_t hDevice, int fdEvent)
Set an event file descriptor which is set when the oscilloscope is triggered.
bool8_t GenStart(TpDeviceHandle_t hDevice)
Start the signal generation of a specified generator.
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.
uint32_t LstDevGetProductId(uint32_t dwIdKind, uint32_t dwId)
Get the product id of the listed device.
TpVersion_t LstDevGetDriverVersion(uint32_t dwIdKind, uint32_t dwId)
Get the version number of the driver currently used by the listed device.
double GenSetFrequency(TpDeviceHandle_t hDevice, double dFrequency)
Set signal/sample frequency, of a specified generator.
uint32_t LstCreateCombinedDevice(const TpDeviceHandle_t *pDeviceHandles, uint32_t dwCount)
Create a combined instrument.
bool8_t DevTrInIsAvailable(TpDeviceHandle_t hDevice, uint16_t wInput)
Check whether a device trigger input is available.
double GenGetPhaseMax(TpDeviceHandle_t hDevice)
Get the maximum signal phase of a specified generator.
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.
void DevClose(TpDeviceHandle_t hDevice)
Close a device.
double GenSetWidth(TpDeviceHandle_t hDevice, double dWidth)
Set the pulse width, of a specified generator.
uint32_t DevGetName(TpDeviceHandle_t hDevice, char *pBuffer, uint32_t dwBufferLength)
Get the full name of the device.
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 a specified address on the I2C bus, using a specified I2C host. ...
uint64_t ScpGetRecordLengthMax(TpDeviceHandle_t hDevice)
Get the maximum supported record length of a specified oscilloscope.
bool8_t GenSetAmplitudeAutoRanging(TpDeviceHandle_t hDevice, bool8_t bEnable)
Set the amplitude auto ranging setting for a specified generator.
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.
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 clock speed on the I2C bus controlled by a specified I2C host.
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 of a specified oscilloscope.
bool8_t ScpIsDataReady(TpDeviceHandle_t hDevice)
Check whether new, unread measured data is available.
bool8_t GenStop(TpDeviceHandle_t hDevice)
Stop the signal generation of a specified generator.
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 oscilloscope.
uint64_t ScpGetValidPreSampleCount(TpDeviceHandle_t hDevice)
Get the number of valid pre samples in the measurement.
uint32_t ScpGetClockSource(TpDeviceHandle_t hDevice)
Get the currently selected clock source of the specified oscilloscope.
double ScpSetPreSampleRatio(TpDeviceHandle_t hDevice, double dPreSampleRatio)
Set the pre sample ratio of a specified oscilloscope.
uint32_t GenGetFrequencyModes(TpDeviceHandle_t hDevice)
Get the supported generator frequency modes of a specified generator.
uint64_t GenGetDataLengthMax(TpDeviceHandle_t hDevice)
Get the maximum length of the waveform buffer of a specified generator.
void LstSetEventDeviceRemoved(int fdEvent)
Set an event file descriptor which is set when a device is removed from the device list...
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.
bool8_t I2CWrite(TpDeviceHandle_t hDevice, uint16_t wAddress, const void *pBuffer, uint32_t dwSize, bool8_t bStop)
Write data to a specified address on the I2C bus, using a specified I2C host.
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.
void ScpSetCallbackDataOverflow(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set a callback function which is called when the oscilloscope streaming measurement caused an data ov...
double ScpSetSampleFrequency(TpDeviceHandle_t hDevice, double dSampleFrequency)
Set the sample frequency of a specified oscilloscope.
double ScpGetTriggerTimeOut(TpDeviceHandle_t hDevice)
Get the currently selected trigger time out in seconds, for a specified oscilloscope.
void LstSetCallbackDeviceRemoved(TpCallbackDeviceList_t pCallback, void *pData)
Set a callback function which is called when a device is removed from the device list.
bool8_t ScpChTrSetEnabled(TpDeviceHandle_t hDevice, uint16_t wCh, bool8_t bEnable)
To select a channel as trigger source, set channel trigger enable.
bool8_t GenGetAmplitudeAutoRanging(TpDeviceHandle_t hDevice)
Get the amplitude auto ranging setting for a specified generator.
uint32_t GenGetConnectorType(TpDeviceHandle_t hDevice)
Get the output connector type for a specified generator.
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 the clock output of the specified oscilloscope.
const char * LibGetLastStatusStr(void)
Get the last status value as text.
double GenGetOutputValueMax(TpDeviceHandle_t hDevice)
Get the maximum output value of a specified generator.
bool8_t ScpIsConnectionTestCompleted(TpDeviceHandle_t hDevice)
Check whether the connection test on a specified oscilloscope is completed.
bool8_t ScpHasTriggerHoldOff(TpDeviceHandle_t hDevice)
Check whether the oscilloscope has trigger hold off support with the currently selected measure mode...
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 for a specified oscilloscope.
uint32_t DevGetNameShortest(TpDeviceHandle_t hDevice, char *pBuffer, uint32_t dwBufferLength)
Get the short name of the device without model postfix.
uint64_t GenGetBurstSegmentCount(TpDeviceHandle_t hDevice)
Get the current burst segment count of a specified generator.
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 LstSetEventDeviceAdded(int fdEvent)
Set an event file descriptor which is set when a device is added to the device list.
bool8_t ScpHasTrigger(TpDeviceHandle_t hDevice)
Check whether the oscilloscope has trigger support with the currently selected measure mode...
bool8_t I2CRead(TpDeviceHandle_t hDevice, uint16_t wAddress, void *pBuffer, uint32_t dwSize, bool8_t bStop)
Read data from a specified address on the I2C bus, using a specified I2C host.
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.
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...
uint64_t GenGetDataLengthMin(TpDeviceHandle_t hDevice)
Get the minimum length of the waveform buffer of a specified generator.
LibTiePiePointerArray_t HlpPointerArrayNew(uint32_t dwLength)
Create a new pointer array.
bool8_t ScpHasConnectionTest(TpDeviceHandle_t hDevice)
Check whether the specified oscilloscope supports connection testing.
bool8_t ScpChHasConnectionTest(TpDeviceHandle_t hDevice, uint16_t wCh)
Check whether a specified channel of a specified oscilloscope supports connection testing...
bool8_t ScpHasTriggerDelay(TpDeviceHandle_t hDevice)
Check whether the oscilloscope has trigger delay support with the currently selected measure mode...
uint64_t GenGetMode(TpDeviceHandle_t hDevice)
Get the current generator mode of a specified generator.
uint32_t ScpChTrGetCondition(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the current selected trigger condition for a specified channel.
uint32_t ScpGetSegmentCountMax(TpDeviceHandle_t hDevice)
Get the maximum supported number of segments of a specified oscilloscope.
double ScpGetSampleFrequencyMax(TpDeviceHandle_t hDevice)
Get the maximum supported sample frequency of a specified oscilloscope.
bool8_t ScpIsRunning(TpDeviceHandle_t hDevice)
Check whether the oscilloscope is currently measuring.
uint64_t GenGetBurstSampleCount(TpDeviceHandle_t hDevice)
Get the current burst sample count for the current generator mode of a specified generator.
bool8_t ScpStop(TpDeviceHandle_t hDevice)
Stop a running measurement.
uint32_t DevGetSerialNumber(TpDeviceHandle_t hDevice)
Get the serial number of the device.
double GenGetAmplitudeRange(TpDeviceHandle_t hDevice)
Get the currently set amplitude range for a specified generator.
uint64_t DevTrOutGetEvent(TpDeviceHandle_t hDevice, uint16_t wOutput)
Get the currently selected trigger output event for a specified device trigger output.
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 the supported signal types of a specified generator.
void ScpSetEventDataReady(TpDeviceHandle_t hDevice, int fdEvent)
Set an event file descriptor which is set when the oscilloscope has new measurement data ready...
uint8_t ScpGetResolution(TpDeviceHandle_t hDevice)
Get the current resolution of the specified oscilloscope.
double ScpSetTriggerTimeOut(TpDeviceHandle_t hDevice, double dTimeOut)
Set the trigger time out in seconds, for a specified oscilloscope.
uint32_t ScpGetResolutions(TpDeviceHandle_t hDevice, uint8_t *pList, uint32_t dwLength)
Get an array with the supported resolutions of the specified oscilloscope.
uint8_t LibTiePieTriState_t
TriState value one byte wide.
Definition: libtiepie.h:1345
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 the supported clock outputs of the specified oscilloscope.
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...
double GenGetPhase(TpDeviceHandle_t hDevice)
Get the current signal phase of a specified generator.
uint32_t LstDevGetTypes(uint32_t dwIdKind, uint32_t dwId)
Get the device types of the listed device.
uint8_t GenGetResolution(TpDeviceHandle_t hDevice)
Get the DAC resolution of a specified generator.
bool8_t ScpForceTrigger(TpDeviceHandle_t hDevice)
Force a trigger.
uint64_t GenGetBurstSegmentCountMin(TpDeviceHandle_t hDevice)
Get the minimum burst segment count for the current settings of a specified generator.
uint64_t GenSetBurstSegmentCount(TpDeviceHandle_t hDevice, uint64_t qwBurstSegmentCount)
Set the burst segment count of a specified generator.
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.
double GenGetFrequencyMin(TpDeviceHandle_t hDevice)
Get the minimum signal/sample frequency with the current frequency mode, of a specified generator...
uint64_t GenGetDataLength(TpDeviceHandle_t hDevice)
Get the length of the currently loaded waveform pattern of a specified generator. ...
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.
void GenSetEventBurstCompleted(TpDeviceHandle_t hDevice, int fdEvent)
Set an event file descriptor which is set when the generator burst is completed.
uint32_t ScpGetSegmentCount(TpDeviceHandle_t hDevice)
Get the currently selected number of segments of a specified oscilloscope.
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.
double GenGetOffsetMax(TpDeviceHandle_t hDevice)
Get the maximum offset for the current signal type, of a specified generator.
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.
void ScpSetEventConnectionTestCompleted(TpDeviceHandle_t hDevice, int fdEvent)
Set an event file descriptor which is set when the oscilloscope connection test is completed...
bool8_t ScpStartConnectionTest(TpDeviceHandle_t hDevice)
Perform a connection test on all enabled channels of a specified oscilloscope.
bool8_t I2CReadWord(TpDeviceHandle_t hDevice, uint16_t wAddress, uint16_t *pValue)
Read one word from a specified address on the I2C bus, using a specified I2C host.
bool8_t ScpChSetAutoRanging(TpDeviceHandle_t hDevice, uint16_t wCh, bool8_t bEnable)
Set auto ranging for a specified channel.
double GenSetPhase(TpDeviceHandle_t hDevice, double dPhase)
Set the signal phase of a specified generator.
double GenGetWidth(TpDeviceHandle_t hDevice)
Get the current pulse width, of a specified generator.
double GenGetAmplitudeMin(TpDeviceHandle_t hDevice)
Get the minimum signal amplitude for the current signal type of a specified generator.
double GenGetFrequencyMax(TpDeviceHandle_t hDevice)
Get the maximum signal/sample frequency with the current frequency mode and signal type...
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 the current burst count for the current generator mode of a specified generator.
uint32_t ScpChTrGetTimeCount(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the number of trigger times for the current trigger kind and trigger condition.
void GenSetCallbackControllableChanged(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set a callback function which is called when the generator controllable property changes.
double GenGetImpedance(TpDeviceHandle_t hDevice)
Get the output impedance of a specified generator.
uint8_t ScpSetResolution(TpDeviceHandle_t hDevice, uint8_t byResolution)
Set the resolution of the specified oscilloscope.
uint32_t LstDevGetNameShort(uint32_t dwIdKind, uint32_t dwId, char *pBuffer, uint32_t dwBufferLength)
Get the short name of the listed device.
void LibInit(void)
Create and initialize internal resources used by the library.
int32_t LibTiePieStatus_t
LibTiePie status code.
Definition: libtiepie.h:1290
bool8_t GenIsDifferential(TpDeviceHandle_t hDevice)
Check whether the output of a specified generator 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 the currently selected clock output of the specified oscilloscope.
uint16_t DevTrGetOutputIndexById(TpDeviceHandle_t hDevice, uint32_t dwId)
Get the index of trigger output identified by its ID.
uint64_t ScpSetTriggerHoldOffCount(TpDeviceHandle_t hDevice, uint64_t qwTriggerHoldOffCount)
Set the trigger hold off count in samples, for a specified oscilloscope.
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 a specified address on the I2C bus, using a specified I2C host...
uint32_t GenGetSignalType(TpDeviceHandle_t hDevice)
Get the currently selected signal type of a specified generator.
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.
double ScpGetSampleFrequency(TpDeviceHandle_t hDevice)
Get the currently selected sample frequency of a specified oscilloscope.
uint8_t bool8_t
Boolean value one byte wide.
Definition: libtiepie.h:1344
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 of a specified oscilloscope.
uint64_t TpVersion_t
Data type representing a version number.
Definition: libtiepie.h:1322
double ScpSetTriggerDelay(TpDeviceHandle_t hDevice, double dDelay)
Set trigger delay in seconds, for a specified oscilloscope.
uint64_t GenGetBurstSampleCountMax(TpDeviceHandle_t hDevice)
Get the maximum burst sample count for the current generator mode of a specified generator.
bool8_t ScpChTrIsTriggered(TpDeviceHandle_t hDevice, uint16_t wCh)
Check whether the channel trigger caused a trigger.
uint64_t GenGetBurstSegmentCountMax(TpDeviceHandle_t hDevice)
Get the maximum burst segment count for the current settings of a specified generator.
double GenSetAmplitudeRange(TpDeviceHandle_t hDevice, double dRange)
Set the amplitude range for a specified generator.
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 GenGetWidthMin(TpDeviceHandle_t hDevice)
Get the minimum pulse width with the current signal frequency, of a specified generator.
void LstSetCallbackDeviceAdded(TpCallbackDeviceList_t pCallback, void *pData)
Set a callback function which is called when a device is added to the device list.
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...
void ScpSetCallbackDataReady(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set a callback function which is called when the oscilloscope has new measurement data ready...
uint32_t LibGetConfig(uint8_t *pBuffer, uint32_t dwBufferLength)
Get the library configuration number.
void ScpSetCallbackTriggered(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set a callback function which is called when the oscilloscope is triggered.
bool8_t GenIsBurstActive(TpDeviceHandle_t hDevice)
Check whether a burst is active, of a specified generator.
uint64_t ScpChGetCoupling(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the currently set coupling of a specified channel.
void(* TpCallbackDeviceList_t)(void *pData, uint32_t dwDeviceTypes, uint32_t dwSerialNumber)
Definition: libtiepie.h:770
TpDate_t LstDevGetCalibrationDate(uint32_t dwIdKind, uint32_t dwId)
Get the calibration date of the listed device.
uint32_t ScpGetAutoResolutionModes(TpDeviceHandle_t hDevice)
Get the supported auto resolution modes of the specified oscilloscope.
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 GenGetModes(TpDeviceHandle_t hDevice)
Get the supported generator modes for the current signal type and frequency mode of a specified gener...
TpDeviceHandle_t LstOpenI2CHost(uint32_t dwIdKind, uint32_t dwId)
Open an I2C host and get a handle to the I2C host.
double GenSetOffset(TpDeviceHandle_t hDevice, double dOffset)
Set the signal offset of a specified generator.
uint32_t ScpSetSegmentCount(TpDeviceHandle_t hDevice, uint32_t dwSegmentCount)
Set the number of segments of a specified oscilloscope.
void LstRemoveDevice(uint32_t dwSerialNumber)
Remove an instrument from the device list so it can be used by other applications.
void LibExit(void)
Clear and free internal resources used by the library.
uint32_t LstDevGetName(uint32_t dwIdKind, uint32_t dwId, char *pBuffer, uint32_t dwBufferLength)
Get the full name of the listed device.
void GenSetEventControllableChanged(TpDeviceHandle_t hDevice, int fdEvent)
Set an event file descriptor which is set when the generator controllable property changes...
uint64_t GenSetBurstSampleCount(TpDeviceHandle_t hDevice, uint64_t qwBurstSampleCount)
Set the burst sample count for the current generator mode of a specified generator.
void HlpPointerArraySet(LibTiePiePointerArray_t pArray, uint32_t dwIndex, void *pPointer)
Set a pointer at a specified index in a specified pointer array.
uint32_t TpDate_t
Data type representing a date.
Definition: libtiepie.h:1343
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 ...
double GenGetOutputValueMin(TpDeviceHandle_t hDevice)
Get the minimum output value of a specified generator.
double GenGetPhaseMin(TpDeviceHandle_t hDevice)
Get the minimum signal phase of a specified generator.
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 clock speed on the I2C bus controlled by a specified I2C host.
double GenGetSymmetryMax(TpDeviceHandle_t hDevice)
Get the maximum signal symmetry of a specified generator.
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.
bool8_t ScpTrInIsTriggered(TpDeviceHandle_t hDevice, uint16_t wInput)
Check whether the trigger input caused a trigger.
void GenSetCallbackBurstCompleted(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set a callback function which is called when the generator burst is completed.
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.
uint64_t GenGetModesNative(TpDeviceHandle_t hDevice)
Get all supported generator modes of a specified generator, regardless of the signal type and frequen...
bool8_t GenSetOutputInvert(TpDeviceHandle_t hDevice, bool8_t bInvert)
Enable or disable the output invert of a specified generator.
double ScpChTrGetTime(TpDeviceHandle_t hDevice, uint16_t wCh, uint32_t dwIndex)
Get the current trigger time value for a specified channel and trigger type.
bool8_t ScpChGetEnabled(TpDeviceHandle_t hDevice, uint16_t wCh)
Check whether a specified channel is currently enabled.
bool8_t GenIsControllable(TpDeviceHandle_t hDevice)
Check whether a specified generator can be controlled.
uint32_t GenGetStatus(TpDeviceHandle_t hDevice)
Get the current signal generation status of a specified generator.
double GenSetSymmetry(TpDeviceHandle_t hDevice, double dSymmetry)
Set the signal symmetry of a specified generator.
uint32_t TpDeviceHandle_t
Device handle.
Definition: libtiepie.h:1291
bool8_t GenGetOutputInvert(TpDeviceHandle_t hDevice)
Check whether the output of a specified generator is inverted.
double GenGetOffsetMin(TpDeviceHandle_t hDevice)
Get the minimum offset for the current signal type, of a specified generator.
double ScpGetPreSampleRatio(TpDeviceHandle_t hDevice)
Get the current pre sample ratio of a specified oscilloscope.
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 GenGetFrequency(TpDeviceHandle_t hDevice)
Get the current signal/sample frequency, of a specified generator.
uint32_t ScpGetAutoResolutionMode(TpDeviceHandle_t hDevice)
Get the current auto resolution mode of the specified oscilloscope.
uint64_t GenGetBurstCountMin(TpDeviceHandle_t hDevice)
Get the minimum burst count for the current generator mode of a specified generator.
double ScpGetTriggerDelay(TpDeviceHandle_t hDevice)
Get the currently selected trigger delay in seconds, for a specified oscilloscope.
double GenGetAmplitude(TpDeviceHandle_t hDevice)
Get the currently set signal amplitude of a specified generator.
double I2CSetSpeed(TpDeviceHandle_t hDevice, double dSpeed)
Set the clock speed on the I2C bus controlled by a specified I2C host.
void ScpSetCallbackConnectionTestCompleted(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set a callback function which is called when the oscilloscope connection test is completed.
uint32_t LstGetCount(void)
Get the number of devices in the device list.
double GenGetSymmetryMin(TpDeviceHandle_t hDevice)
Get the minimum signal symmetry of a specified generator.
void HlpPointerArrayDelete(LibTiePiePointerArray_t pArray)
Delete an existing pointer array.
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 a specified address on the I2C bus, using a specified I2C host. ...
double ScpGetTriggerDelayMax(TpDeviceHandle_t hDevice)
Get the maximum trigger delay in seconds, for the currently selected measure mode and sample frequenc...
bool8_t ScpIsTimeOutTriggered(TpDeviceHandle_t hDevice)
Check whether the trigger was caused by the trigger time out.
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 ScpSetAutoResolutionMode(TpDeviceHandle_t hDevice, uint32_t dwAutoResolutionMode)
Set the auto resolution mode of the specified oscilloscope.
const char * LibGetVersionExtra(void)
Get the library version postfix.
double GenGetWidthMax(TpDeviceHandle_t hDevice)
Get the maximum pulse width with the current signal frequency, of a specified generator.
double GenGetSymmetry(TpDeviceHandle_t hDevice)
Get the current signal symmetry of a specified generator.
bool8_t LstDevCanOpen(uint32_t dwIdKind, uint32_t dwId, uint32_t dwDeviceType)
Check whether the listed device can be opened.
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.
uint64_t ScpGetTriggerHoldOffCount(TpDeviceHandle_t hDevice)
Get the trigger hold off count in samples, for a specified oscilloscope.
uint32_t GenSetSignalType(TpDeviceHandle_t hDevice, uint32_t dwSignalType)
Set the signal type of a specified generator.
bool8_t ScpChSetEnabled(TpDeviceHandle_t hDevice, uint16_t wCh, bool8_t bEnable)
Set channel enable.
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.
void GenSetData(TpDeviceHandle_t hDevice, const float *pBuffer, uint64_t qwSampleCount)
Load a waveform pattern into the waveform buffer of a specified generator.
uint32_t LstDevGetSerialNumber(uint32_t dwIdKind, uint32_t dwId)
Get the serial number of the listed device.
uint64_t GenSetBurstCount(TpDeviceHandle_t hDevice, uint64_t qwBurstCount)
Set the burst count for the current generator mode of a specified generator.
uint64_t GenGetBurstSampleCountMin(TpDeviceHandle_t hDevice)
Get the minimum burst sample count for the current generator mode of a specified generator.
bool8_t I2CWriteByteByte(TpDeviceHandle_t hDevice, uint16_t wAddress, uint8_t byValue1, uint8_t byValue2)
Write two bytes to a specified address on the I2C bus, using a specified I2C host.
double GenSetAmplitude(TpDeviceHandle_t hDevice, double dAmplitude)
Set the signal amplitude of a specified generator.
uint32_t DevTrOutGetName(TpDeviceHandle_t hDevice, uint16_t wOutput, char *pBuffer, uint32_t dwBufferLength)
Get the name of a specified device trigger output.
uint32_t LstCbDevGetProductId(uint32_t dwIdKind, uint32_t dwId, uint32_t dwContainedDeviceSerialNumber)
Get the product id of a device contained in a combined device.
void ** LibTiePiePointerArray_t
Pointer array.
Definition: libtiepie.h:1346
void(* TpCallback_t)(void *pData)
Definition: libtiepie.h:764
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.
uint32_t DevTrInGetId(TpDeviceHandle_t hDevice, uint16_t wInput)
Get the id of a specified device trigger input.
TpDeviceHandle_t LstCreateAndOpenCombinedDevice(const TpDeviceHandle_t *pDeviceHandles, uint32_t dwCount)
Create and open a combined instrument.
uint64_t GenSetMode(TpDeviceHandle_t hDevice, uint64_t qwGeneratorMode)
Set the generator mode of a specified generator.
uint32_t DevGetType(TpDeviceHandle_t hDevice)
Get the device type.
uint32_t GenGetAmplitudeRanges(TpDeviceHandle_t hDevice, double *pList, uint32_t dwLength)
Get the supported amplitude ranges for a specified generator.
uint32_t ScpChTrGetConditions(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the supported trigger conditions for a specified channel with the currently selected trigger kind...
double GenGetAmplitudeMax(TpDeviceHandle_t hDevice)
Get the maximum signal amplitude for the current signal type of a specified generator.
void DevSetEventRemoved(TpDeviceHandle_t hDevice, int fdEvent)
Set an event file descriptor which is set when the device is removed.
void ScpSetEventDataOverflow(TpDeviceHandle_t hDevice, int fdEvent)
Set an event file descriptor which is set when the oscilloscope streaming measurement caused an data ...
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.
bool8_t LibIsInitialized(void)
Check whether the library's internal resources are initialized.
void DevSetCallbackRemoved(TpDeviceHandle_t hDevice, TpCallback_t pCallback, void *pData)
Set a callback function which is called when the device is removed.
uint64_t DevTrInGetKind(TpDeviceHandle_t hDevice, uint16_t wInput)
Get the currently selected trigger kind for a specified device trigger input.
bool8_t GenGetOutputOn(TpDeviceHandle_t hDevice)
Check whether the output of a specified generator is enabled.
bool8_t ScpIsForceTriggered(TpDeviceHandle_t hDevice)
Check whether the trigger was caused by ScpForceTrigger.
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 oscilloscope has triggered.
double GenGetOffset(TpDeviceHandle_t hDevice)
Get the current signal offset of a specified generator.
uint32_t GenSetFrequencyMode(TpDeviceHandle_t hDevice, uint32_t dwFrequencyMode)
Set the generator frequency mode of a specified generator.
uint64_t ScpChTrGetKind(TpDeviceHandle_t hDevice, uint16_t wCh)
Get the currently selected channel trigger kind for a specified channel.
void LstUpdate(void)
Update the device list.
uint64_t ScpGetTriggerHoldOffCountMax(TpDeviceHandle_t hDevice)
Get the maximum trigger hold off count in samples, for a specified oscilloscope.
uint32_t ScpGetClockSources(TpDeviceHandle_t hDevice)
Get the supported clock sources of the specified oscilloscope.