libtiepie-hw 1.4.0
Loading...
Searching...
No Matches
libtiepie-hw.h
1
6#ifndef _LIBTIEPIE_HW_H_
7#define _LIBTIEPIE_HW_H_
8
9#ifdef __cplusplus
10 #include <cstdlib>
11 #include <cstdint>
12#else
13 #include <stdlib.h>
14 #include <stdint.h>
15#endif
16
17#ifndef TIEPIE_HW_API
18 #define TIEPIE_HW_API
19#endif
20
21#ifdef __cplusplus
22extern "C"
23{
24#endif
25
26#define TIEPIE_HW_VERSION_MAJOR 1
27#define TIEPIE_HW_VERSION_MINOR 4
28#define TIEPIE_HW_VERSION_PATCH 0
29#define TIEPIE_HW_VERSION_NUMBER "1.4.0"
30#define TIEPIE_HW_VERSION "1.4.0"
31
777#define TIEPIE_HW_HANDLE_INVALID 0
778
785#define TIEPIE_HW_BOOL_FALSE 0
786#define TIEPIE_HW_BOOL_TRUE 1
787
794#define TIEPIE_HW_INTERFACE_DEVICE 0x0000000000000001
795#define TIEPIE_HW_INTERFACE_OSCILLOSCOPE 0x0000000000000002
796#define TIEPIE_HW_INTERFACE_GENERATOR 0x0000000000000004
797#define TIEPIE_HW_INTERFACE_SERVER 0x0000000000000010
798
799#define TIEPIE_HW_INTERFACE_COUNT 4
800
807#define TIEPIE_HW_DEVICETYPE_OSCILLOSCOPE 0x00000001
808#define TIEPIE_HW_DEVICETYPE_GENERATOR 0x00000002
809
810#define TIEPIE_HW_DEVICETYPE_COUNT 2
811
818#define TIEPIE_HW_CONNECTORTYPE_UNKNOWN 0x00000000
819
820#define TIEPIE_HW_CONNECTORTYPE_BNC 0x00000001
821#define TIEPIE_HW_CONNECTORTYPE_BANANA 0x00000002
822#define TIEPIE_HW_CONNECTORTYPE_POWERPLUG 0x00000004
823
824#define TIEPIE_HW_CONNECTORTYPE_COUNT 3
825
831#define TIEPIE_HW_CONNECTORTYPE_MASK (TIEPIE_HW_CONNECTORTYPE_BNC | TIEPIE_HW_CONNECTORTYPE_BANANA | TIEPIE_HW_CONNECTORTYPE_POWERPLUG)
832
840#define TIEPIE_HW_DATARAWTYPE_UNKNOWN 0x00000000
841
842#define TIEPIE_HW_DATARAWTYPE_INT8 0x00000001
843#define TIEPIE_HW_DATARAWTYPE_INT16 0x00000002
844#define TIEPIE_HW_DATARAWTYPE_INT32 0x00000004
845#define TIEPIE_HW_DATARAWTYPE_INT64 0x00000008
846
847#define TIEPIE_HW_DATARAWTYPE_UINT8 0x00000010
848#define TIEPIE_HW_DATARAWTYPE_UINT16 0x00000020
849#define TIEPIE_HW_DATARAWTYPE_UINT32 0x00000040
850#define TIEPIE_HW_DATARAWTYPE_UINT64 0x00000080
851
852#define TIEPIE_HW_DATARAWTYPE_FLOAT32 0x00000100
853#define TIEPIE_HW_DATARAWTYPE_FLOAT64 0x00000200
854
855#define TIEPIE_HW_DATARAWTYPE_COUNT 10
856
862#define TIEPIE_HW_DATARAWTYPE_MASK_INT (TIEPIE_HW_DATARAWTYPE_INT8 | TIEPIE_HW_DATARAWTYPE_INT16 | TIEPIE_HW_DATARAWTYPE_INT32 | TIEPIE_HW_DATARAWTYPE_INT64)
863#define TIEPIE_HW_DATARAWTYPE_MASK_UINT (TIEPIE_HW_DATARAWTYPE_UINT8 | TIEPIE_HW_DATARAWTYPE_UINT16 | TIEPIE_HW_DATARAWTYPE_UINT32 | TIEPIE_HW_DATARAWTYPE_UINT64)
864#define TIEPIE_HW_DATARAWTYPE_MASK_FLOAT (TIEPIE_HW_DATARAWTYPE_FLOAT32 | TIEPIE_HW_DATARAWTYPE_FLOAT64 )
865#define TIEPIE_HW_DATARAWTYPE_MASK_FIXED (TIEPIE_HW_DATARAWTYPE_MASK_INT | TIEPIE_HW_DATARAWTYPE_MASK_UINT)
866
874#define TIEPIE_HW_TRISTATE_UNDEFINED 0
875#define TIEPIE_HW_TRISTATE_FALSE 1
876#define TIEPIE_HW_TRISTATE_TRUE 2
877
884#define TIEPIE_HW_TRIGGERIO_INDEX_INVALID 0xffff
885
892#define TIEPIE_HW_STRING_LENGTH_NULL_TERMINATED 0xffffffff
893
900#define TIEPIE_HW_SERVER_STATUS_DISCONNECTED 0
901#define TIEPIE_HW_SERVER_STATUS_CONNECTING 1
902#define TIEPIE_HW_SERVER_STATUS_CONNECTED 2
903#define TIEPIE_HW_SERVER_STATUS_DISCONNECTING 3
904
911#define TIEPIE_HW_SERVER_ERROR_NONE 0
912#define TIEPIE_HW_SERVER_ERROR_UNKNOWN 1
913#define TIEPIE_HW_SERVER_ERROR_CONNECTIONREFUSED 2
914#define TIEPIE_HW_SERVER_ERROR_NETWORKUNREACHABLE 3
915#define TIEPIE_HW_SERVER_ERROR_TIMEDOUT 4
916#define TIEPIE_HW_SERVER_ERROR_HOSTNAMELOOKUPFAILED 5
917
923
929#define TIEPIE_HW_RANGEINDEX_AUTO 0xffffffff
930
936
942#define TIEPIE_HW_POINTER_ARRAY_MAX_LENGTH 256
943
956#define TIEPIE_HW_ARMN_COUNT 3
957
963#define TIEPIE_HW_ARMB_DISABLED 0
964#define TIEPIE_HW_ARMB_NATIVEONLY 1
965#define TIEPIE_HW_ARMB_ALL 2
966
971#define TIEPIE_HW_ARM_UNKNOWN 0
972
973#define TIEPIE_HW_ARM_DISABLED (1 << TIEPIE_HW_ARMB_DISABLED)
974#define TIEPIE_HW_ARM_NATIVEONLY (1 << TIEPIE_HW_ARMB_NATIVEONLY)
975#define TIEPIE_HW_ARM_ALL (1 << TIEPIE_HW_ARMB_ALL)
976
982#define TIEPIE_HW_ARMM_NONE 0
983#define TIEPIE_HW_ARMM_ALL ((1 << TIEPIE_HW_ARMN_COUNT) - 1)
984#define TIEPIE_HW_ARMM_ENABLED (TIEPIE_HW_ARMM_ALL & ~TIEPIE_HW_ARM_DISABLED)
985
998#define TIEPIE_HW_CKN_COUNT 5
999
1005#define TIEPIE_HW_CKB_DCV 0
1006#define TIEPIE_HW_CKB_ACV 1
1007#define TIEPIE_HW_CKB_DCA 2
1008#define TIEPIE_HW_CKB_ACA 3
1009#define TIEPIE_HW_CKB_OHM 4
1010
1015#define TIEPIE_HW_CK_UNKNOWN 0
1016
1017#define TIEPIE_HW_CK_DCV (1 << TIEPIE_HW_CKB_DCV)
1018#define TIEPIE_HW_CK_ACV (1 << TIEPIE_HW_CKB_ACV)
1019#define TIEPIE_HW_CK_DCA (1 << TIEPIE_HW_CKB_DCA)
1020#define TIEPIE_HW_CK_ACA (1 << TIEPIE_HW_CKB_ACA)
1021#define TIEPIE_HW_CK_OHM (1 << TIEPIE_HW_CKB_OHM)
1022
1028#define TIEPIE_HW_CKM_NONE 0
1029#define TIEPIE_HW_CKM_V (TIEPIE_HW_CK_DCV | TIEPIE_HW_CK_ACV)
1030#define TIEPIE_HW_CKM_A (TIEPIE_HW_CK_DCA | TIEPIE_HW_CK_ACA)
1031#define TIEPIE_HW_CKM_OHM (TIEPIE_HW_CK_OHM)
1032
1033#define TIEPIE_HW_CKM_ASYMMETRICRANGE (TIEPIE_HW_CKM_OHM)
1034#define TIEPIE_HW_CKM_SYMMETRICRANGE (TIEPIE_HW_CKM_V | TIEPIE_HW_CKM_A)
1035
1036#define TIEPIE_HW_CKM_DC (TIEPIE_HW_CK_DCV | TIEPIE_HW_CK_DCA | TIEPIE_HW_CK_OHM)
1037#define TIEPIE_HW_CKM_AC (TIEPIE_HW_CK_ACV | TIEPIE_HW_CK_ACA)
1038
1051#define TIEPIE_HW_CON_COUNT 3
1052
1058#define TIEPIE_HW_COB_DISABLED 0
1059#define TIEPIE_HW_COB_SAMPLE 1
1060#define TIEPIE_HW_COB_FIXED 2
1061
1066#define TIEPIE_HW_CO_DISABLED (1 << TIEPIE_HW_COB_DISABLED)
1067#define TIEPIE_HW_CO_SAMPLE (1 << TIEPIE_HW_COB_SAMPLE)
1068#define TIEPIE_HW_CO_FIXED (1 << TIEPIE_HW_COB_FIXED)
1069
1075#define TIEPIE_HW_COM_NONE 0
1076#define TIEPIE_HW_COM_ALL ((1 << TIEPIE_HW_CON_COUNT) - 1)
1077#define TIEPIE_HW_COM_ENABLED (TIEPIE_HW_COM_ALL & ~TIEPIE_HW_CO_DISABLED)
1078#define TIEPIE_HW_COM_FREQUENCY (TIEPIE_HW_CO_FIXED)
1079
1092#define TIEPIE_HW_CSN_COUNT 2
1093
1099#define TIEPIE_HW_CSB_EXTERNAL 0
1100#define TIEPIE_HW_CSB_INTERNAL 1
1101
1106#define TIEPIE_HW_CS_EXTERNAL (1 << TIEPIE_HW_CSB_EXTERNAL)
1107#define TIEPIE_HW_CS_INTERNAL (1 << TIEPIE_HW_CSB_INTERNAL)
1108
1114#define TIEPIE_HW_CSM_NONE 0
1115#define TIEPIE_HW_CSM_ALL ((1 << TIEPIE_HW_CSN_COUNT) - 1)
1116#define TIEPIE_HW_CSM_FREQUENCY (TIEPIE_HW_CS_EXTERNAL)
1117
1130#define TIEPIE_HW_FMN_COUNT 2
1131
1137#define TIEPIE_HW_FMB_SIGNALFREQUENCY 0
1138#define TIEPIE_HW_FMB_SAMPLERATE 1
1139
1144#define TIEPIE_HW_FM_UNKNOWN 0x00000000
1145
1146#define TIEPIE_HW_FM_SIGNALFREQUENCY (1 << TIEPIE_HW_FMB_SIGNALFREQUENCY)
1147#define TIEPIE_HW_FM_SAMPLERATE (1 << TIEPIE_HW_FMB_SAMPLERATE)
1148
1154#define TIEPIE_HW_FMM_NONE 0x00000000
1155#define TIEPIE_HW_FMM_ALL ((1 << TIEPIE_HW_FMN_COUNT) - 1)
1156
1169#define TIEPIE_HW_GMN_COUNT 12
1170
1176#define TIEPIE_HW_GMB_CONTINUOUS 0
1177#define TIEPIE_HW_GMB_BURST_COUNT 1
1178#define TIEPIE_HW_GMB_GATED_PERIODS 2
1179#define TIEPIE_HW_GMB_GATED 3
1180#define TIEPIE_HW_GMB_GATED_PERIOD_START 4
1181#define TIEPIE_HW_GMB_GATED_PERIOD_FINISH 5
1182#define TIEPIE_HW_GMB_GATED_RUN 6
1183#define TIEPIE_HW_GMB_GATED_RUN_OUTPUT 7
1184#define TIEPIE_HW_GMB_BURST_SAMPLE_COUNT 8
1185#define TIEPIE_HW_GMB_BURST_SAMPLE_COUNT_OUTPUT 9
1186#define TIEPIE_HW_GMB_BURST_SEGMENT_COUNT 10
1187#define TIEPIE_HW_GMB_BURST_SEGMENT_COUNT_OUTPUT 11
1188
1193#define TIEPIE_HW_GM_UNKNOWN 0
1194
1195#define TIEPIE_HW_GM_CONTINUOUS (1 << TIEPIE_HW_GMB_CONTINUOUS)
1196#define TIEPIE_HW_GM_BURST_COUNT (1 << TIEPIE_HW_GMB_BURST_COUNT)
1197#define TIEPIE_HW_GM_GATED_PERIODS (1 << TIEPIE_HW_GMB_GATED_PERIODS)
1198#define TIEPIE_HW_GM_GATED (1 << TIEPIE_HW_GMB_GATED)
1199#define TIEPIE_HW_GM_GATED_PERIOD_START (1 << TIEPIE_HW_GMB_GATED_PERIOD_START)
1200#define TIEPIE_HW_GM_GATED_PERIOD_FINISH (1 << TIEPIE_HW_GMB_GATED_PERIOD_FINISH)
1201#define TIEPIE_HW_GM_GATED_RUN (1 << TIEPIE_HW_GMB_GATED_RUN)
1202#define TIEPIE_HW_GM_GATED_RUN_OUTPUT (1 << TIEPIE_HW_GMB_GATED_RUN_OUTPUT)
1203#define TIEPIE_HW_GM_BURST_SAMPLE_COUNT (1 << TIEPIE_HW_GMB_BURST_SAMPLE_COUNT)
1204#define TIEPIE_HW_GM_BURST_SAMPLE_COUNT_OUTPUT (1 << TIEPIE_HW_GMB_BURST_SAMPLE_COUNT_OUTPUT)
1205#define TIEPIE_HW_GM_BURST_SEGMENT_COUNT (1 << TIEPIE_HW_GMB_BURST_SEGMENT_COUNT)
1206#define TIEPIE_HW_GM_BURST_SEGMENT_COUNT_OUTPUT (1 << TIEPIE_HW_GMB_BURST_SEGMENT_COUNT_OUTPUT)
1207
1213#define TIEPIE_HW_GMM_NONE 0
1214#define TIEPIE_HW_GMM_BURST_COUNT (TIEPIE_HW_GM_BURST_COUNT)
1215#define TIEPIE_HW_GMM_GATED (TIEPIE_HW_GM_GATED_PERIODS | TIEPIE_HW_GM_GATED | TIEPIE_HW_GM_GATED_PERIOD_START | TIEPIE_HW_GM_GATED_PERIOD_FINISH | TIEPIE_HW_GM_GATED_RUN | TIEPIE_HW_GM_GATED_RUN_OUTPUT)
1216#define TIEPIE_HW_GMM_BURST_SAMPLE_COUNT (TIEPIE_HW_GM_BURST_SAMPLE_COUNT | TIEPIE_HW_GM_BURST_SAMPLE_COUNT_OUTPUT)
1217#define TIEPIE_HW_GMM_BURST_SEGMENT_COUNT (TIEPIE_HW_GM_BURST_SEGMENT_COUNT | TIEPIE_HW_GM_BURST_SEGMENT_COUNT_OUTPUT)
1218#define TIEPIE_HW_GMM_BURST (TIEPIE_HW_GMM_BURST_COUNT | TIEPIE_HW_GMM_BURST_SAMPLE_COUNT | TIEPIE_HW_GMM_BURST_SEGMENT_COUNT)
1219#define TIEPIE_HW_GMM_REQUIRE_TRIGGER (TIEPIE_HW_GMM_GATED | TIEPIE_HW_GMM_BURST_SAMPLE_COUNT | TIEPIE_HW_GMM_BURST_SEGMENT_COUNT)
1220#define TIEPIE_HW_GMM_ALL ((1ULL << TIEPIE_HW_GMN_COUNT) - 1)
1221
1222#define TIEPIE_HW_GMM_SIGNALFREQUENCY (TIEPIE_HW_GMM_ALL & ~TIEPIE_HW_GMM_BURST_SAMPLE_COUNT)
1223#define TIEPIE_HW_GMM_SAMPLERATE (TIEPIE_HW_GMM_ALL)
1224
1225#define TIEPIE_HW_GMM_SINE (TIEPIE_HW_GMM_SIGNALFREQUENCY)
1226#define TIEPIE_HW_GMM_TRIANGLE (TIEPIE_HW_GMM_SIGNALFREQUENCY)
1227#define TIEPIE_HW_GMM_SQUARE (TIEPIE_HW_GMM_SIGNALFREQUENCY)
1228#define TIEPIE_HW_GMM_DC (TIEPIE_HW_GM_CONTINUOUS)
1229#define TIEPIE_HW_GMM_NOISE (TIEPIE_HW_GM_CONTINUOUS | TIEPIE_HW_GM_GATED)
1230#define TIEPIE_HW_GMM_ARBITRARY (TIEPIE_HW_GMM_SIGNALFREQUENCY | TIEPIE_HW_GMM_SAMPLERATE)
1231#define TIEPIE_HW_GMM_PULSE (TIEPIE_HW_GMM_SIGNALFREQUENCY & ~TIEPIE_HW_GMM_BURST_SEGMENT_COUNT)
1232
1246#define TIEPIE_HW_GSN_COUNT 4
1247
1254#define TIEPIE_HW_GSB_STOPPED 0
1255#define TIEPIE_HW_GSB_RUNNING 1
1256#define TIEPIE_HW_GSB_BURSTACTIVE 2
1257#define TIEPIE_HW_GSB_WAITING 3
1258
1263#define TIEPIE_HW_GS_STOPPED (1 << TIEPIE_HW_GSB_STOPPED)
1264#define TIEPIE_HW_GS_RUNNING (1 << TIEPIE_HW_GSB_RUNNING)
1265#define TIEPIE_HW_GS_BURSTACTIVE (1 << TIEPIE_HW_GSB_BURSTACTIVE)
1266#define TIEPIE_HW_GS_WAITING (1 << TIEPIE_HW_GSB_WAITING)
1267
1273#define TIEPIE_HW_GSM_NONE 0
1274#define TIEPIE_HW_GSM_ALL ((1UL << TIEPIE_HW_GSN_COUNT) - 1)
1275
1288#define TIEPIE_HW_MMN_COUNT 2
1289
1295#define TIEPIE_HW_MMB_STREAM 0
1296#define TIEPIE_HW_MMB_BLOCK 1
1297
1304#define TIEPIE_HW_MMM_NONE 0
1305#define TIEPIE_HW_MMM_ALL ((1 << TIEPIE_HW_MMN_COUNT) - 1)
1306
1311#define TIEPIE_HW_MM_UNKNOWN 0
1312
1313#define TIEPIE_HW_MM_STREAM (1 << TIEPIE_HW_MMB_STREAM)
1314#define TIEPIE_HW_MM_BLOCK (1 << TIEPIE_HW_MMB_BLOCK )
1315
1327#define TIEPIE_HW_STN_COUNT 7
1328
1334#define TIEPIE_HW_STB_SINE 0
1335#define TIEPIE_HW_STB_TRIANGLE 1
1336#define TIEPIE_HW_STB_SQUARE 2
1337#define TIEPIE_HW_STB_DC 3
1338#define TIEPIE_HW_STB_NOISE 4
1339#define TIEPIE_HW_STB_ARBITRARY 5
1340#define TIEPIE_HW_STB_PULSE 6
1341
1346#define TIEPIE_HW_ST_UNKNOWN 0
1347
1348#define TIEPIE_HW_ST_SINE (1 << TIEPIE_HW_STB_SINE)
1349#define TIEPIE_HW_ST_TRIANGLE (1 << TIEPIE_HW_STB_TRIANGLE)
1350#define TIEPIE_HW_ST_SQUARE (1 << TIEPIE_HW_STB_SQUARE)
1351#define TIEPIE_HW_ST_DC (1 << TIEPIE_HW_STB_DC)
1352#define TIEPIE_HW_ST_NOISE (1 << TIEPIE_HW_STB_NOISE)
1353#define TIEPIE_HW_ST_ARBITRARY (1 << TIEPIE_HW_STB_ARBITRARY)
1354#define TIEPIE_HW_ST_PULSE (1 << TIEPIE_HW_STB_PULSE)
1355
1361#define TIEPIE_HW_STM_NONE 0
1362
1363#define TIEPIE_HW_STM_AMPLITUDE (TIEPIE_HW_ST_SINE | TIEPIE_HW_ST_TRIANGLE | TIEPIE_HW_ST_SQUARE | TIEPIE_HW_ST_NOISE | TIEPIE_HW_ST_ARBITRARY | TIEPIE_HW_ST_PULSE)
1364#define TIEPIE_HW_STM_OFFSET (TIEPIE_HW_ST_SINE | TIEPIE_HW_ST_TRIANGLE | TIEPIE_HW_ST_SQUARE | TIEPIE_HW_ST_DC | TIEPIE_HW_ST_NOISE | TIEPIE_HW_ST_ARBITRARY | TIEPIE_HW_ST_PULSE)
1365#define TIEPIE_HW_STM_FREQUENCY (TIEPIE_HW_ST_SINE | TIEPIE_HW_ST_TRIANGLE | TIEPIE_HW_ST_SQUARE | TIEPIE_HW_ST_NOISE | TIEPIE_HW_ST_ARBITRARY | TIEPIE_HW_ST_PULSE)
1366#define TIEPIE_HW_STM_PHASE (TIEPIE_HW_ST_SINE | TIEPIE_HW_ST_TRIANGLE | TIEPIE_HW_ST_SQUARE | TIEPIE_HW_ST_ARBITRARY | TIEPIE_HW_ST_PULSE)
1367#define TIEPIE_HW_STM_SYMMETRY (TIEPIE_HW_ST_SINE | TIEPIE_HW_ST_TRIANGLE | TIEPIE_HW_ST_SQUARE )
1368#define TIEPIE_HW_STM_WIDTH ( TIEPIE_HW_ST_PULSE)
1369#define TIEPIE_HW_STM_LEADINGEDGETIME ( TIEPIE_HW_ST_PULSE)
1370#define TIEPIE_HW_STM_TRAILINGEDGETIME ( TIEPIE_HW_ST_PULSE)
1371#define TIEPIE_HW_STM_DATALENGTH ( TIEPIE_HW_ST_ARBITRARY )
1372#define TIEPIE_HW_STM_DATA ( TIEPIE_HW_ST_ARBITRARY )
1373
1374#define TIEPIE_HW_STM_EDGETIME (TIEPIE_HW_STM_LEADINGEDGETIME & TIEPIE_HW_STM_TRAILINGEDGETIME)
1375
1388#define TIEPIE_HW_TCN_COUNT 5
1389
1395#define TIEPIE_HW_TCB_NONE 0
1396#define TIEPIE_HW_TCB_SMALLER 1
1397#define TIEPIE_HW_TCB_LARGER 2
1398#define TIEPIE_HW_TCB_INSIDE 3
1399#define TIEPIE_HW_TCB_OUTSIDE 4
1400
1405#define TIEPIE_HW_TC_UNKNOWN 0
1406
1407#define TIEPIE_HW_TC_NONE (1 << TIEPIE_HW_TCB_NONE)
1408#define TIEPIE_HW_TC_SMALLER (1 << TIEPIE_HW_TCB_SMALLER)
1409#define TIEPIE_HW_TC_LARGER (1 << TIEPIE_HW_TCB_LARGER)
1410#define TIEPIE_HW_TC_INSIDE (1 << TIEPIE_HW_TCB_INSIDE)
1411#define TIEPIE_HW_TC_OUTSIDE (1 << TIEPIE_HW_TCB_OUTSIDE)
1412
1418#define TIEPIE_HW_TCM_NONE 0
1419#define TIEPIE_HW_TCM_ALL ((1 << TIEPIE_HW_TCN_COUNT) - 1)
1420#define TIEPIE_HW_TCM_ENABLED (TIEPIE_HW_TCM_ALL & ~TIEPIE_HW_TC_NONE)
1421
1432#define TIEPIE_HW_TRIGGER_IO_ID(pgid , sgid, fid) ((TIEPIE_HW_DN_MAIN << TIEPIE_HW_TIOID_SHIFT_DN) | ((pgid) << TIEPIE_HW_TIOID_SHIFT_PGID) | ((sgid) << TIEPIE_HW_TIOID_SHIFT_SGID) | ((fid) << TIEPIE_HW_TIOID_SHIFT_FID))
1433
1434#define TIEPIE_HW_COMBI_TRIGGER_IO_ID(dn, tiid) (((dn) << TIEPIE_HW_TIOID_SHIFT_DN) | ((tiid) & ((1 << TIEPIE_HW_TIOID_SHIFT_DN) - 1)))
1435
1446#define TIEPIE_HW_DN_MAIN 0
1447#define TIEPIE_HW_DN_SUB_FIRST 1
1448#define TIEPIE_HW_DN_SUB_SECOND 2
1449
1456#define TIEPIE_HW_PGID_OSCILLOSCOPE 1
1457#define TIEPIE_HW_PGID_GENERATOR 2
1458#define TIEPIE_HW_PGID_EXTERNAL_DSUB 3
1459
1468#define TIEPIE_HW_SGID_MAIN 0
1469#define TIEPIE_HW_SGID_CHANNEL1 1
1470#define TIEPIE_HW_SGID_CHANNEL2 2
1471
1478#define TIEPIE_HW_SGID_PIN1 1
1479#define TIEPIE_HW_SGID_PIN2 2
1480#define TIEPIE_HW_SGID_PIN3 3
1481
1491#define TIEPIE_HW_FID_SCP_TRIGGERED 0
1492
1499#define TIEPIE_HW_FID_GEN_START 0
1500#define TIEPIE_HW_FID_GEN_STOP 1
1501#define TIEPIE_HW_FID_GEN_NEW_PERIOD 2
1502
1503
1510#define TIEPIE_HW_FID_EXT_TRIGGERED 0
1511
1519#define TIEPIE_HW_TIOID_SHIFT_PGID 20
1520#define TIEPIE_HW_TIOID_SHIFT_DN 24
1521#define TIEPIE_HW_TIOID_SHIFT_SGID 8
1522#define TIEPIE_HW_TIOID_SHIFT_FID 0
1523
1530#define TIEPIE_HW_TIID_INVALID 0
1531#define TIEPIE_HW_TIID_EXT1 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN1, TIEPIE_HW_FID_EXT_TRIGGERED )
1532#define TIEPIE_HW_TIID_EXT2 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN2, TIEPIE_HW_FID_EXT_TRIGGERED )
1533#define TIEPIE_HW_TIID_EXT3 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN3, TIEPIE_HW_FID_EXT_TRIGGERED )
1534#define TIEPIE_HW_TIID_GENERATOR_START TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_GENERATOR , TIEPIE_HW_SGID_MAIN, TIEPIE_HW_FID_GEN_START )
1535#define TIEPIE_HW_TIID_GENERATOR_STOP TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_GENERATOR , TIEPIE_HW_SGID_MAIN, TIEPIE_HW_FID_GEN_STOP )
1536#define TIEPIE_HW_TIID_GENERATOR_NEW_PERIOD TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_GENERATOR , TIEPIE_HW_SGID_MAIN, TIEPIE_HW_FID_GEN_NEW_PERIOD)
1537
1544#define TIEPIE_HW_TOID_INVALID 0
1545#define TIEPIE_HW_TOID_EXT1 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN1, TIEPIE_HW_FID_EXT_TRIGGERED)
1546#define TIEPIE_HW_TOID_EXT2 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN2, TIEPIE_HW_FID_EXT_TRIGGERED)
1547#define TIEPIE_HW_TOID_EXT3 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN3, TIEPIE_HW_FID_EXT_TRIGGERED)
1548
1561#define TIEPIE_HW_TKN_COUNT 15
1562
1568#define TIEPIE_HW_TKB_RISINGEDGE 0
1569#define TIEPIE_HW_TKB_FALLINGEDGE 1
1570#define TIEPIE_HW_TKB_INWINDOW 2
1571#define TIEPIE_HW_TKB_OUTWINDOW 3
1572#define TIEPIE_HW_TKB_ANYEDGE 4
1573#define TIEPIE_HW_TKB_ENTERWINDOW 5
1574#define TIEPIE_HW_TKB_EXITWINDOW 6
1575#define TIEPIE_HW_TKB_PULSEWIDTHPOSITIVE 7
1576#define TIEPIE_HW_TKB_PULSEWIDTHNEGATIVE 8
1577#define TIEPIE_HW_TKB_PULSEWIDTHEITHER 9
1578#define TIEPIE_HW_TKB_RUNTPULSEPOSITIVE 10
1579#define TIEPIE_HW_TKB_RUNTPULSENEGATIVE 11
1580#define TIEPIE_HW_TKB_RUNTPULSEEITHER 12
1581#define TIEPIE_HW_TKB_INTERVALRISING 13
1582#define TIEPIE_HW_TKB_INTERVALFALLING 14
1583
1588#define TIEPIE_HW_TK_UNKNOWN 0
1589#define TIEPIE_HW_TK_RISINGEDGE (1ULL << TIEPIE_HW_TKB_RISINGEDGE)
1590#define TIEPIE_HW_TK_FALLINGEDGE (1ULL << TIEPIE_HW_TKB_FALLINGEDGE)
1591#define TIEPIE_HW_TK_INWINDOW (1ULL << TIEPIE_HW_TKB_INWINDOW)
1592#define TIEPIE_HW_TK_OUTWINDOW (1ULL << TIEPIE_HW_TKB_OUTWINDOW)
1593#define TIEPIE_HW_TK_ANYEDGE (1ULL << TIEPIE_HW_TKB_ANYEDGE)
1594#define TIEPIE_HW_TK_ENTERWINDOW (1ULL << TIEPIE_HW_TKB_ENTERWINDOW)
1595#define TIEPIE_HW_TK_EXITWINDOW (1ULL << TIEPIE_HW_TKB_EXITWINDOW)
1596#define TIEPIE_HW_TK_PULSEWIDTHPOSITIVE (1ULL << TIEPIE_HW_TKB_PULSEWIDTHPOSITIVE)
1597#define TIEPIE_HW_TK_PULSEWIDTHNEGATIVE (1ULL << TIEPIE_HW_TKB_PULSEWIDTHNEGATIVE)
1598#define TIEPIE_HW_TK_PULSEWIDTHEITHER (1ULL << TIEPIE_HW_TKB_PULSEWIDTHEITHER)
1599#define TIEPIE_HW_TK_RUNTPULSEPOSITIVE (1ULL << TIEPIE_HW_TKB_RUNTPULSEPOSITIVE)
1600#define TIEPIE_HW_TK_RUNTPULSENEGATIVE (1ULL << TIEPIE_HW_TKB_RUNTPULSENEGATIVE)
1601#define TIEPIE_HW_TK_RUNTPULSEEITHER (1ULL << TIEPIE_HW_TKB_RUNTPULSEEITHER)
1602#define TIEPIE_HW_TK_INTERVALRISING (1ULL << TIEPIE_HW_TKB_INTERVALRISING)
1603#define TIEPIE_HW_TK_INTERVALFALLING (1ULL << TIEPIE_HW_TKB_INTERVALFALLING)
1604
1610#define TIEPIE_HW_TKM_NONE 0
1611#define TIEPIE_HW_TKM_EDGE (TIEPIE_HW_TK_RISINGEDGE | TIEPIE_HW_TK_FALLINGEDGE | TIEPIE_HW_TK_ANYEDGE)
1612#define TIEPIE_HW_TKM_WINDOW (TIEPIE_HW_TK_INWINDOW | TIEPIE_HW_TK_OUTWINDOW | TIEPIE_HW_TK_ENTERWINDOW | TIEPIE_HW_TK_EXITWINDOW)
1613#define TIEPIE_HW_TKM_PULSEWIDTH (TIEPIE_HW_TK_PULSEWIDTHPOSITIVE | TIEPIE_HW_TK_PULSEWIDTHNEGATIVE | TIEPIE_HW_TK_PULSEWIDTHEITHER)
1614#define TIEPIE_HW_TKM_RUNTPULSE (TIEPIE_HW_TK_RUNTPULSEPOSITIVE | TIEPIE_HW_TK_RUNTPULSENEGATIVE | TIEPIE_HW_TK_RUNTPULSEEITHER)
1615#define TIEPIE_HW_TKM_PULSE (TIEPIE_HW_TKM_PULSEWIDTH | TIEPIE_HW_TKM_RUNTPULSE)
1616#define TIEPIE_HW_TKM_INTERVAL (TIEPIE_HW_TK_INTERVALRISING | TIEPIE_HW_TK_INTERVALFALLING)
1617#define TIEPIE_HW_TKM_TIME (TIEPIE_HW_TKM_PULSEWIDTH | TIEPIE_HW_TKM_WINDOW | TIEPIE_HW_TKM_RUNTPULSE | TIEPIE_HW_TKM_INTERVAL)
1618#define TIEPIE_HW_TKM_ALL ((1ULL << TIEPIE_HW_TKN_COUNT) - 1)
1619
1632#define TIEPIE_HW_TLMN_COUNT 2
1633
1639#define TIEPIE_HW_TLMB_RELATIVE 0
1640#define TIEPIE_HW_TLMB_ABSOLUTE 1
1641
1646#define TIEPIE_HW_TLM_UNKNOWN 0
1647
1648#define TIEPIE_HW_TLM_RELATIVE (1 << TIEPIE_HW_TLMB_RELATIVE)
1649#define TIEPIE_HW_TLM_ABSOLUTE (1 << TIEPIE_HW_TLMB_ABSOLUTE)
1650
1656#define TIEPIE_HW_TLMM_NONE 0
1657#define TIEPIE_HW_TLMM_ALL ((1 << TIEPIE_HW_TLMN_COUNT) - 1)
1658
1671#define TIEPIE_HW_TO_INFINITY (-1.0)
1672
1684#define TIEPIE_HW_TOEN_COUNT 6
1685
1691#define TIEPIE_HW_TOEB_GENERATOR_START 0
1692#define TIEPIE_HW_TOEB_GENERATOR_STOP 1
1693#define TIEPIE_HW_TOEB_GENERATOR_NEWPERIOD 2
1694#define TIEPIE_HW_TOEB_OSCILLOSCOPE_RUNNING 3
1695#define TIEPIE_HW_TOEB_OSCILLOSCOPE_TRIGGERED 4
1696#define TIEPIE_HW_TOEB_MANUAL 5
1697
1702#define TIEPIE_HW_TOE_UNKNOWN 0
1703#define TIEPIE_HW_TOE_GENERATOR_START (1 << TIEPIE_HW_TOEB_GENERATOR_START)
1704#define TIEPIE_HW_TOE_GENERATOR_STOP (1 << TIEPIE_HW_TOEB_GENERATOR_STOP)
1705#define TIEPIE_HW_TOE_GENERATOR_NEWPERIOD (1 << TIEPIE_HW_TOEB_GENERATOR_NEWPERIOD)
1706#define TIEPIE_HW_TOE_OSCILLOSCOPE_RUNNING (1 << TIEPIE_HW_TOEB_OSCILLOSCOPE_RUNNING)
1707#define TIEPIE_HW_TOE_OSCILLOSCOPE_TRIGGERED (1 << TIEPIE_HW_TOEB_OSCILLOSCOPE_TRIGGERED)
1708#define TIEPIE_HW_TOE_MANUAL (1 << TIEPIE_HW_TOEB_MANUAL)
1709
1715#define TIEPIE_HW_TOEM_NONE 0
1716#define TIEPIE_HW_TOEM_GENERATOR (TIEPIE_HW_TOE_GENERATOR_START | TIEPIE_HW_TOE_GENERATOR_STOP | TIEPIE_HW_TOE_GENERATOR_NEWPERIOD)
1717#define TIEPIE_HW_TOEM_OSCILLOSCOPE (TIEPIE_HW_TOE_OSCILLOSCOPE_RUNNING | TIEPIE_HW_TOE_OSCILLOSCOPE_TRIGGERED)
1718#define TIEPIE_HW_TOEM_ALL ((1ULL << TIEPIE_HW_TOEN_COUNT) - 1)
1719
1741{
1782
1783typedef uint32_t tiepie_hw_handle;
1784typedef uint8_t tiepie_hw_bool;
1785
1813
1834
1864
1865typedef uint8_t tiepie_hw_tristate;
1867
1868typedef struct tiepie_hw_date
1869{
1870 uint16_t year;
1871 uint8_t month;
1872 uint8_t day;
1874
1881
1882#ifdef INCLUDED_BY_MATLAB
1883 typedef void* tiepie_hw_devicelist_callback;
1884 typedef void* tiepie_hw_handle_callback;
1885 typedef void* tiepie_hw_event_callback;
1886#else
1887 typedef void(*tiepie_hw_devicelist_callback)(void* data, uint32_t device_types, uint32_t serial_number);
1888 typedef void(*tiepie_hw_handle_callback)(void* data, tiepie_hw_handle handle);
1889 typedef void(*tiepie_hw_event_callback)(void* data, tiepie_hw_event event, uint32_t value);
1890#endif
1891
1926TIEPIE_HW_API void tiepie_hw_init(void);
1927
1939
1951TIEPIE_HW_API void tiepie_hw_fini(void);
1952
1956typedef struct tiepie_hw_version
1957{
1958 uint16_t major;
1959 uint16_t minor;
1960 uint16_t patch;
1961 uint16_t build;
1962 const char* extra;
1964
1978TIEPIE_HW_API const tiepie_hw_version* tiepie_hw_get_version(void);
1979
2004TIEPIE_HW_API uint32_t tiepie_hw_get_config(uint8_t* buffer, uint32_t length);
2005
2018
2036TIEPIE_HW_API const char* tiepie_hw_get_last_status_str(void);
2037
2138// Workaround: Without this line Doxygen adds the documentation below to the group above.
2139
2158TIEPIE_HW_API void tiepie_hw_devicelist_update(void);
2159
2173
2196
2208TIEPIE_HW_API uint32_t tiepie_hw_devicelist_get_count(void);
2209
2224
2239
2254
2289
2327
2365
2379
2387
2408TIEPIE_HW_API uint32_t tiepie_hw_devicelist_create_combined_device(const tiepie_hw_handle* handles, uint32_t count);
2409
2432
2448TIEPIE_HW_API void tiepie_hw_devicelist_remove_device(uint32_t serial_number, tiepie_hw_bool force);
2449
2461
2471// Workaround: Without this line Doxygen adds the documentation below to the group above.
2472
2487
2506TIEPIE_HW_API tiepie_hw_bool tiepie_hw_devicelistitem_can_open(tiepie_hw_handle handle, uint32_t device_type);
2507
2526TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_opened_by(tiepie_hw_handle handle, uint32_t device_type, char* buffer, uint32_t length);
2527
2543
2576TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_name(tiepie_hw_handle handle, char* buffer, uint32_t length);
2577
2610TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_name_short(tiepie_hw_handle handle, char* buffer, uint32_t length);
2611
2644TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_name_shortest(tiepie_hw_handle handle, char* buffer, uint32_t length);
2645
2667
2686
2703TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_ip_address(tiepie_hw_handle handle, char* buffer, uint32_t length);
2704
2720
2729
2738
2769
2777// Workaround: Without this line Doxygen adds the documentation below to the group above.
2778
2810TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_contained_serial_numbers(tiepie_hw_handle handle, uint32_t* buffer, uint32_t length);
2811
2828TIEPIE_HW_API tiepie_hw_productid tiepie_hw_devicelistitemcombined_get_product_id(tiepie_hw_handle handle, uint32_t contained_device_serial_number);
2829
2850TIEPIE_HW_API uint32_t tiepie_hw_devicelistitemcombined_get_name(tiepie_hw_handle handle, uint32_t contained_device_serial_number, char* buffer, uint32_t length);
2851
2872TIEPIE_HW_API uint32_t tiepie_hw_devicelistitemcombined_get_name_short(tiepie_hw_handle handle, uint32_t contained_device_serial_number, char* buffer, uint32_t length);
2873
2894TIEPIE_HW_API uint32_t tiepie_hw_devicelistitemcombined_get_name_shortest(tiepie_hw_handle handle, uint32_t contained_device_serial_number, char* buffer, uint32_t length);
2895
2912TIEPIE_HW_API tiepie_hw_date tiepie_hw_devicelistitemcombined_get_calibration_date(tiepie_hw_handle handle, uint32_t contained_device_serial_number);
2913
2930TIEPIE_HW_API uint16_t tiepie_hw_devicelistitemcombined_get_oscilloscope_channel_count(tiepie_hw_handle handle, uint32_t contained_device_serial_number);
2931
2940// Workaround: Without this line Doxygen adds the documentation below to the group above.
2941
2955
2969
2983
2992// Workaround: Without this line Doxygen adds the documentation below to the group above.
2993
3002
3012
3019// Workaround: Without this line Doxygen adds the documentation below to the group above.
3020
3030TIEPIE_HW_API tiepie_hw_bool tiepie_hw_network_servers_add(const char* url, uint32_t length, tiepie_hw_handle* handle);
3031
3041TIEPIE_HW_API tiepie_hw_bool tiepie_hw_network_servers_remove(const char* url, uint32_t length, tiepie_hw_bool force);
3042
3049TIEPIE_HW_API uint32_t tiepie_hw_network_servers_get_count(void);
3050
3059
3068TIEPIE_HW_API tiepie_hw_handle tiepie_hw_network_servers_get_by_url(const char* url, uint32_t length);
3069
3076// Workaround: Without this line Doxygen adds the documentation below to the group above.
3077
3091
3113// Workaround: Without this line Doxygen adds the documentation below to the group above.
3114
3135TIEPIE_HW_API void tiepie_hw_object_close(tiepie_hw_handle handle);
3136
3151
3166
3174// Workaround: Without this line Doxygen adds the documentation below to the group above.
3175
3185
3196// Workaround: Without this line Doxygen adds the documentation below to the group above.
3197
3204// Workaround: Without this line Doxygen adds the documentation below to the group above.
3205
3229
3246
3263TIEPIE_HW_API uint32_t tiepie_hw_device_get_ip_address(tiepie_hw_handle handle, char* buffer, uint32_t length);
3264
3279TIEPIE_HW_API uint16_t tiepie_hw_device_get_ip_port(tiepie_hw_handle handle);
3280
3297
3313TIEPIE_HW_API uint32_t tiepie_hw_device_get_type(tiepie_hw_handle handle);
3314
3348TIEPIE_HW_API uint32_t tiepie_hw_device_get_name(tiepie_hw_handle handle, char* buffer, uint32_t length);
3349
3383TIEPIE_HW_API uint32_t tiepie_hw_device_get_name_short(tiepie_hw_handle handle, char* buffer, uint32_t length);
3384
3418TIEPIE_HW_API uint32_t tiepie_hw_device_get_name_shortest(tiepie_hw_handle handle, char* buffer, uint32_t length);
3419
3435
3458
3476TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_has_battery_ex(tiepie_hw_handle handle, uint32_t serial_number);
3477
3496
3516TIEPIE_HW_API int8_t tiepie_hw_device_get_battery_charge_ex(tiepie_hw_handle handle, uint32_t serial_number);
3517
3537
3558TIEPIE_HW_API int32_t tiepie_hw_device_get_battery_time_to_empty_ex(tiepie_hw_handle handle, uint32_t serial_number);
3559
3579
3600TIEPIE_HW_API int32_t tiepie_hw_device_get_battery_time_to_full_ex(tiepie_hw_handle handle, uint32_t serial_number);
3601
3620
3641
3662
3685
3703
3722TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_is_battery_broken_ex(tiepie_hw_handle handle, uint32_t serial_number);
3723
3738// Workaround: Without this line Doxygen adds the documentation below to the group above.
3739
3756
3777TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_input_index_by_id(tiepie_hw_handle handle, uint32_t id);
3778
3784// Workaround: Without this line Doxygen adds the documentation below to the group above.
3785
3799
3809// Workaround: Without this line Doxygen adds the documentation below to the group above.
3810
3831
3853
3866// Workaround: Without this line Doxygen adds the documentation below to the group above.
3867
3888TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_get_kinds(tiepie_hw_handle handle, uint16_t input);
3889
3891
3914TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_trigger_input_get_kinds_ex(tiepie_hw_handle handle, uint16_t input, uint32_t measure_mode);
3915
3917
3938TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_get_kind(tiepie_hw_handle handle, uint16_t input);
3939
3962TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_set_kind(tiepie_hw_handle handle, uint16_t input, uint64_t value);
3963
3976// Workaround: Without this line Doxygen adds the documentation below to the group above.
3977
4000
4002
4012TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_trigger_input_is_available_ex(tiepie_hw_handle handle, uint16_t input, uint32_t measure_mode);
4013
4015
4034TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_input_get_id(tiepie_hw_handle handle, uint16_t input);
4035
4055TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_input_get_name(tiepie_hw_handle handle, uint16_t input, char* buffer, uint32_t length);
4056
4070// Workaround: Without this line Doxygen adds the documentation below to the group above.
4071
4088
4107TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_output_index_by_id(tiepie_hw_handle handle, uint32_t id);
4108
4117// Workaround: Without this line Doxygen adds the documentation below to the group above.
4118
4138
4159
4176// Workaround: Without this line Doxygen adds the documentation below to the group above.
4177
4197TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_get_events(tiepie_hw_handle handle, uint16_t output);
4198
4218TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_get_event(tiepie_hw_handle handle, uint16_t output);
4219
4241TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_set_event(tiepie_hw_handle handle, uint16_t output, uint64_t value);
4242
4254// Workaround: Without this line Doxygen adds the documentation below to the group above.
4255
4274TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_output_get_id(tiepie_hw_handle handle, uint16_t output);
4275
4295TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_output_get_name(tiepie_hw_handle handle, uint16_t output, char* buffer, uint32_t length);
4296
4316
4341// Workaround: Without this line Doxygen adds the documentation below to the group above.
4342
4358
4379
4381
4395TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_is_available_ex(tiepie_hw_handle handle, uint16_t ch, uint32_t measure_mode, double sample_rate, uint8_t resolution, const tiepie_hw_bool* channel_enabled, uint16_t channel_count);
4396
4398
4405// Workaround: Without this line Doxygen adds the documentation below to the group above.
4406
4425
4443
4461
4479TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_impedance(tiepie_hw_handle handle, uint16_t ch);
4480
4490// Workaround: Without this line Doxygen adds the documentation below to the group above.
4491
4513TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_bandwidths(tiepie_hw_handle handle, uint16_t ch, double* list, uint32_t length);
4514
4534TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_bandwidth(tiepie_hw_handle handle, uint16_t ch);
4535
4556TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_set_bandwidth(tiepie_hw_handle handle, uint16_t ch, double bandwidth);
4557
4567// Workaround: Without this line Doxygen adds the documentation below to the group above.
4568
4587TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_get_couplings(tiepie_hw_handle handle, uint16_t ch);
4588
4607TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_get_coupling(tiepie_hw_handle handle, uint16_t ch);
4608
4631TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_set_coupling(tiepie_hw_handle handle, uint16_t ch, uint64_t coupling);
4632
4644// Workaround: Without this line Doxygen adds the documentation below to the group above.
4645
4664
4686
4708// Workaround: Without this line Doxygen adds the documentation below to the group above.
4709
4728
4749
4788TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_ranges(tiepie_hw_handle handle, uint16_t ch, double* list, uint32_t length);
4789
4791
4804TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_ranges_ex(tiepie_hw_handle handle, uint16_t ch, uint64_t coupling, double* list, uint32_t length);
4805
4807
4826TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_range(tiepie_hw_handle handle, uint16_t ch);
4827
4864TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_set_range(tiepie_hw_handle handle, uint16_t ch, double range);
4865
4887// Workaround: Without this line Doxygen adds the documentation below to the group above.
4888
4906
4927
4955
4978
5001
5024
5053TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_set_safeground_threshold(tiepie_hw_handle handle, uint16_t ch, double threshold);
5054
5056
5066TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_verify_safeground_threshold(tiepie_hw_handle handle, uint16_t ch, double threshold);
5067
5069
5085// Workaround: Without this line Doxygen adds the documentation below to the group above.
5086
5104
5106
5125TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_has_trigger_ex(tiepie_hw_handle handle, uint16_t ch, uint32_t measure_mode);
5126
5128
5146
5148
5163TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_trigger_is_available_ex(tiepie_hw_handle handle, uint16_t ch, uint32_t measure_mode, double sample_rate, uint8_t resolution, const tiepie_hw_bool* channel_enabled, const tiepie_hw_bool* channel_trigger_enabled, uint16_t channel_count);
5164
5166
5180
5193// Workaround: Without this line Doxygen adds the documentation below to the group above.
5194
5214
5237
5251// Workaround: Without this line Doxygen adds the documentation below to the group above.
5252
5272TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_get_kinds(tiepie_hw_handle handle, uint16_t ch);
5273
5275
5285TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_get_kinds_ex(tiepie_hw_handle handle, uint16_t ch, uint32_t measure_mode);
5286
5288
5308TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_get_kind(tiepie_hw_handle handle, uint16_t ch);
5309
5332TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_set_kind(tiepie_hw_handle handle, uint16_t ch, uint64_t value);
5333
5354// Workaround: Without this line Doxygen adds the documentation below to the group above.
5355
5374
5393
5413TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_set_level_mode(tiepie_hw_handle handle, uint16_t ch, uint32_t value);
5414
5434// Workaround: Without this line Doxygen adds the documentation below to the group above.
5435
5457
5479TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_get_level(tiepie_hw_handle handle, uint16_t ch, uint32_t index);
5480
5506TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_set_level(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value);
5507
5525// Workaround: Without this line Doxygen adds the documentation below to the group above.
5526
5548
5570TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_get_hysteresis(tiepie_hw_handle handle, uint16_t ch, uint32_t index);
5571
5595TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_set_hysteresis(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value);
5596
5610// Workaround: Without this line Doxygen adds the documentation below to the group above.
5611
5633
5635
5646TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_get_conditions_ex(tiepie_hw_handle handle, uint16_t ch, uint32_t measure_mode, uint64_t trigger_kind);
5647
5649
5670
5692TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_set_condition(tiepie_hw_handle handle, uint16_t ch, uint32_t value);
5693
5709// Workaround: Without this line Doxygen adds the documentation below to the group above.
5710
5736
5761TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_get_time(tiepie_hw_handle handle, uint16_t ch, uint32_t index);
5762
5790TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_set_time(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value);
5791
5793
5808TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_verify_time(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value);
5809
5829TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_verify_time_ex(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value, uint32_t measure_mode, double sample_rate, uint64_t trigger_kind, uint32_t trigger_condition);
5830
5832
5860
5881
5904
5933
5954
5976TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_amplitude(tiepie_hw_handle handle, uint16_t ch, double value);
5977
6007
6028
6050TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_frequency(tiepie_hw_handle handle, uint16_t ch, double value);
6051
6083
6104
6126TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_offset(tiepie_hw_handle handle, uint16_t ch, double value);
6127
6164
6185
6207TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_symmetry(tiepie_hw_handle handle, uint16_t ch, double value);
6208
6245
6265TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_get_phase(tiepie_hw_handle handle, uint16_t ch);
6266
6288TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_phase(tiepie_hw_handle handle, uint16_t ch, double value);
6289
6319
6340
6362
6423// Workaround: Without this line Doxygen adds the documentation below to the group above.
6424
6485#ifdef INCLUDED_BY_MATLAB
6486TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data(tiepie_hw_handle handle, void** buffers, uint16_t channel_count, uint64_t start_index, uint64_t sample_count);
6487#else
6488# ifdef LIBTIEPIE_HW_DYNAMIC
6489typedef uint64_t(*tiepie_hw_oscilloscope_get_data_t)(tiepie_hw_handle handle, float** buffers, uint16_t channel_count, uint64_t start_index, uint64_t sample_count);
6490# else
6491TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data(tiepie_hw_handle handle, float** buffers, uint16_t channel_count, uint64_t start_index, uint64_t sample_count);
6492# endif
6493#endif
6494
6524TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_1ch(tiepie_hw_handle handle, float* buffer_ch1, uint64_t start_index, uint64_t sample_count);
6525
6556TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_2ch(tiepie_hw_handle handle, float* buffer_ch1, float* buffer_ch2, uint64_t start_index, uint64_t sample_count);
6557
6589TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_3ch(tiepie_hw_handle handle, float* buffer_ch1, float* buffer_ch2, float* buffer_ch3, uint64_t start_index, uint64_t sample_count);
6590
6623TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_4ch(tiepie_hw_handle handle, float* buffer_ch1, float* buffer_ch2, float* buffer_ch3, float* buffer_ch4, uint64_t start_index, uint64_t sample_count);
6624
6658TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_5ch(tiepie_hw_handle handle, float* buffer_ch1, float* buffer_ch2, float* buffer_ch3, float* buffer_ch4, float* buffer_ch5, uint64_t start_index, uint64_t sample_count);
6659
6694TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_6ch(tiepie_hw_handle handle, float* buffer_ch1, float* buffer_ch2, float* buffer_ch3, float* buffer_ch4, float* buffer_ch5, float* buffer_ch6, uint64_t start_index, uint64_t sample_count);
6695
6731TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_7ch(tiepie_hw_handle handle, float* buffer_ch1, float* buffer_ch2, float* buffer_ch3, float* buffer_ch4, float* buffer_ch5, float* buffer_ch6, float* buffer_ch7, uint64_t start_index, uint64_t sample_count);
6732
6769TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_8ch(tiepie_hw_handle handle, float* buffer_ch1, float* buffer_ch2, float* buffer_ch3, float* buffer_ch4, float* buffer_ch5, float* buffer_ch6, float* buffer_ch7, float* buffer_ch8, uint64_t start_index, uint64_t sample_count);
6770
6791
6813TIEPIE_HW_API void tiepie_hw_oscilloscope_channel_get_data_value_range(tiepie_hw_handle handle, uint16_t ch, double* min, double* max);
6814
6834
6854
6861// Workaround: Without this line Doxygen adds the documentation below to the group above.
6862
6875TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_raw(tiepie_hw_handle handle, void** buffers, uint16_t channel_count, uint64_t start_index, uint64_t sample_count);
6876
6887TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_raw_1ch(tiepie_hw_handle handle, void* buffer_ch1, uint64_t start_index, uint64_t sample_count);
6888
6900TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_raw_2ch(tiepie_hw_handle handle, void* buffer_ch1, void* buffer_ch2, uint64_t start_index, uint64_t sample_count);
6901
6914TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_raw_3ch(tiepie_hw_handle handle, void* buffer_ch1, void* buffer_ch2, void* buffer_ch3, uint64_t start_index, uint64_t sample_count);
6915
6929TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_raw_4ch(tiepie_hw_handle handle, void* buffer_ch1, void* buffer_ch2, void* buffer_ch3, void* buffer_ch4, uint64_t start_index, uint64_t sample_count);
6930
6945TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_raw_5ch(tiepie_hw_handle handle, void* buffer_ch1, void* buffer_ch2, void* buffer_ch3, void* buffer_ch4, void* buffer_ch5, uint64_t start_index, uint64_t sample_count);
6946
6962TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_raw_6ch(tiepie_hw_handle handle, void* buffer_ch1, void* buffer_ch2, void* buffer_ch3, void* buffer_ch4, void* buffer_ch5, void* buffer_ch6, uint64_t start_index, uint64_t sample_count);
6963
6980TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_raw_7ch(tiepie_hw_handle handle, void* buffer_ch1, void* buffer_ch2, void* buffer_ch3, void* buffer_ch4, void* buffer_ch5, void* buffer_ch6, void* buffer_ch7, uint64_t start_index, uint64_t sample_count);
6981
6999TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_raw_8ch(tiepie_hw_handle handle, void* buffer_ch1, void* buffer_ch2, void* buffer_ch3, void* buffer_ch4, void* buffer_ch5, void* buffer_ch6, void* buffer_ch7, void* buffer_ch8, uint64_t start_index, uint64_t sample_count);
7000
7009TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_data_raw_type(tiepie_hw_handle handle, uint16_t ch);
7010
7024TIEPIE_HW_API void tiepie_hw_oscilloscope_channel_get_data_raw_value_range(tiepie_hw_handle handle, uint16_t ch, int64_t* min, int64_t* zero, int64_t* max);
7025
7037TIEPIE_HW_API int64_t tiepie_hw_oscilloscope_channel_get_data_raw_value_min(tiepie_hw_handle handle, uint16_t ch);
7038
7050TIEPIE_HW_API int64_t tiepie_hw_oscilloscope_channel_get_data_raw_value_zero(tiepie_hw_handle handle, uint16_t ch);
7051
7063TIEPIE_HW_API int64_t tiepie_hw_oscilloscope_channel_get_data_raw_value_max(tiepie_hw_handle handle, uint16_t ch);
7064
7073TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_is_range_max_reachable(tiepie_hw_handle handle, uint16_t ch);
7074
7088// Workaround: Without this line Doxygen adds the documentation below to the group above.
7089
7109
7126
7149
7189// Workaround: Without this line Doxygen adds the documentation below to the group above.
7190
7208
7226
7246TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_measure_mode(tiepie_hw_handle handle, uint32_t value);
7247
7258// Workaround: Without this line Doxygen adds the documentation below to the group above.
7259
7275
7297
7317
7337
7362
7384
7426// Workaround: Without this line Doxygen adds the documentation below to the group above.
7427
7445
7464
7484TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_auto_resolution_mode(tiepie_hw_handle handle, uint32_t value);
7485
7524TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_resolutions(tiepie_hw_handle handle, uint8_t* list, uint32_t length);
7525
7543
7564TIEPIE_HW_API uint8_t tiepie_hw_oscilloscope_set_resolution(tiepie_hw_handle handle, uint8_t value);
7565
7581
7583
7592TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_is_resolution_enhanced_ex(tiepie_hw_handle handle, uint8_t value);
7593
7595
7618// Workaround: Without this line Doxygen adds the documentation below to the group above.
7619
7640
7661
7683TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_clock_source(tiepie_hw_handle handle, uint32_t value);
7684
7723TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_source_frequencies(tiepie_hw_handle handle, double* list, uint32_t length);
7724
7726
7755TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_source_frequencies_ex(tiepie_hw_handle handle, uint32_t value, double* list, uint32_t length);
7756
7758
7782
7810
7829// Workaround: Without this line Doxygen adds the documentation below to the group above.
7830
7851
7872
7894TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_clock_output(tiepie_hw_handle handle, uint32_t value);
7895
7934TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_output_frequencies(tiepie_hw_handle handle, double* list, uint32_t length);
7935
7937
7966TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_output_frequencies_ex(tiepie_hw_handle handle, uint32_t clock_output, double* list, uint32_t length);
7967
7969
7993
8021
8045// Workaround: Without this line Doxygen adds the documentation below to the group above.
8046
8064
8082
8105TIEPIE_HW_API double tiepie_hw_oscilloscope_set_sample_rate(tiepie_hw_handle handle, double value);
8106
8108
8122TIEPIE_HW_API double tiepie_hw_oscilloscope_verify_sample_rate(tiepie_hw_handle handle, double value);
8123
8141TIEPIE_HW_API double tiepie_hw_oscilloscope_verify_sample_rate_ex(tiepie_hw_handle handle, double value, uint32_t measure_mode, uint8_t resolution, const tiepie_hw_bool* channel_enabled, uint16_t channel_count);
8142
8161TIEPIE_HW_API void tiepie_hw_oscilloscope_verify_sample_rates_ex(tiepie_hw_handle handle, double* values, uint32_t count, uint32_t measure_mode, uint32_t auto_resolution_mode, uint8_t resolution, const tiepie_hw_bool* channel_enabled, uint16_t channel_count);
8162
8164
8183// Workaround: Without this line Doxygen adds the documentation below to the group above.
8184
8202
8204
8219TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_record_length_max_ex(tiepie_hw_handle handle, uint32_t measure_mode, uint8_t resolution);
8220
8222
8240
8262TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_set_record_length(tiepie_hw_handle handle, uint64_t record_length);
8263
8265
8279TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_verify_record_length(tiepie_hw_handle handle, uint64_t record_length);
8280
8298TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_verify_record_length_ex(tiepie_hw_handle handle, uint64_t record_length, uint32_t measure_mode, uint8_t resolution, const tiepie_hw_bool* channel_enabled, uint16_t channel_count);
8299
8301
8325// Workaround: Without this line Doxygen adds the documentation below to the group above.
8326
8344
8365TIEPIE_HW_API double tiepie_hw_oscilloscope_set_pre_sample_ratio(tiepie_hw_handle handle, double value);
8366
8376// Workaround: Without this line Doxygen adds the documentation below to the group above.
8377
8396
8398
8411TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_segment_count_max_ex(tiepie_hw_handle handle, uint32_t measure_mode);
8412
8414
8434
8456TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_segment_count(tiepie_hw_handle handle, uint32_t value);
8457
8459
8473TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_verify_segment_count(tiepie_hw_handle handle, uint32_t value);
8474
8492TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_verify_segment_count_ex(tiepie_hw_handle handle, uint32_t value, uint32_t measure_mode, uint64_t record_length, const tiepie_hw_bool* channel_enabled, uint16_t channel_count);
8493
8495
8506// Workaround: Without this line Doxygen adds the documentation below to the group above.
8507
8523
8525
8543TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_has_trigger_ex(tiepie_hw_handle handle, uint32_t measure_mode);
8544
8546
8571// Workaround: Without this line Doxygen adds the documentation below to the group above.
8572
8590
8610TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_set_timeout(tiepie_hw_handle handle, double value);
8611
8613
8625TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_verify_timeout(tiepie_hw_handle handle, double value);
8626
8640TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_verify_timeout_ex(tiepie_hw_handle handle, double value, uint32_t measure_mode, double sample_rate);
8641
8643
8659// Workaround: Without this line Doxygen adds the documentation below to the group above.
8660
8676
8678
8696TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_trigger_has_delay_ex(tiepie_hw_handle handle, uint32_t measure_mode);
8697
8699
8719
8721
8746TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_get_delay_max_ex(tiepie_hw_handle handle, uint32_t measure_mode, double sample_rate);
8747
8749
8769
8791TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_set_delay(tiepie_hw_handle handle, double value);
8792
8794
8809TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_verify_delay(tiepie_hw_handle handle, double value);
8810
8827TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_verify_delay_ex(tiepie_hw_handle handle, double value, uint32_t measure_mode, double sample_rate);
8828
8830
8838// Workaround: Without this line Doxygen adds the documentation below to the group above.
8839
8855
8872
8891
8911
8931// Workaround: Without this line Doxygen adds the documentation below to the group above.
8932
8949
8968
8990
8992
9021TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_start_sureconnect_ex(tiepie_hw_handle handle, const tiepie_hw_bool* channel_enabled, uint16_t channel_count);
9022
9024
9046
9105TIEPIE_HW_API uint16_t tiepie_hw_oscilloscope_get_sureconnect_data(tiepie_hw_handle handle, tiepie_hw_tristate* buffer, uint16_t channel_count);
9106
9125// Workaround: Without this line Doxygen adds the documentation below to the group above.
9126
9143
9159
9176
9193
9210
9227
9229
9245TIEPIE_HW_API void tiepie_hw_generator_get_output_value_min_max(tiepie_hw_handle handle, double* min, double* max);
9246
9248
9269// Workaround: Without this line Doxygen adds the documentation below to the group above.
9270
9290
9299
9317
9334
9354
9372
9391
9413
9433
9452
9483// Workaround: Without this line Doxygen adds the documentation below to the group above.
9484
9502
9520
9543TIEPIE_HW_API uint32_t tiepie_hw_generator_set_signal_type(tiepie_hw_handle handle, uint32_t value);
9544
9567// Workaround: Without this line Doxygen adds the documentation below to the group above.
9568
9588
9590
9607TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_amplitude_ex(tiepie_hw_handle handle, uint32_t signal_type);
9608
9610
9633
9656
9658
9685TIEPIE_HW_API void tiepie_hw_generator_get_amplitude_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double* min, double* max);
9686
9688
9708
9734TIEPIE_HW_API double tiepie_hw_generator_set_amplitude(tiepie_hw_handle handle, double amplitude);
9735
9737
9764TIEPIE_HW_API double tiepie_hw_generator_verify_amplitude(tiepie_hw_handle handle, double amplitude);
9765
9795TIEPIE_HW_API double tiepie_hw_generator_verify_amplitude_ex(tiepie_hw_handle handle, double amplitude, uint32_t signal_type, uint32_t amplitude_range_index, double offset, tiepie_hw_bool output_invert);
9796
9798
9812// Workaround: Without this line Doxygen adds the documentation below to the group above.
9813
9849TIEPIE_HW_API uint32_t tiepie_hw_generator_get_amplitude_ranges(tiepie_hw_handle handle, double* list, uint32_t length);
9850
9871
9908TIEPIE_HW_API double tiepie_hw_generator_set_amplitude_range(tiepie_hw_handle handle, double value);
9909
9930
9954
9975// Workaround: Without this line Doxygen adds the documentation below to the group above.
9976
9996
9998
10015TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_offset_ex(tiepie_hw_handle handle, uint32_t signal_type);
10016
10018
10038
10058
10060
10085TIEPIE_HW_API void tiepie_hw_generator_get_offset_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double* min, double* max);
10086
10088
10108
10131TIEPIE_HW_API double tiepie_hw_generator_set_offset(tiepie_hw_handle handle, double value);
10132
10134
10159TIEPIE_HW_API double tiepie_hw_generator_verify_offset(tiepie_hw_handle handle, double value);
10160
10189TIEPIE_HW_API double tiepie_hw_generator_verify_offset_ex(tiepie_hw_handle handle, double value, uint32_t signal_type, double amplitude, tiepie_hw_bool output_invert);
10190
10192
10227// Workaround: Without this line Doxygen adds the documentation below to the group above.
10228
10247
10249
10270TIEPIE_HW_API uint32_t tiepie_hw_generator_get_frequency_modes_ex(tiepie_hw_handle handle, uint32_t signal_type);
10271
10273
10292
10317TIEPIE_HW_API uint32_t tiepie_hw_generator_set_frequency_mode(tiepie_hw_handle handle, uint32_t value);
10318
10323// Workaround: Without this line Doxygen adds the documentation below to the group above.
10324
10344
10346
10364TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_frequency_ex(tiepie_hw_handle handle, uint32_t frequency_mode, uint32_t signal_type);
10365
10367
10387
10407
10409
10435TIEPIE_HW_API void tiepie_hw_generator_get_frequency_min_max(tiepie_hw_handle handle, uint32_t frequency_mode, double* min, double* max);
10436
10462TIEPIE_HW_API void tiepie_hw_generator_get_frequency_min_max_ex(tiepie_hw_handle handle, uint32_t frequency_mode, uint32_t signal_type, double* min, double* max);
10463
10465
10485
10511TIEPIE_HW_API double tiepie_hw_generator_set_frequency(tiepie_hw_handle handle, double value);
10512
10514
10539TIEPIE_HW_API double tiepie_hw_generator_verify_frequency(tiepie_hw_handle handle, double value);
10540
10570TIEPIE_HW_API double tiepie_hw_generator_verify_frequency_ex(tiepie_hw_handle handle, double value, uint32_t frequency_mode, uint32_t signal_type, uint64_t data_length, double width);
10571
10573
10574
10594// Workaround: Without this line Doxygen adds the documentation below to the group above.
10595
10615
10617
10634TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_phase_ex(tiepie_hw_handle handle, uint32_t signal_type);
10635
10637
10658
10679
10681
10706TIEPIE_HW_API void tiepie_hw_generator_get_phase_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double* min, double* max);
10707
10709
10730
10756TIEPIE_HW_API double tiepie_hw_generator_set_phase(tiepie_hw_handle handle, double value);
10757
10759
10784TIEPIE_HW_API double tiepie_hw_generator_verify_phase(tiepie_hw_handle handle, double value);
10785
10812TIEPIE_HW_API double tiepie_hw_generator_verify_phase_ex(tiepie_hw_handle handle, double value, uint32_t signal_type);
10813
10815
10836// Workaround: Without this line Doxygen adds the documentation below to the group above.
10837
10857
10859
10876TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_symmetry_ex(tiepie_hw_handle handle, uint32_t signal_type);
10877
10879
10899
10919
10921
10946TIEPIE_HW_API void tiepie_hw_generator_get_symmetry_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double* min, double* max);
10947
10949
10969
10993TIEPIE_HW_API double tiepie_hw_generator_set_symmetry(tiepie_hw_handle handle, double value);
10994
10996
11021TIEPIE_HW_API double tiepie_hw_generator_verify_symmetry(tiepie_hw_handle handle, double value);
11022
11049TIEPIE_HW_API double tiepie_hw_generator_verify_symmetry_ex(tiepie_hw_handle handle, double value, uint32_t signal_type);
11050
11052
11076// Workaround: Without this line Doxygen adds the documentation below to the group above.
11077
11097
11099
11116TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_width_ex(tiepie_hw_handle handle, uint32_t signal_type);
11117
11119
11139
11159
11161
11187TIEPIE_HW_API void tiepie_hw_generator_get_width_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double signal_frequency, double* min, double* max);
11188
11190
11210
11235TIEPIE_HW_API double tiepie_hw_generator_set_width(tiepie_hw_handle handle, double value);
11236
11238
11263TIEPIE_HW_API double tiepie_hw_generator_verify_width(tiepie_hw_handle handle, double value);
11264
11292TIEPIE_HW_API double tiepie_hw_generator_verify_width_ex(tiepie_hw_handle handle, double value, uint32_t signal_type, double signal_frequency);
11293
11295
11327// Workaround: Without this line Doxygen adds the documentation below to the group above.
11328
11352
11354
11386TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_edge_time_ex(tiepie_hw_handle handle, uint32_t signal_type);
11387
11389
11414
11439
11441
11478TIEPIE_HW_API void tiepie_hw_generator_get_leading_edge_time_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double signal_frequency, double symmetry, double width, double trailing_edge_time, double* min, double* max);
11479
11481
11506
11535TIEPIE_HW_API double tiepie_hw_generator_set_leading_edge_time(tiepie_hw_handle handle, double leading_edge_time);
11536
11538
11572TIEPIE_HW_API double tiepie_hw_generator_verify_leading_edge_time(tiepie_hw_handle handle, double leading_edge_time);
11573
11612TIEPIE_HW_API double tiepie_hw_generator_verify_leading_edge_time_ex(tiepie_hw_handle handle, double leading_edge_time, uint32_t signal_type, double signal_frequency, double symmetry, double width, double trailing_edge_time);
11613
11615
11640
11665
11667
11705TIEPIE_HW_API void tiepie_hw_generator_get_trailing_edge_time_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double signal_frequency, double symmetry, double width, double leading_edge_time, double* min, double* max);
11706
11708
11733
11762TIEPIE_HW_API double tiepie_hw_generator_set_trailing_edge_time(tiepie_hw_handle handle, double value);
11763
11765
11798TIEPIE_HW_API double tiepie_hw_generator_verify_trailing_edge_time(tiepie_hw_handle handle, double value);
11799
11837TIEPIE_HW_API double tiepie_hw_generator_verify_trailing_edge_time_ex(tiepie_hw_handle handle, double trailing_edge_time, uint32_t signal_type, double signal_frequency, double symmetry, double width, double leading_edge_time);
11838
11840
11893// Workaround: Without this line Doxygen adds the documentation below to the group above.
11894
11911
11913
11930TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_data_ex(tiepie_hw_handle handle, uint32_t signal_type);
11931
11933
11952
11971
11973
11997TIEPIE_HW_API void tiepie_hw_generator_get_data_length_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, uint64_t* min, uint64_t* max);
11998
12000
12019
12021
12046TIEPIE_HW_API uint64_t tiepie_hw_generator_verify_data_length(tiepie_hw_handle handle, uint64_t value);
12047
12073TIEPIE_HW_API uint64_t tiepie_hw_generator_verify_data_length_ex(tiepie_hw_handle handle, uint64_t value, uint32_t signal_type);
12074
12076
12104TIEPIE_HW_API void tiepie_hw_generator_set_data(tiepie_hw_handle handle, const float* buffer, uint64_t sample_count);
12105
12107
12133TIEPIE_HW_API void tiepie_hw_generator_set_data_ex(tiepie_hw_handle handle, const float* buffer, uint64_t sample_count, uint32_t signal_type);
12134
12141// Workaround: Without this line Doxygen adds the documentation below to the group above.
12142
12151TIEPIE_HW_API uint32_t tiepie_hw_generator_get_data_raw_type(tiepie_hw_handle handle);
12152
12162TIEPIE_HW_API void tiepie_hw_generator_get_data_raw_value_range(tiepie_hw_handle handle, int64_t* min, int64_t* zero, int64_t* max);
12163
12171TIEPIE_HW_API int64_t tiepie_hw_generator_get_data_raw_value_min(tiepie_hw_handle handle);
12172
12180TIEPIE_HW_API int64_t tiepie_hw_generator_get_data_raw_value_zero(tiepie_hw_handle handle);
12181
12189TIEPIE_HW_API int64_t tiepie_hw_generator_get_data_raw_value_max(tiepie_hw_handle handle);
12190
12201TIEPIE_HW_API void tiepie_hw_generator_set_data_raw(tiepie_hw_handle handle, const void* buffer, uint64_t sample_count);
12202
12214TIEPIE_HW_API void tiepie_hw_generator_set_data_raw_ex(tiepie_hw_handle handle, const void* buffer, uint64_t sample_count, uint32_t signal_type);
12215
12221
12244// Workaround: Without this line Doxygen adds the documentation below to the group above.
12245
12264
12266
12284TIEPIE_HW_API uint64_t tiepie_hw_generator_get_modes_ex(tiepie_hw_handle handle, uint32_t signal_type, uint32_t frequency_mode);
12285
12287
12306
12324TIEPIE_HW_API uint64_t tiepie_hw_generator_get_mode(tiepie_hw_handle handle);
12325
12347TIEPIE_HW_API uint64_t tiepie_hw_generator_set_mode(tiepie_hw_handle handle, uint64_t value);
12348
12405// Workaround: Without this line Doxygen adds the documentation below to the group above.
12406
12424
12444
12464
12466
12489TIEPIE_HW_API void tiepie_hw_generator_get_burst_count_min_max_ex(tiepie_hw_handle handle, uint64_t generator_mode, uint64_t* min, uint64_t* max);
12490
12492
12512
12535TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_count(tiepie_hw_handle handle, uint64_t value);
12536
12556
12576
12578
12601TIEPIE_HW_API void tiepie_hw_generator_get_burst_sample_count_min_max_ex(tiepie_hw_handle handle, uint64_t generator_mode, uint64_t* min, uint64_t* max);
12602
12604
12624
12647TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_sample_count(tiepie_hw_handle handle, uint64_t value);
12648
12668
12688
12690
12717TIEPIE_HW_API void tiepie_hw_generator_get_burst_segment_count_min_max_ex(tiepie_hw_handle handle, uint64_t generator_mode, uint32_t signal_type, uint32_t frequency_mode, double frequency, uint64_t data_length, uint64_t* min, uint64_t* max);
12718
12720
12740
12763TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_segment_count(tiepie_hw_handle handle, uint64_t value);
12764
12766
12790TIEPIE_HW_API uint64_t tiepie_hw_generator_verify_burst_segment_count(tiepie_hw_handle handle, uint64_t value);
12791
12821TIEPIE_HW_API uint64_t tiepie_hw_generator_verify_burst_segment_count_ex(tiepie_hw_handle handle, uint64_t value, uint64_t generator_mode, uint32_t signal_type, uint32_t frequency_mode, double frequency, uint64_t data_length);
12822
12824
12871// Workaround: Without this line Doxygen adds the documentation below to the group above.
12872
12883
12894
12904
12912TIEPIE_HW_API uint32_t tiepie_hw_server_get_status(tiepie_hw_handle handle);
12913
12922
12932TIEPIE_HW_API uint32_t tiepie_hw_server_get_url(tiepie_hw_handle handle, char* buffer, uint32_t length);
12933
12943TIEPIE_HW_API uint32_t tiepie_hw_server_get_id(tiepie_hw_handle handle, char* buffer, uint32_t length);
12944
12954TIEPIE_HW_API uint32_t tiepie_hw_server_get_ip_address(tiepie_hw_handle handle, char* buffer, uint32_t length);
12955
12963TIEPIE_HW_API uint16_t tiepie_hw_server_get_ip_port(tiepie_hw_handle handle);
12964
12974TIEPIE_HW_API uint32_t tiepie_hw_server_get_name(tiepie_hw_handle handle, char* buffer, uint32_t length);
12975
12985TIEPIE_HW_API uint32_t tiepie_hw_server_get_description(tiepie_hw_handle handle, char* buffer, uint32_t length);
12986
13008TIEPIE_HW_API uint32_t tiepie_hw_server_get_version(tiepie_hw_handle handle, char* buffer, uint32_t length);
13009
13062
13076TIEPIE_HW_API void tiepie_hw_pointerarray_set(tiepie_hw_pointerarray ptr, uint32_t index, void* value);
13077
13089
13096#ifdef __cplusplus
13097}
13098#endif
13099
13100#endif
TIEPIE_HW_API int32_t tiepie_hw_device_get_battery_time_to_empty_ex(tiepie_hw_handle handle, uint32_t serial_number)
Get the expected time in minutes until the battery will be empty.
TIEPIE_HW_API int32_t tiepie_hw_device_get_battery_time_to_full_ex(tiepie_hw_handle handle, uint32_t serial_number)
Get the expected time in minutes until the battery will be fully charged.
TIEPIE_HW_API int8_t tiepie_hw_device_get_battery_charge(tiepie_hw_handle handle)
Get the battery charge state of the device's battery in percent.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_is_battery_charger_connected(tiepie_hw_handle handle)
Check whether a charger is connected to the device.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_is_battery_charging_ex(tiepie_hw_handle handle, uint32_t serial_number)
Check whether the device's battery is being charged.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_is_battery_broken_ex(tiepie_hw_handle handle, uint32_t serial_number)
Check whether the device's battery is defective.
TIEPIE_HW_API int8_t tiepie_hw_device_get_battery_charge_ex(tiepie_hw_handle handle, uint32_t serial_number)
Get the battery charge state of the device's battery in percent.
TIEPIE_HW_API int32_t tiepie_hw_device_get_battery_time_to_empty(tiepie_hw_handle handle)
Get the expected time in minutes until the battery will be empty.
TIEPIE_HW_API int32_t tiepie_hw_device_get_battery_time_to_full(tiepie_hw_handle handle)
Get the expected time in minutes until the battery will be fully charged.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_is_battery_broken(tiepie_hw_handle handle)
Check whether the device's battery is defective.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_has_battery_ex(tiepie_hw_handle handle, uint32_t serial_number)
Check whether the device has a battery.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_has_battery(tiepie_hw_handle handle)
Check whether the device has a battery.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_is_battery_charging(tiepie_hw_handle handle)
Check whether the device's battery is being charged.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_is_battery_charger_connected_ex(tiepie_hw_handle handle, uint32_t serial_number)
Check whether a charger is connected to the device.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_has_wireless_trigger_module(tiepie_hw_handle handle)
Check whether the device has a wireless trigger module.
TIEPIE_HW_API uint32_t tiepie_hw_device_get_name_shortest(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the short name of the device without model postfix.
TIEPIE_HW_API uint32_t tiepie_hw_device_get_serial_number(tiepie_hw_handle handle)
Get the serial number of the device.
TIEPIE_HW_API uint16_t tiepie_hw_device_get_ip_port(tiepie_hw_handle handle)
Get the IP port number of the device.
TIEPIE_HW_API uint32_t tiepie_hw_device_get_type(tiepie_hw_handle handle)
Get the device type.
TIEPIE_HW_API uint32_t tiepie_hw_device_get_name(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the full name of the device.
TIEPIE_HW_API uint32_t tiepie_hw_device_get_ip_address(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the IP address of the device.
TIEPIE_HW_API uint32_t tiepie_hw_device_get_name_short(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the short name of the device.
TIEPIE_HW_API tiepie_hw_productid tiepie_hw_device_get_product_id(tiepie_hw_handle handle)
Get the product id of the device.
TIEPIE_HW_API tiepie_hw_date tiepie_hw_device_get_calibration_date(tiepie_hw_handle handle)
Get the calibration date of the device.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_trigger_input_get_enabled(tiepie_hw_handle handle, uint16_t input)
Check whether a device trigger input is enabled.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_trigger_input_set_enabled(tiepie_hw_handle handle, uint16_t input, tiepie_hw_bool value)
To select a device trigger input as trigger source, set trigger input enabled.
TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_input_get_name(tiepie_hw_handle handle, uint16_t input, char *buffer, uint32_t length)
Get the name of a specified device trigger input.
TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_input_get_id(tiepie_hw_handle handle, uint16_t input)
Get the id of a specified device trigger input.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_trigger_input_is_available(tiepie_hw_handle handle, uint16_t input)
Check whether a device trigger input is available.
TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_set_kind(tiepie_hw_handle handle, uint16_t input, uint64_t value)
Set the required trigger kind for a specified device trigger input.
TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_get_kinds(tiepie_hw_handle handle, uint16_t input)
Get the supported trigger kinds for a specified device trigger input.
TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_get_kind(tiepie_hw_handle handle, uint16_t input)
Get the currently selected trigger kind for a specified device trigger input.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_trigger_input_is_triggered(tiepie_hw_handle handle, uint16_t input)
Check whether the trigger input caused a trigger.
TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_input_index_by_id(tiepie_hw_handle handle, uint32_t id)
Get the index of a trigger input identified by its ID.
TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_input_count(tiepie_hw_handle handle)
Get the number of trigger inputs.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_trigger_output_set_enabled(tiepie_hw_handle handle, uint16_t output, tiepie_hw_bool value)
Set trigger output enable.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_trigger_output_get_enabled(tiepie_hw_handle handle, uint16_t output)
Check whether a trigger output is enabled.
TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_get_events(tiepie_hw_handle handle, uint16_t output)
Get the supported trigger output events for a specified device trigger output.
TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_get_event(tiepie_hw_handle handle, uint16_t output)
Get the currently selected trigger output event for a specified device trigger output.
TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_set_event(tiepie_hw_handle handle, uint16_t output, uint64_t value)
Set the trigger output event for a specified device trigger output.
TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_output_get_name(tiepie_hw_handle handle, uint16_t output, char *buffer, uint32_t length)
Get the name of a specified device trigger output.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_trigger_output_trigger(tiepie_hw_handle handle, uint16_t output)
Trigger the specified device trigger output.
TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_output_get_id(tiepie_hw_handle handle, uint16_t output)
Get the id of a specified device trigger output.
TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_output_index_by_id(tiepie_hw_handle handle, uint32_t id)
Get the index of trigger output identified by its ID.
TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_output_count(tiepie_hw_handle handle)
Get the number of trigger outputs.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_count_min(tiepie_hw_handle handle)
Get the minimum burst count for the current generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_sample_count(tiepie_hw_handle handle)
Get the current burst sample count for the current generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_segment_count_min(tiepie_hw_handle handle)
Get the minimum burst segment count for the current settings of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_sample_count(tiepie_hw_handle handle, uint64_t value)
Set the burst sample count for the current generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_sample_count_max(tiepie_hw_handle handle)
Get the maximum burst sample count for the current generator mode of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_is_burst_active(tiepie_hw_handle handle)
Check whether a burst is active, of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_count(tiepie_hw_handle handle)
Get the current burst count for the current generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_count(tiepie_hw_handle handle, uint64_t value)
Set the burst count for the current generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_count_max(tiepie_hw_handle handle)
Get the maximum burst count for the current generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_segment_count(tiepie_hw_handle handle, uint64_t value)
Set the burst segment count of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_segment_count_max(tiepie_hw_handle handle)
Get the maximum burst segment count for the current settings of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_segment_count(tiepie_hw_handle handle)
Get the current burst segment count of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_sample_count_min(tiepie_hw_handle handle)
Get the minimum burst sample count for the current generator mode of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_set_output_invert(tiepie_hw_handle handle, tiepie_hw_bool value)
Enable or disable the output invert of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_output_invert(tiepie_hw_handle handle)
Check whether the output of a specified generator can be inverted.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_stop(tiepie_hw_handle handle)
Stop the signal generation of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_is_controllable(tiepie_hw_handle handle)
Check whether a specified generator can be controlled.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_is_running(tiepie_hw_handle handle)
Check whether the generator is running.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_start(tiepie_hw_handle handle)
Start the signal generation of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_set_output_enable(tiepie_hw_handle handle, tiepie_hw_bool value)
Enable or disable the hardware of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_get_output_invert(tiepie_hw_handle handle)
Check whether the output of a specified generator is inverted.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_get_output_enable(tiepie_hw_handle handle)
Check whether a specified generator is enabled.
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_status(tiepie_hw_handle handle)
Get the current signal generation status of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_impedance(tiepie_hw_handle handle)
Get the output impedance of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_output_value_min(tiepie_hw_handle handle)
Get the minimum output value of a specified generator.
TIEPIE_HW_API uint8_t tiepie_hw_generator_get_resolution(tiepie_hw_handle handle)
Get the DAC resolution of a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_connector_type(tiepie_hw_handle handle)
Get the output connector type for a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_output_value_max(tiepie_hw_handle handle)
Get the maximum output value of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_is_differential(tiepie_hw_handle handle)
Check whether the output of a specified generator is differential.
TIEPIE_HW_API uint64_t tiepie_hw_generator_set_mode(tiepie_hw_handle handle, uint64_t value)
Set the generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_modes_native(tiepie_hw_handle handle)
Get all supported generator modes of a specified generator, regardless of the signal type and frequen...
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_modes(tiepie_hw_handle handle)
Get the supported generator modes for the current signal type and frequency mode of a specified gener...
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_mode(tiepie_hw_handle handle)
Get the current generator mode of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_set_amplitude_range(tiepie_hw_handle handle, double value)
Set the amplitude range for a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_amplitude_range(tiepie_hw_handle handle)
Get the currently set amplitude range for a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_set_amplitude_auto_ranging(tiepie_hw_handle handle, tiepie_hw_bool value)
Set the amplitude auto ranging setting for a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_get_amplitude_auto_ranging(tiepie_hw_handle handle)
Get the amplitude auto ranging setting for a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_amplitude_ranges(tiepie_hw_handle handle, double *list, uint32_t length)
Get the supported amplitude ranges for a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_amplitude(tiepie_hw_handle handle)
Get the currently set signal amplitude of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_amplitude_min(tiepie_hw_handle handle)
Get the minimum signal amplitude for the current signal type of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_amplitude_max(tiepie_hw_handle handle)
Get the maximum signal amplitude for the current signal type of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_set_amplitude(tiepie_hw_handle handle, double amplitude)
Set the signal amplitude of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_amplitude(tiepie_hw_handle handle)
Check whether the current signal type of a specified generator supports controlling the signal amplit...
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_data_length_max(tiepie_hw_handle handle)
Get the maximum length of the waveform buffer of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_data(tiepie_hw_handle handle)
Check whether the current signal type of a specified generator supports controlling the Arbitrary wav...
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_data_length_min(tiepie_hw_handle handle)
Get the minimum length of the waveform buffer of a specified generator.
TIEPIE_HW_API void tiepie_hw_generator_set_data(tiepie_hw_handle handle, const float *buffer, uint64_t sample_count)
Load a waveform pattern into the waveform buffer of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_data_length(tiepie_hw_handle handle)
Get the length of the currently loaded waveform pattern of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_leading_edge_time_max(tiepie_hw_handle handle)
Get the maximum leading edge time with the current pulse width and signal frequency,...
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_edge_time(tiepie_hw_handle handle)
Check whether the current signal type of a specified generator supports controlling the edge times.
TIEPIE_HW_API double tiepie_hw_generator_get_leading_edge_time_min(tiepie_hw_handle handle)
Get the minimum leading edge time with the current pulse width and signal frequency,...
TIEPIE_HW_API double tiepie_hw_generator_get_trailing_edge_time_max(tiepie_hw_handle handle)
Get the maximum trailing edge time with the current pulse width and signal frequency,...
TIEPIE_HW_API double tiepie_hw_generator_set_leading_edge_time(tiepie_hw_handle handle, double leading_edge_time)
Set the leading edge time, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_trailing_edge_time_min(tiepie_hw_handle handle)
Get the minimum trailing edge time with the current pulse width and signal frequency,...
TIEPIE_HW_API double tiepie_hw_generator_get_leading_edge_time(tiepie_hw_handle handle)
Get the current leading edge time with the current pulse width and signal frequency,...
TIEPIE_HW_API double tiepie_hw_generator_set_trailing_edge_time(tiepie_hw_handle handle, double value)
Set the trailing edge time, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_trailing_edge_time(tiepie_hw_handle handle)
Get the current trailing edge time with the current pulse width and signal frequency,...
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_frequency_modes(tiepie_hw_handle handle)
Get the supported generator frequency modes of a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_frequency_mode(tiepie_hw_handle handle)
Get the current generator frequency mode of a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_set_frequency_mode(tiepie_hw_handle handle, uint32_t value)
Set the generator frequency mode of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_set_frequency(tiepie_hw_handle handle, double value)
Set signal/sample frequency, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_frequency_min(tiepie_hw_handle handle)
Get the minimum signal/sample frequency with the current frequency mode, of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_frequency(tiepie_hw_handle handle)
Check whether the current signal type and frequency mode of a specified generator support controlling...
TIEPIE_HW_API double tiepie_hw_generator_get_frequency_max(tiepie_hw_handle handle)
Get the maximum signal/sample frequency with the current frequency mode and signal type,...
TIEPIE_HW_API double tiepie_hw_generator_get_frequency(tiepie_hw_handle handle)
Get the current signal/sample frequency, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_offset(tiepie_hw_handle handle)
Get the current signal offset of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_set_offset(tiepie_hw_handle handle, double value)
Set the signal offset of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_offset(tiepie_hw_handle handle)
Check whether the current signal type of a specified generator supports controlling the signal offset...
TIEPIE_HW_API double tiepie_hw_generator_get_offset_max(tiepie_hw_handle handle)
Get the maximum offset for the current signal type, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_offset_min(tiepie_hw_handle handle)
Get the minimum offset for the current signal type, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_phase_max(tiepie_hw_handle handle)
Get the maximum signal phase of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_phase(tiepie_hw_handle handle)
Check whether the specified generator and the current signal type of the specified generator support ...
TIEPIE_HW_API double tiepie_hw_generator_get_phase(tiepie_hw_handle handle)
Get the current signal phase of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_set_phase(tiepie_hw_handle handle, double value)
Set the signal phase of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_phase_min(tiepie_hw_handle handle)
Get the minimum signal phase of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_symmetry_min(tiepie_hw_handle handle)
Get the minimum signal symmetry of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_symmetry(tiepie_hw_handle handle)
Check whether the current signal type of a specified generator supports controlling the signal symmet...
TIEPIE_HW_API double tiepie_hw_generator_get_symmetry(tiepie_hw_handle handle)
Get the current signal symmetry of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_set_symmetry(tiepie_hw_handle handle, double value)
Set the signal symmetry of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_symmetry_max(tiepie_hw_handle handle)
Get the maximum signal symmetry of a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_signal_type(tiepie_hw_handle handle)
Get the currently selected signal type of a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_signal_types(tiepie_hw_handle handle)
Get the supported signal types of a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_set_signal_type(tiepie_hw_handle handle, uint32_t value)
Set the signal type of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_width(tiepie_hw_handle handle)
Check whether the current signal type of a specified generator supports controlling the signal pulse ...
TIEPIE_HW_API double tiepie_hw_generator_set_width(tiepie_hw_handle handle, double value)
Set the pulse width, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_width(tiepie_hw_handle handle)
Get the current pulse width, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_width_max(tiepie_hw_handle handle)
Get the maximum pulse width with the current signal frequency, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_width_min(tiepie_hw_handle handle)
Get the minimum pulse width with the current signal frequency, of a specified generator.
TIEPIE_HW_API void tiepie_hw_pointerarray_set(tiepie_hw_pointerarray ptr, uint32_t index, void *value)
Set a pointer at a specified index in a specified pointer array.
TIEPIE_HW_API void tiepie_hw_pointerarray_delete(tiepie_hw_pointerarray ptr)
Delete an existing pointer array.
TIEPIE_HW_API tiepie_hw_pointerarray tiepie_hw_pointerarray_new(uint32_t length)
Create a new pointer array.
TIEPIE_HW_API tiepie_hw_status tiepie_hw_get_last_status(void)
Get the last status value.
TIEPIE_HW_API const char * tiepie_hw_get_last_status_str(void)
Get the last status value as text.
TIEPIE_HW_API void tiepie_hw_init(void)
Create and initialize internal resources used by the library.
TIEPIE_HW_API void tiepie_hw_fini(void)
Clear and free internal resources used by the library.
TIEPIE_HW_API const tiepie_hw_version * tiepie_hw_get_version(void)
Get library version info.
TIEPIE_HW_API uint32_t tiepie_hw_get_config(uint8_t *buffer, uint32_t length)
Get the library configuration number.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_is_initialized(void)
Check whether the library's internal resources are initialized.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelistitem_open_generator(tiepie_hw_handle handle)
Open a generator and get a handle to the generator.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelistitem_open_oscilloscope(tiepie_hw_handle handle)
Open an oscilloscope and get a handle to the oscilloscope.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelist_get_item_by_serial_number(uint32_t serial_number)
Get handle to device list item by product id.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelist_get_item_by_index(uint32_t index)
Get handle to device list item by product id.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelistitem_open_device(tiepie_hw_handle handle, uint32_t device_type)
Open a device and get a handle to the device.
TIEPIE_HW_API void tiepie_hw_devicelist_remove_unused_devices(void)
Remove unused instruments from the device list so they can be used by other applications.
TIEPIE_HW_API uint32_t tiepie_hw_devicelist_create_combined_device(const tiepie_hw_handle *handles, uint32_t count)
Create a combined instrument.
TIEPIE_HW_API uint32_t tiepie_hw_devicelist_create_demo_device(tiepie_hw_productid product_id)
Create a demo instrument.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_devicelist_get_usb_hotplug_detect_enabled(void)
Get the current enabled state of the USB hot plug detection.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelist_get_item_by_product_id(tiepie_hw_productid product_id)
Get handle to device list item by product id.
TIEPIE_HW_API uint32_t tiepie_hw_devicelist_get_count(void)
Get the number of devices in the device list.
TIEPIE_HW_API const tiepie_hw_demo_info * tiepie_hw_devicelist_get_demo_device_info(void)
Get list of available demo devices.
TIEPIE_HW_API void tiepie_hw_devicelist_remove_device(uint32_t serial_number, tiepie_hw_bool force)
Remove an instrument from the device list so it can be used by other applications.
TIEPIE_HW_API void tiepie_hw_devicelist_update(void)
Update the device list.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelist_create_and_open_combined_device(const tiepie_hw_handle *handles, uint32_t count)
Create and open a combined instrument.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_devicelist_set_usb_hotplug_detect_enabled(tiepie_hw_bool value)
Set the USB hot plug detection enabled state.
TIEPIE_HW_API void tiepie_hw_network_servers_set_callback_added(tiepie_hw_handle_callback callback, void *data)
Set a callback function which is called when a server is added to the server list.
TIEPIE_HW_API uint32_t tiepie_hw_network_servers_get_count(void)
Get the number of network connected WiFiScopes available.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_network_servers_add(const char *url, uint32_t length, tiepie_hw_handle *handle)
Add a WiFiScope to the list of network connected WiFiScopes.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_network_servers_get_by_index(uint32_t index)
Get the handle of a server, based on its index in the list of network connected WiFiScopes.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_network_servers_get_by_url(const char *url, uint32_t length)
Get the handle of a server, based on its URL.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_network_servers_remove(const char *url, uint32_t length, tiepie_hw_bool force)
Remove a WiFiScope from the list of network connected WiFiScopes.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_network_set_auto_detect_enabled(tiepie_hw_bool value)
Enable or disable automatic detection of network instruments and instrument servers.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_network_get_auto_detect_enabled(void)
Check whether automatically detecting network instruments and instrument servers is enabled.
TIEPIE_HW_API void tiepie_hw_object_set_event_callback(tiepie_hw_handle handle, tiepie_hw_event_callback callback, void *data)
Set a callback function which is called when an event occurs.
TIEPIE_HW_API uint64_t tiepie_hw_object_get_interfaces(tiepie_hw_handle handle)
Check which interfaces are supported by the specified object.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_object_is_removed(tiepie_hw_handle handle)
Check whether an object is removed.
TIEPIE_HW_API void tiepie_hw_object_close(tiepie_hw_handle handle)
Close a object.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_set_bandwidth(tiepie_hw_handle handle, uint16_t ch, double bandwidth)
Set the channel input bandwidth.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_bandwidths(tiepie_hw_handle handle, uint16_t ch, double *list, uint32_t length)
Get the supported input bandwidths for a specified channel.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_bandwidth(tiepie_hw_handle handle, uint16_t ch)
Get the current channel input bandwidth.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_set_coupling(tiepie_hw_handle handle, uint16_t ch, uint64_t coupling)
Set the coupling of a specified channel.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_get_coupling(tiepie_hw_handle handle, uint16_t ch)
Get the currently set coupling of a specified channel.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_get_couplings(tiepie_hw_handle handle, uint16_t ch)
Get the supported coupling kinds of a specified channel.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_amplitude(tiepie_hw_handle handle, uint16_t ch, double value)
Set the demo signal amplitude of a specified demo oscilloscope channel.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_get_amplitude(tiepie_hw_handle handle, uint16_t ch)
Get the currently selected demo signal amplitude of a specified demo oscilloscope channel.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_demo_has_amplitude(tiepie_hw_handle handle, uint16_t ch)
Check whether the currently selected demo signal type supports setting the amplitude.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_frequency(tiepie_hw_handle handle, uint16_t ch, double value)
Set the demo signal frequency of a specified demo oscilloscope channel, in Hz.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_get_frequency(tiepie_hw_handle handle, uint16_t ch)
Get the currently selected demo signal frequency of a specified demo oscilloscope channel.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_demo_has_frequency(tiepie_hw_handle handle, uint16_t ch)
Check whether the currently selected demo signal type supports setting the frequency.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_demo_has_noise_enabled(tiepie_hw_handle handle, uint16_t ch)
Check whether the selected demo signal type supports injecting small noise.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_demo_get_noise_enabled(tiepie_hw_handle handle, uint16_t ch)
Get the currently selected noise injection state of a specified demo oscilloscope channel.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_demo_set_noise_enabled(tiepie_hw_handle handle, uint16_t ch, tiepie_hw_bool value)
Set the noise injection state of a specified demo oscilloscope channel.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_offset(tiepie_hw_handle handle, uint16_t ch, double value)
Set the demo signal offset of a specified demo oscilloscope channel, in Volt.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_get_offset(tiepie_hw_handle handle, uint16_t ch)
Get the currently selected demo signal offset of a specified demo oscilloscope channel.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_demo_has_offset(tiepie_hw_handle handle, uint16_t ch)
Check whether the currently selected demo signal type supports setting the offset.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_phase(tiepie_hw_handle handle, uint16_t ch, double value)
Set the demo signal phase of a specified demo oscilloscope channel.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_get_phase(tiepie_hw_handle handle, uint16_t ch)
Get the currently selected demo signal phase of a specified demo oscilloscope channel.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_demo_has_phase(tiepie_hw_handle handle, uint16_t ch)
Check whether the currently selected demo signal type supports setting the phase.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_get_symmetry(tiepie_hw_handle handle, uint16_t ch)
Get the currently selected demo signal symmetry of a specified demo oscilloscope channel.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_symmetry(tiepie_hw_handle handle, uint16_t ch, double value)
Set the demo signal symmetry of a specified demo oscilloscope channel.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_demo_has_symmetry(tiepie_hw_handle handle, uint16_t ch)
Check whether the currently selected demo signal type supports setting the symmetry.
TIEPIE_HW_API tiepie_hw_demosignal tiepie_hw_oscilloscope_channel_demo_set_signal(tiepie_hw_handle handle, uint16_t ch, tiepie_hw_demosignal value)
Set the demo signal type of a specified demo oscilloscope channel.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_is_demo(tiepie_hw_handle handle)
Check whether the specified oscilloscope is a demo oscilloscope.
TIEPIE_HW_API tiepie_hw_demosignal tiepie_hw_oscilloscope_channel_demo_get_signal(tiepie_hw_handle handle, uint16_t ch)
Get the currently selected demo signal type of a specified demo oscilloscope channel.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_get_enabled(tiepie_hw_handle handle, uint16_t ch)
Check whether a specified channel is currently enabled.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_set_enabled(tiepie_hw_handle handle, uint16_t ch, tiepie_hw_bool value)
Set channel enable.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_impedance(tiepie_hw_handle handle, uint16_t ch)
Get the channel input impedance.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_is_isolated(tiepie_hw_handle handle, uint16_t ch)
Check whether the channel has a galvanically isolated input.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_is_differential(tiepie_hw_handle handle, uint16_t ch)
Check whether the channel has a differential input.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_connector_type(tiepie_hw_handle handle, uint16_t ch)
Get the channel connector type.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_range(tiepie_hw_handle handle, uint16_t ch)
Get the currently selected input range for a specified channel.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_set_range(tiepie_hw_handle handle, uint16_t ch, double range)
Set the input range for a specified channel.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_get_auto_ranging(tiepie_hw_handle handle, uint16_t ch)
Check whether auto ranging is enabled for a specified channel.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_ranges(tiepie_hw_handle handle, uint16_t ch, double *list, uint32_t length)
Get the supported input ranges for a specified channel, with the currently selected coupling.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_set_auto_ranging(tiepie_hw_handle handle, uint16_t ch, tiepie_hw_bool value)
Set auto ranging for a specified channel.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_safeground_threshold_min(tiepie_hw_handle handle, uint16_t ch)
Get the minimum SafeGround threshold current for the specified channel.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_safeground_threshold(tiepie_hw_handle handle, uint16_t ch)
Get the actual SafeGround threshold current for the specified channel.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_get_safeground_enabled(tiepie_hw_handle handle, uint16_t ch)
Check whether SafeGround is enabled for a specified channel.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_has_safeground(tiepie_hw_handle handle, uint16_t ch)
Check whether the specified channel has SafeGround.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_set_safeground_enabled(tiepie_hw_handle handle, uint16_t ch, tiepie_hw_bool value)
Enable or disable SafeGround for a specified channel.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_safeground_threshold_max(tiepie_hw_handle handle, uint16_t ch)
Get the maximum SafeGround threshold current for the specified channel.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_set_safeground_threshold(tiepie_hw_handle handle, uint16_t ch, double threshold)
Set the SafeGround threshold current for the specified channel.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_get_conditions(tiepie_hw_handle handle, uint16_t ch)
Get the supported trigger conditions for a specified channel with the currently selected trigger kind...
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_set_condition(tiepie_hw_handle handle, uint16_t ch, uint32_t value)
Set the trigger condition for a specified channel.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_get_condition(tiepie_hw_handle handle, uint16_t ch)
Get the current selected trigger condition for a specified channel.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_trigger_get_enabled(tiepie_hw_handle handle, uint16_t ch)
Check whether channel trigger for a specified channel is enabled.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_trigger_set_enabled(tiepie_hw_handle handle, uint16_t ch, tiepie_hw_bool value)
To select a channel as trigger source, set channel trigger enable.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_get_hysteresis_count(tiepie_hw_handle handle, uint16_t ch)
Get the number of trigger hystereses for a specified channel with the currently selected trigger kind...
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_set_hysteresis(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value)
Set the channel trigger hysteresis value for a specified channel and trigger hysteresis.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_get_hysteresis(tiepie_hw_handle handle, uint16_t ch, uint32_t index)
Get the currently set channel trigger hysteresis value for a specified channel and trigger hysteresis...
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_get_kind(tiepie_hw_handle handle, uint16_t ch)
Get the currently selected channel trigger kind for a specified channel.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_get_kinds(tiepie_hw_handle handle, uint16_t ch)
Get the supported channel trigger kinds for a specified channel with the currently selected measure m...
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_set_kind(tiepie_hw_handle handle, uint16_t ch, uint64_t value)
Set the channel trigger kind for a specified channel.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_get_level_mode(tiepie_hw_handle handle, uint16_t ch)
Get the current trigger level mode of a specified channel.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_set_level_mode(tiepie_hw_handle handle, uint16_t ch, uint32_t value)
Set the trigger level mode of a specified channel.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_get_level_modes(tiepie_hw_handle handle, uint16_t ch)
Get the supported trigger level modes of a specified channel.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_get_level_count(tiepie_hw_handle handle, uint16_t ch)
Get the number of channel trigger levels for a specified channel with the currently selected trigger ...
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_set_level(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value)
Set the channel trigger level value for a specified channel and trigger level.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_get_level(tiepie_hw_handle handle, uint16_t ch, uint32_t index)
Get the currently set channel trigger level value for a specified channel and trigger level.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_set_time(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value)
Set the required trigger time value for a specified channel and trigger type.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_get_time_count(tiepie_hw_handle handle, uint16_t ch)
Get the number of trigger times for the current trigger kind and trigger condition.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_get_time(tiepie_hw_handle handle, uint16_t ch, uint32_t index)
Get the current trigger time value for a specified channel and trigger type.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_trigger_is_triggered(tiepie_hw_handle handle, uint16_t ch)
Check whether the channel trigger caused a trigger.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_trigger_is_available(tiepie_hw_handle handle, uint16_t ch)
Check whether the channel trigger for the specified channel is available, with the current oscillosco...
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_has_trigger(tiepie_hw_handle handle, uint16_t ch)
Check whether the specified channel has trigger support with the currently selected measure mode.
TIEPIE_HW_API uint16_t tiepie_hw_oscilloscope_get_channel_count(tiepie_hw_handle handle)
Get the number of channels.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_is_available(tiepie_hw_handle handle, uint16_t ch)
Check whether the channel is available.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_output_frequencies(tiepie_hw_handle handle, double *list, uint32_t length)
Get an array with the supported clock output frequencies of the specified oscilloscope.
TIEPIE_HW_API double tiepie_hw_oscilloscope_set_clock_output_frequency(tiepie_hw_handle handle, double value)
Set the clock output frequency of the specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_outputs(tiepie_hw_handle handle)
Get the supported clock outputs of the specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_output(tiepie_hw_handle handle)
Get the currently selected clock output of the specified oscilloscope.
TIEPIE_HW_API double tiepie_hw_oscilloscope_get_clock_output_frequency(tiepie_hw_handle handle)
Get the current clock output frequency of the specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_clock_output(tiepie_hw_handle handle, uint32_t value)
Set the clock output of the specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_source(tiepie_hw_handle handle)
Get the currently selected clock source of the specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_source_frequencies(tiepie_hw_handle handle, double *list, uint32_t length)
Get an array with the supported clock source frequencies of the specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_clock_source(tiepie_hw_handle handle, uint32_t value)
Set the clock source of the specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_sources(tiepie_hw_handle handle)
Get the supported clock sources of the specified oscilloscope.
TIEPIE_HW_API double tiepie_hw_oscilloscope_get_clock_source_frequency(tiepie_hw_handle handle)
Get the current clock source frequency of the specified oscilloscope.
TIEPIE_HW_API double tiepie_hw_oscilloscope_set_clock_source_frequency(tiepie_hw_handle handle, double value)
Set the clock source frequency of the specified oscilloscope.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_is_sureconnect_completed(tiepie_hw_handle handle)
Check whether the SureConnect connection test on a specified oscilloscope is completed.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_has_sureconnect(tiepie_hw_handle handle, uint16_t ch)
Check whether a specified channel of a specified oscilloscope supports SureConnect connection testing...
TIEPIE_HW_API uint16_t tiepie_hw_oscilloscope_get_sureconnect_data(tiepie_hw_handle handle, tiepie_hw_tristate *buffer, uint16_t channel_count)
Get the SureConnect connection test result data for a specified oscilloscope.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_start_sureconnect(tiepie_hw_handle handle)
Perform a SureConnect connection test on all enabled channels of a specified oscilloscope.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_has_sureconnect(tiepie_hw_handle handle)
Check whether the specified oscilloscope supports SureConnect connection testing.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_8ch(tiepie_hw_handle handle, float *buffer_ch1, float *buffer_ch2, float *buffer_ch3, float *buffer_ch4, float *buffer_ch5, float *buffer_ch6, float *buffer_ch7, float *buffer_ch8, uint64_t start_index, uint64_t sample_count)
Get the measurement data for the first eight channels.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_5ch(tiepie_hw_handle handle, float *buffer_ch1, float *buffer_ch2, float *buffer_ch3, float *buffer_ch4, float *buffer_ch5, uint64_t start_index, uint64_t sample_count)
Get the measurement data for the first five channels.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_data_value_max(tiepie_hw_handle handle, uint16_t ch)
Get the maximum value of the input range the current data was measured with.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_valid_pre_sample_count(tiepie_hw_handle handle)
Get the number of valid pre samples in the measurement.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_1ch(tiepie_hw_handle handle, float *buffer_ch1, uint64_t start_index, uint64_t sample_count)
Get the measurement data for the first channel.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data(tiepie_hw_handle handle, float **buffers, uint16_t channel_count, uint64_t start_index, uint64_t sample_count)
Get the measurement data for specified channels.
TIEPIE_HW_API void tiepie_hw_oscilloscope_channel_get_data_value_range(tiepie_hw_handle handle, uint16_t ch, double *min, double *max)
Get the minimum and maximum values of the input range the current data was measured with.
TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_data_value_min(tiepie_hw_handle handle, uint16_t ch)
Get the minimum value of the input range the current data was measured with.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_2ch(tiepie_hw_handle handle, float *buffer_ch1, float *buffer_ch2, uint64_t start_index, uint64_t sample_count)
Get the measurement data for the first two channels.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_6ch(tiepie_hw_handle handle, float *buffer_ch1, float *buffer_ch2, float *buffer_ch3, float *buffer_ch4, float *buffer_ch5, float *buffer_ch6, uint64_t start_index, uint64_t sample_count)
Get the measurement data for the first six channels.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_3ch(tiepie_hw_handle handle, float *buffer_ch1, float *buffer_ch2, float *buffer_ch3, uint64_t start_index, uint64_t sample_count)
Get the measurement data for the first three channels.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_4ch(tiepie_hw_handle handle, float *buffer_ch1, float *buffer_ch2, float *buffer_ch3, float *buffer_ch4, uint64_t start_index, uint64_t sample_count)
Get the measurement data for the first four channels.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_data_7ch(tiepie_hw_handle handle, float *buffer_ch1, float *buffer_ch2, float *buffer_ch3, float *buffer_ch4, float *buffer_ch5, float *buffer_ch6, float *buffer_ch7, uint64_t start_index, uint64_t sample_count)
Get the measurement data for the first seven channels.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_measure_mode(tiepie_hw_handle handle, uint32_t value)
Set the measure mode.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_measure_mode(tiepie_hw_handle handle)
Get the current measure mode.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_measure_modes(tiepie_hw_handle handle)
Get the supported measure modes for a specified oscilloscope.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_is_running(tiepie_hw_handle handle)
Check whether the oscilloscope is currently measuring.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_is_data_ready(tiepie_hw_handle handle)
Check whether new, unread measured data is available.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_is_triggered(tiepie_hw_handle handle)
Check whether the oscilloscope has triggered.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_is_data_overflow(tiepie_hw_handle handle)
Check whether a data overflow has occurred.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_is_timeout_triggered(tiepie_hw_handle handle)
Check whether the trigger was caused by the trigger time out.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_is_force_triggered(tiepie_hw_handle handle)
Check whether the trigger was caused by tiepie_hw_oscilloscope_force_trigger.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_stop(tiepie_hw_handle handle)
Stop a running measurement.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_force_trigger(tiepie_hw_handle handle)
Force a trigger.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_start(tiepie_hw_handle handle)
Start a single measurement.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_auto_resolution_modes(tiepie_hw_handle handle)
Get the supported auto resolution modes of the specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_auto_resolution_mode(tiepie_hw_handle handle, uint32_t value)
Set the auto resolution mode of the specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_auto_resolution_mode(tiepie_hw_handle handle)
Get the current auto resolution mode of the specified oscilloscope.
TIEPIE_HW_API uint8_t tiepie_hw_oscilloscope_get_resolution(tiepie_hw_handle handle)
Get the current resolution of the specified oscilloscope.
TIEPIE_HW_API uint8_t tiepie_hw_oscilloscope_set_resolution(tiepie_hw_handle handle, uint8_t value)
Set the resolution of the specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_resolutions(tiepie_hw_handle handle, uint8_t *list, uint32_t length)
Get an array with the supported resolutions of the specified oscilloscope.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_is_resolution_enhanced(tiepie_hw_handle handle)
Check whether the currently selected resolution is enhanced or a native resolution of the hardware.
TIEPIE_HW_API double tiepie_hw_oscilloscope_get_pre_sample_ratio(tiepie_hw_handle handle)
Get the current pre sample ratio of a specified oscilloscope.
TIEPIE_HW_API double tiepie_hw_oscilloscope_set_pre_sample_ratio(tiepie_hw_handle handle, double value)
Set the pre sample ratio of a specified oscilloscope.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_record_length(tiepie_hw_handle handle)
Get the currently selected record length of a specified oscilloscope.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_record_length_max(tiepie_hw_handle handle)
Get the maximum supported record length of a specified oscilloscope.
TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_set_record_length(tiepie_hw_handle handle, uint64_t record_length)
Set the record length of a specified oscilloscope.
TIEPIE_HW_API double tiepie_hw_oscilloscope_get_sample_rate_max(tiepie_hw_handle handle)
Get the maximum supported sample rate of a specified oscilloscope.
TIEPIE_HW_API double tiepie_hw_oscilloscope_set_sample_rate(tiepie_hw_handle handle, double value)
Set the sample rate of a specified oscilloscope.
TIEPIE_HW_API double tiepie_hw_oscilloscope_get_sample_rate(tiepie_hw_handle handle)
Get the currently selected sample rate of a specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_segment_count_max(tiepie_hw_handle handle)
Get the maximum supported number of segments of a specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_segment_count(tiepie_hw_handle handle, uint32_t value)
Set the number of segments of a specified oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_segment_count(tiepie_hw_handle handle)
Get the currently selected number of segments of a specified oscilloscope.
TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_get_delay(tiepie_hw_handle handle)
Get the currently selected trigger delay in seconds, for a specified oscilloscope.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_trigger_has_delay(tiepie_hw_handle handle)
Check whether the oscilloscope has trigger delay support with the currently selected measure mode.
TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_set_delay(tiepie_hw_handle handle, double value)
Set trigger delay in seconds, for a specified oscilloscope.
TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_get_delay_max(tiepie_hw_handle handle)
Get the maximum trigger delay in seconds, for the currently selected measure mode and sample rate.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_get_presamples_valid(tiepie_hw_handle handle)
Get presamples valid for a specified measure mode, for a specified oscilloscope.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_has_presamples_valid(tiepie_hw_handle handle)
Check whether the oscilloscope has presamples valid support with the currently selected measure mode.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_set_presamples_valid(tiepie_hw_handle handle, tiepie_hw_bool value)
Set presamples valid, for a specified oscilloscope.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_has_presamples_valid_ex(tiepie_hw_handle handle, uint32_t measure_mode)
Check whether the oscilloscope has presamples valid support for a specific measure mode.
TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_get_timeout(tiepie_hw_handle handle)
Get the currently selected trigger time out in seconds, for a specified oscilloscope.
TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_set_timeout(tiepie_hw_handle handle, double value)
Set the trigger time out in seconds, for a specified oscilloscope.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_has_trigger(tiepie_hw_handle handle)
Check whether the oscilloscope has trigger support with the currently selected measure mode.
TIEPIE_HW_API void tiepie_hw_devicelist_set_callback_device_added(tiepie_hw_devicelist_callback callback, void *data)
Set a callback function which is called when a device is added to the device list.
TIEPIE_HW_API void tiepie_hw_devicelist_set_callback_device_removed(tiepie_hw_devicelist_callback callback, void *data)
Set a callback function which is called when a device is removed from the device list.
TIEPIE_HW_API void tiepie_hw_devicelist_set_callback_device_can_open_changed(tiepie_hw_devicelist_callback callback, void *data)
Set a callback function which is called when the device can open property changes.
TIEPIE_HW_API uint32_t tiepie_hw_devicelistitemcombined_get_name(tiepie_hw_handle handle, uint32_t contained_device_serial_number, char *buffer, uint32_t length)
Get the full name of a device contained in a combined device.
TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_contained_serial_numbers(tiepie_hw_handle handle, uint32_t *buffer, uint32_t length)
Get the serial numbers of the individual devices contained in a combined device.
TIEPIE_HW_API tiepie_hw_date tiepie_hw_devicelistitemcombined_get_calibration_date(tiepie_hw_handle handle, uint32_t contained_device_serial_number)
Get the calibration date of a device contained in a combined device.
TIEPIE_HW_API uint32_t tiepie_hw_devicelistitemcombined_get_name_short(tiepie_hw_handle handle, uint32_t contained_device_serial_number, char *buffer, uint32_t length)
Get the short name of a device contained in a combined device.
TIEPIE_HW_API uint32_t tiepie_hw_devicelistitemcombined_get_name_shortest(tiepie_hw_handle handle, uint32_t contained_device_serial_number, char *buffer, uint32_t length)
Get the short name without model postfix of a device contained in a combined device.
TIEPIE_HW_API tiepie_hw_productid tiepie_hw_devicelistitemcombined_get_product_id(tiepie_hw_handle handle, uint32_t contained_device_serial_number)
Get the product id of a device contained in a combined device.
TIEPIE_HW_API uint16_t tiepie_hw_devicelistitemcombined_get_oscilloscope_channel_count(tiepie_hw_handle handle, uint32_t contained_device_serial_number)
Get the channel count of an oscilloscope contained in a combined oscilloscope.
TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_opened_by(tiepie_hw_handle handle, uint32_t device_type, char *buffer, uint32_t length)
See who is using the device.
TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_serial_number(tiepie_hw_handle handle)
Get the serial number of the listed device.
TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_ip_address(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the IP address of the listed device.
TIEPIE_HW_API tiepie_hw_productid tiepie_hw_devicelistitem_get_product_id(tiepie_hw_handle handle)
Get the product id of the listed device.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_devicelistitem_has_server(tiepie_hw_handle handle)
Check whether the listed device is connected to a server.
TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_name_short(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the short name of the listed device.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_devicelistitem_is_demo(tiepie_hw_handle handle)
Check whether the listed device is a demo device.
TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_types(tiepie_hw_handle handle)
Get the device types of the listed device.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelistitem_get_server(tiepie_hw_handle handle)
Get the server handle of the server the listed device is connected to.
TIEPIE_HW_API tiepie_hw_date tiepie_hw_devicelistitem_get_calibration_date(tiepie_hw_handle handle)
Get the calibration date of the listed device.
TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_name(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the full name of the listed device.
TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_name_shortest(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the short name of the listed device wihout model postfix.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_devicelistitem_can_open(tiepie_hw_handle handle, uint32_t device_type)
Check whether the listed device can be opened.
TIEPIE_HW_API uint16_t tiepie_hw_devicelistitem_get_ip_port(tiepie_hw_handle handle)
Get the IP port number of the listed device.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_server_connect(tiepie_hw_handle handle, tiepie_hw_bool asynchronous)
Connect to a specified network connected WiFiScope. This gives access to that network connected WiFiS...
TIEPIE_HW_API uint32_t tiepie_hw_server_get_version(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the software version number of the specified network connected WiFiScope.
TIEPIE_HW_API uint32_t tiepie_hw_server_get_last_error(tiepie_hw_handle handle)
Get the last error from a specified network connected WiFiScope.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_server_remove(tiepie_hw_handle handle, tiepie_hw_bool force)
Remove a specified network connected WiFiScope from the list of network connected WiFiScopes.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_server_disconnect(tiepie_hw_handle handle, tiepie_hw_bool force)
Disconnect from a specified network connected WiFiScope. This will close the opened network connected...
TIEPIE_HW_API uint32_t tiepie_hw_server_get_id(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the id of the specified network connected WiFiScope.
TIEPIE_HW_API uint32_t tiepie_hw_server_get_url(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the URL of the specified network connected WiFiScope.
TIEPIE_HW_API uint32_t tiepie_hw_server_get_name(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the name of the specified network connected WiFiScope.
TIEPIE_HW_API uint32_t tiepie_hw_server_get_status(tiepie_hw_handle handle)
Retrieve the status of a specified network connected WiFiScope.
TIEPIE_HW_API uint32_t tiepie_hw_server_get_ip_address(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the IP address of the specified network connected WiFiScope.
TIEPIE_HW_API uint16_t tiepie_hw_server_get_ip_port(tiepie_hw_handle handle)
Get the IP port number of the specified network connected WiFiScope.
TIEPIE_HW_API uint32_t tiepie_hw_server_get_description(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the description of the specified network connected WiFiScope.
tiepie_hw_event
Event IDs for events that can be used by LibTiePie to notify the calling application of changes with ...
Definition libtiepie-hw.h:1820
uint8_t tiepie_hw_bool
Boolean value one byte wide.
Definition libtiepie-hw.h:1784
void ** tiepie_hw_pointerarray
Pointer array.
Definition libtiepie-hw.h:1866
tiepie_hw_demosignal
Demo signal type IDs, for demo oscilloscope channels. See Demo signals.
Definition libtiepie-hw.h:1839
uint8_t tiepie_hw_tristate
TriState value one byte wide.
Definition libtiepie-hw.h:1865
tiepie_hw_status
Status code.
Definition libtiepie-hw.h:1741
void(* tiepie_hw_devicelist_callback)(void *data, uint32_t device_types, uint32_t serial_number)
Definition libtiepie-hw.h:1887
tiepie_hw_productid
ProductID IDs for products.
Definition libtiepie-hw.h:1790
void(* tiepie_hw_handle_callback)(void *data, tiepie_hw_handle handle)
Definition libtiepie-hw.h:1888
void(* tiepie_hw_event_callback)(void *data, tiepie_hw_event event, uint32_t value)
Definition libtiepie-hw.h:1889
uint32_t tiepie_hw_handle
Generic handle.
Definition libtiepie-hw.h:1783
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_TRIGGERED
Event ID for the event indicating that the oscilloscope has triggered.
Definition libtiepie-hw.h:1826
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_SURE_CONNECT_COMPLETED
Event ID for the event indicating that the connection test is ready.
Definition libtiepie-hw.h:1825
@ TIEPIE_HW_EVENT_GENERATOR_BURST_COMPLETED
Event ID for the event indicating that the generator burst is completed.
Definition libtiepie-hw.h:1827
@ TIEPIE_HW_EVENT_OBJECT_REMOVED
Event ID for the event indicating that an object was removed.
Definition libtiepie-hw.h:1822
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_DATA_OVERFLOW
Event ID for the event indicating that data overflow occurred during a streaming measurement.
Definition libtiepie-hw.h:1824
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_DATA_READY
Event ID for the event indicating that the oscilloscope measurement is ready.
Definition libtiepie-hw.h:1823
@ TIEPIE_HW_EVENT_SERVER_STATUS_CHANGED
Event ID for the event indicating that the server state has changed.
Definition libtiepie-hw.h:1829
@ TIEPIE_HW_EVENT_INVALID
This event ID value should not occur.
Definition libtiepie-hw.h:1821
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_SAFEGROUND_ERROR
Event ID for the event indicating that the oscilloscope channel SafeGround was disabled because of a ...
Definition libtiepie-hw.h:1830
@ TIEPIE_HW_EVENT_GENERATOR_CONTROLLABLE_CHANGED
Event ID for the event indicating that the generator controllable state has changed.
Definition libtiepie-hw.h:1828
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_WIRELESS_SYNCHRONIZATION_ERROR
Event ID for the event indicating that an error occurred with wireless synchronization of scopes.
Definition libtiepie-hw.h:1832
@ TIEPIE_HW_EVENT_DEVICE_BATTERY_STATUS_CHANGED
Event ID for the event indicating that the battery state has changed.
Definition libtiepie-hw.h:1831
@ TIEPIE_HW_DEMOSIGNAL_CAN_250000_HI
Generate a CAN-High signal, 250 kbps.
Definition libtiepie-hw.h:1855
@ TIEPIE_HW_DEMOSIGNAL_CANFD_250000_LO
Generate a CANFD-Low signal, 250 kbps.
Definition libtiepie-hw.h:1859
@ TIEPIE_HW_DEMOSIGNAL_DMX512
Generate a DMX 512 signal.
Definition libtiepie-hw.h:1860
@ TIEPIE_HW_DEMOSIGNAL_SINE
Generate a sine wave signal.
Definition libtiepie-hw.h:1841
@ TIEPIE_HW_DEMOSIGNAL_UART_9600_8N1
Generate a UART signal, 9600 baud, 8 bits, no parity, 1 stop bit.
Definition libtiepie-hw.h:1848
@ TIEPIE_HW_DEMOSIGNAL_LIN_19200
Generate a LIN bus signal, 19200 bps.
Definition libtiepie-hw.h:1861
@ TIEPIE_HW_DEMOSIGNAL_CAN_250000_LO
Generate a CAN-Low signal, 250 kbps.
Definition libtiepie-hw.h:1856
@ TIEPIE_HW_DEMOSIGNAL_CANFD_250000_HI
Generate a CANFD-High signal, 250 kbps.
Definition libtiepie-hw.h:1858
@ TIEPIE_HW_DEMOSIGNAL_UART_9600_7E2
Generate a UART signal, 9600 baud, 7 bits, even parity, 2 stop bits.
Definition libtiepie-hw.h:1849
@ TIEPIE_HW_DEMOSIGNAL_RS485_9600_8N1
Generate a RS458 signal, 9600 baud, 8 bits, no parity, 1 stop bit.
Definition libtiepie-hw.h:1852
@ TIEPIE_HW_DEMOSIGNAL_TRIANGLE
Generate a triangular signal.
Definition libtiepie-hw.h:1842
@ TIEPIE_HW_DEMOSIGNAL_RUNT
Generate a pulse signal with a runt pulse.
Definition libtiepie-hw.h:1845
@ TIEPIE_HW_DEMOSIGNAL_RS485_9600_8N1MD
Generate a RS458 signal, 9600 baud, 8 bits, no parity, 1 stop bit MultiDrop.
Definition libtiepie-hw.h:1853
@ TIEPIE_HW_DEMOSIGNAL_I2C_SDA
Generate an I2C SDA signal.
Definition libtiepie-hw.h:1847
@ TIEPIE_HW_DEMOSIGNAL_RS232_9600_8O15
Generate a RS232 signal, 9600 baud, 8 bits, odd parity, 1.5 stop bits.
Definition libtiepie-hw.h:1851
@ TIEPIE_HW_DEMOSIGNAL_RS232_9600_8N1
Generate a RS232 signal, 9600 baud, 8 bits, no parity, 1 stop bit.
Definition libtiepie-hw.h:1850
@ TIEPIE_HW_DEMOSIGNAL_NONE
Disable signal.
Definition libtiepie-hw.h:1840
@ TIEPIE_HW_DEMOSIGNAL_EV_CHARGING
Generate a TIEPIE_HW_EV charging signal.
Definition libtiepie-hw.h:1862
@ TIEPIE_HW_DEMOSIGNAL_CANFD_250000
Generate a differential CANFD signal, 250 kbps.
Definition libtiepie-hw.h:1857
@ TIEPIE_HW_DEMOSIGNAL_SQUARE
Generate a square wave signal.
Definition libtiepie-hw.h:1843
@ TIEPIE_HW_DEMOSIGNAL_I2C_SCL
Generate an I2C SCL signal.
Definition libtiepie-hw.h:1846
@ TIEPIE_HW_DEMOSIGNAL_CAN_250000
Generate a differential CAN signal, 250 kbps.
Definition libtiepie-hw.h:1854
@ TIEPIE_HW_DEMOSIGNAL_DC
Generate a DC level.
Definition libtiepie-hw.h:1844
@ TIEPIE_HW_STATUS_INVALID_INPUT
The requested trigger input is invalid.
Definition libtiepie-hw.h:1761
@ TIEPIE_HW_STATUS_NO_TRIGGER_ENABLED
The current setup requires a trigger input to be enabled.
Definition libtiepie-hw.h:1769
@ TIEPIE_HW_STATUS_SUCCESS
The function executed successfully.
Definition libtiepie-hw.h:1744
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10005
Initialization error 10005.
Definition libtiepie-hw.h:1778
@ TIEPIE_HW_STATUS_INVALID_HS56_COMBINED_DEVICE
At least one Handyscope HS6 (DIFF) / WiFiScope WS6 (DIFF) must be located at the beginning or end of ...
Definition libtiepie-hw.h:1771
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10006
Initialization error 10006.
Definition libtiepie-hw.h:1779
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10004
Initialization error 10004.
Definition libtiepie-hw.h:1777
@ TIEPIE_HW_STATUS_INVALID_INDEX
The requested index is invalid.
Definition libtiepie-hw.h:1765
@ TIEPIE_HW_STATUS_INVALID_DEVICE_TYPE
The device type is invalid.
Definition libtiepie-hw.h:1751
@ TIEPIE_HW_STATUS_INVALID_CHANNEL
The requested channel number is invalid.
Definition libtiepie-hw.h:1749
@ TIEPIE_HW_STATUS_INVALID_VALUE
The requested value is invalid.
Definition libtiepie-hw.h:1748
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10003
Initialization error 10003.
Definition libtiepie-hw.h:1776
@ TIEPIE_HW_STATUS_INVALID_HANDLE
The handle to the device is invalid.
Definition libtiepie-hw.h:1747
@ TIEPIE_HW_STATUS_NOT_SUPPORTED
The requested functionality is not supported by the hardware.
Definition libtiepie-hw.h:1746
@ TIEPIE_HW_STATUS_MEASUREMENT_RUNNING
A measurement is already running.
Definition libtiepie-hw.h:1772
@ TIEPIE_HW_STATUS_SYNCHRONIZATION_FAILED
Synchronization of the instruments has failed.
Definition libtiepie-hw.h:1770
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10001
Initialization error 10001.
Definition libtiepie-hw.h:1774
@ TIEPIE_HW_STATUS_INITIALIZATION_FAILED
The instrument's initialization failed, please contact TiePie engineering support.
Definition libtiepie-hw.h:1767
@ TIEPIE_HW_STATUS_BIT_ERROR
The requested I2C operation generated a bit error.
Definition libtiepie-hw.h:1758
@ TIEPIE_HW_STATUS_INVALID_FIRMWARE
The currently used firmware is not supported.
Definition libtiepie-hw.h:1764
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10007
Initialization error 10007.
Definition libtiepie-hw.h:1780
@ TIEPIE_HW_STATUS_INVALID_DEVICE_SERIALNUMBER
There is no device with the requested serial number.
Definition libtiepie-hw.h:1754
@ TIEPIE_HW_STATUS_VALUE_CLIPPED
One of the parameters of the last called function was outside the valid range and clipped to the clos...
Definition libtiepie-hw.h:1743
@ TIEPIE_HW_STATUS_WIRELESSTRIGGERMODULENOTCONNECTED
Definition libtiepie-hw.h:1773
@ TIEPIE_HW_STATUS_INTERNAL_ADDRESS
The requested I2C address is an internally used address in the device.
Definition libtiepie-hw.h:1756
@ TIEPIE_HW_STATUS_NOT_AVAILABLE
With the current settings, the requested functionality is not available.
Definition libtiepie-hw.h:1763
@ TIEPIE_HW_STATUS_UNSUCCESSFUL
An error occurred during execution of the last called function.
Definition libtiepie-hw.h:1745
@ TIEPIE_HW_STATUS_LIBRARY_NOT_INITIALIZED
The library is not initialized, see tiepie_hw_init().
Definition libtiepie-hw.h:1768
@ TIEPIE_HW_STATUS_INVALID_DEVICE_INDEX
The device index is invalid, must be < tiepie_hw_devicelist_get_count().
Definition libtiepie-hw.h:1752
@ TIEPIE_HW_STATUS_NO_ACKNOWLEDGE
The requested I2C operation generated "No acknowledge".
Definition libtiepie-hw.h:1759
@ TIEPIE_HW_STATUS_INVALID_OUTPUT
The requested trigger output is invalid.
Definition libtiepie-hw.h:1762
@ TIEPIE_HW_STATUS_INVALID_CONTAINED_DEVICE_SERIALNUMBER
A device with the requested serial number is not available in the combined instrument,...
Definition libtiepie-hw.h:1760
@ TIEPIE_HW_STATUS_INVALID_PRODUCT_ID
There is no device with the requested product ID.
Definition libtiepie-hw.h:1753
@ TIEPIE_HW_STATUS_INVALID_TRIGGER_SOURCE
The requested trigger source is invalid.
Definition libtiepie-hw.h:1750
@ TIEPIE_HW_STATUS_NOT_CONTROLLABLE
The generator is currently not controllable, see tiepie_hw_generator_is_controllable.
Definition libtiepie-hw.h:1757
@ TIEPIE_HW_STATUS_OBJECT_GONE
The object indicated by the handle is no longer available.
Definition libtiepie-hw.h:1755
@ TIEPIE_HW_STATUS_VALUE_MODIFIED
One of the parameters of the last called function was within the valid range but not available....
Definition libtiepie-hw.h:1742
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10002
Initialization error 10002.
Definition libtiepie-hw.h:1775
@ TIEPIE_HW_STATUS_INVALID_EEPROM
The instrument's EEPROM content is damaged, please contact TiePie engineering support.
Definition libtiepie-hw.h:1766
@ TIEPIE_HW_PRODUCTID_HS4
Handyscope TIEPIE_HW_HS4.
Definition libtiepie-hw.h:1794
@ TIEPIE_HW_PRODUCTID_HS3
Handyscope TIEPIE_HW_HS3.
Definition libtiepie-hw.h:1793
@ TIEPIE_HW_PRODUCTID_WS5
WiFiScope TIEPIE_HW_WS5.
Definition libtiepie-hw.h:1804
@ TIEPIE_HW_PRODUCTID_WS4D
WiFiScope TIEPIE_HW_WS4D.
Definition libtiepie-hw.h:1808
@ TIEPIE_HW_PRODUCTID_HP3
Handyprobe TIEPIE_HW_HP3.
Definition libtiepie-hw.h:1795
@ TIEPIE_HW_PRODUCTID_TP450
TIEPIE_HW_TP450.
Definition libtiepie-hw.h:1796
@ TIEPIE_HW_PRODUCTID_HS6
Handyscope TIEPIE_HW_HS6.
Definition libtiepie-hw.h:1799
@ TIEPIE_HW_PRODUCTID_COMBI
Combined instrument.
Definition libtiepie-hw.h:1792
@ TIEPIE_HW_PRODUCTID_ATS5004DW
TIEPIE_HW_ATS5004DW.
Definition libtiepie-hw.h:1809
@ TIEPIE_HW_PRODUCTID_NONE
Unknown/invalid TIEPIE_HW_ID.
Definition libtiepie-hw.h:1791
@ TIEPIE_HW_PRODUCTID_HS5
Handyscope TIEPIE_HW_HS5.
Definition libtiepie-hw.h:1798
@ TIEPIE_HW_PRODUCTID_WS6
WiFiScope TIEPIE_HW_WS6.
Definition libtiepie-hw.h:1803
@ TIEPIE_HW_PRODUCTID_HS6D
Handyscope TIEPIE_HW_HS6 TIEPIE_HW_DIFF.
Definition libtiepie-hw.h:1800
@ TIEPIE_HW_PRODUCTID_WS6D
WiFiScope TIEPIE_HW_WS6D.
Definition libtiepie-hw.h:1805
@ TIEPIE_HW_PRODUCTID_HS4D
Handyscope TIEPIE_HW_HS4-TIEPIE_HW_DIFF.
Definition libtiepie-hw.h:1797
@ TIEPIE_HW_PRODUCTID_ATS605004D
TIEPIE_HW_ATS605004D.
Definition libtiepie-hw.h:1802
@ TIEPIE_HW_PRODUCTID_ATS605004DW
TIEPIE_HW_ATS605004DW.
Definition libtiepie-hw.h:1807
@ TIEPIE_HW_PRODUCTID_ATS610004DW
TIEPIE_HW_ATS610004DW.
Definition libtiepie-hw.h:1806
@ TIEPIE_HW_PRODUCTID_ATS5004D
TIEPIE_HW_ATS5004D.
Definition libtiepie-hw.h:1811
@ TIEPIE_HW_PRODUCTID_ATS610004D
TIEPIE_HW_ATS610004D.
Definition libtiepie-hw.h:1801
@ TIEPIE_HW_PRODUCTID_ATS5004
TIEPIE_HW_ATS5004.
Definition libtiepie-hw.h:1810
Definition libtiepie-hw.h:1869
uint8_t day
Definition libtiepie-hw.h:1872
uint16_t year
Definition libtiepie-hw.h:1870
uint8_t month
Definition libtiepie-hw.h:1871
Definition libtiepie-hw.h:1876
const char * name
Definition libtiepie-hw.h:1878
const char * name_short
Definition libtiepie-hw.h:1879
tiepie_hw_productid product_id
Definition libtiepie-hw.h:1877
Structure with library version info.
Definition libtiepie-hw.h:1957
uint16_t minor
Minor version number.
Definition libtiepie-hw.h:1959
uint16_t patch
Patch level.
Definition libtiepie-hw.h:1960
uint16_t major
Major version number.
Definition libtiepie-hw.h:1958
uint16_t build
Build number.
Definition libtiepie-hw.h:1961
const char * extra
Additional version text.
Definition libtiepie-hw.h:1962