libtiepie-hw 1.5.4
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 5
28#define TIEPIE_HW_VERSION_PATCH 4
29#define TIEPIE_HW_VERSION_NUMBER "1.5.4"
30#define TIEPIE_HW_VERSION "1.5.4"
31
778#define TIEPIE_HW_HANDLE_INVALID 0
779
787#define TIEPIE_HW_BOOL_FALSE 0
788#define TIEPIE_HW_BOOL_TRUE 1
789
796#define TIEPIE_HW_INTERFACE_DEVICE 0x0000000000000001
797#define TIEPIE_HW_INTERFACE_OSCILLOSCOPE 0x0000000000000002
798#define TIEPIE_HW_INTERFACE_GENERATOR 0x0000000000000004
799#define TIEPIE_HW_INTERFACE_SERVER 0x0000000000000010
800
801#define TIEPIE_HW_INTERFACE_COUNT 4
802
809#define TIEPIE_HW_DEVICETYPE_OSCILLOSCOPE 0x00000001
810#define TIEPIE_HW_DEVICETYPE_GENERATOR 0x00000002
811
812#define TIEPIE_HW_DEVICETYPE_COUNT 2
813
821#define TIEPIE_HW_CONNECTORTYPE_UNKNOWN 0x00000000
822
823#define TIEPIE_HW_CONNECTORTYPE_BNC 0x00000001
824#define TIEPIE_HW_CONNECTORTYPE_BANANA 0x00000002
825#define TIEPIE_HW_CONNECTORTYPE_POWERPLUG 0x00000004
826
827#define TIEPIE_HW_CONNECTORTYPE_COUNT 3
828
834#define TIEPIE_HW_CONNECTORTYPE_MASK (TIEPIE_HW_CONNECTORTYPE_BNC | TIEPIE_HW_CONNECTORTYPE_BANANA | TIEPIE_HW_CONNECTORTYPE_POWERPLUG)
835
844#define TIEPIE_HW_DATARAWTYPE_UNKNOWN 0x00000000
845
846#define TIEPIE_HW_DATARAWTYPE_INT8 0x00000001
847#define TIEPIE_HW_DATARAWTYPE_INT16 0x00000002
848#define TIEPIE_HW_DATARAWTYPE_INT32 0x00000004
849#define TIEPIE_HW_DATARAWTYPE_INT64 0x00000008
850
851#define TIEPIE_HW_DATARAWTYPE_UINT8 0x00000010
852#define TIEPIE_HW_DATARAWTYPE_UINT16 0x00000020
853#define TIEPIE_HW_DATARAWTYPE_UINT32 0x00000040
854#define TIEPIE_HW_DATARAWTYPE_UINT64 0x00000080
855
856#define TIEPIE_HW_DATARAWTYPE_FLOAT32 0x00000100
857#define TIEPIE_HW_DATARAWTYPE_FLOAT64 0x00000200
858
859#define TIEPIE_HW_DATARAWTYPE_COUNT 10
860
867#define TIEPIE_HW_DATARAWTYPE_MASK_INT (TIEPIE_HW_DATARAWTYPE_INT8 | TIEPIE_HW_DATARAWTYPE_INT16 | TIEPIE_HW_DATARAWTYPE_INT32 | TIEPIE_HW_DATARAWTYPE_INT64)
868#define TIEPIE_HW_DATARAWTYPE_MASK_UINT (TIEPIE_HW_DATARAWTYPE_UINT8 | TIEPIE_HW_DATARAWTYPE_UINT16 | TIEPIE_HW_DATARAWTYPE_UINT32 | TIEPIE_HW_DATARAWTYPE_UINT64)
869#define TIEPIE_HW_DATARAWTYPE_MASK_FLOAT (TIEPIE_HW_DATARAWTYPE_FLOAT32 | TIEPIE_HW_DATARAWTYPE_FLOAT64 )
870#define TIEPIE_HW_DATARAWTYPE_MASK_FIXED (TIEPIE_HW_DATARAWTYPE_MASK_INT | TIEPIE_HW_DATARAWTYPE_MASK_UINT)
871
879#define TIEPIE_HW_TRISTATE_UNDEFINED 0
880#define TIEPIE_HW_TRISTATE_FALSE 1
881#define TIEPIE_HW_TRISTATE_TRUE 2
882
889#define TIEPIE_HW_TRIGGERIO_INDEX_INVALID 0xffff
890
897#define TIEPIE_HW_STRING_LENGTH_NULL_TERMINATED 0xffffffff
898
906#define TIEPIE_HW_SERVER_STATUS_DISCONNECTED 0
907#define TIEPIE_HW_SERVER_STATUS_CONNECTING 1
908#define TIEPIE_HW_SERVER_STATUS_CONNECTED 2
909#define TIEPIE_HW_SERVER_STATUS_DISCONNECTING 3
910
918#define TIEPIE_HW_SERVER_ERROR_NONE 0
919#define TIEPIE_HW_SERVER_ERROR_UNKNOWN 1
920#define TIEPIE_HW_SERVER_ERROR_CONNECTIONREFUSED 2
921#define TIEPIE_HW_SERVER_ERROR_NETWORKUNREACHABLE 3
922#define TIEPIE_HW_SERVER_ERROR_TIMEDOUT 4
923#define TIEPIE_HW_SERVER_ERROR_HOSTNAMELOOKUPFAILED 5
924
930
936#define TIEPIE_HW_RANGEINDEX_AUTO 0xffffffff
937
943
949#define TIEPIE_HW_POINTER_ARRAY_MAX_LENGTH 256
950
964#define TIEPIE_HW_ARMN_COUNT 3
965
972#define TIEPIE_HW_ARMB_DISABLED 0
973#define TIEPIE_HW_ARMB_NATIVEONLY 1
974#define TIEPIE_HW_ARMB_ALL 2
975
980#define TIEPIE_HW_ARM_UNKNOWN 0
981
982#define TIEPIE_HW_ARM_DISABLED (1 << TIEPIE_HW_ARMB_DISABLED)
983#define TIEPIE_HW_ARM_NATIVEONLY (1 << TIEPIE_HW_ARMB_NATIVEONLY)
984#define TIEPIE_HW_ARM_ALL (1 << TIEPIE_HW_ARMB_ALL)
985
992#define TIEPIE_HW_ARMM_NONE 0
993#define TIEPIE_HW_ARMM_ALL ((1 << TIEPIE_HW_ARMN_COUNT) - 1)
994#define TIEPIE_HW_ARMM_ENABLED (TIEPIE_HW_ARMM_ALL & ~TIEPIE_HW_ARM_DISABLED)
995
1009#define TIEPIE_HW_CKN_COUNT 5
1010
1017#define TIEPIE_HW_CKB_DCV 0
1018#define TIEPIE_HW_CKB_ACV 1
1019#define TIEPIE_HW_CKB_DCA 2
1020#define TIEPIE_HW_CKB_ACA 3
1021#define TIEPIE_HW_CKB_OHM 4
1022
1027#define TIEPIE_HW_CK_UNKNOWN 0
1028
1029#define TIEPIE_HW_CK_DCV (1 << TIEPIE_HW_CKB_DCV)
1030#define TIEPIE_HW_CK_ACV (1 << TIEPIE_HW_CKB_ACV)
1031#define TIEPIE_HW_CK_DCA (1 << TIEPIE_HW_CKB_DCA)
1032#define TIEPIE_HW_CK_ACA (1 << TIEPIE_HW_CKB_ACA)
1033#define TIEPIE_HW_CK_OHM (1 << TIEPIE_HW_CKB_OHM)
1034
1041#define TIEPIE_HW_CKM_NONE 0
1042#define TIEPIE_HW_CKM_V (TIEPIE_HW_CK_DCV | TIEPIE_HW_CK_ACV)
1043#define TIEPIE_HW_CKM_A (TIEPIE_HW_CK_DCA | TIEPIE_HW_CK_ACA)
1044#define TIEPIE_HW_CKM_OHM (TIEPIE_HW_CK_OHM)
1045
1046#define TIEPIE_HW_CKM_ASYMMETRICRANGE (TIEPIE_HW_CKM_OHM)
1047#define TIEPIE_HW_CKM_SYMMETRICRANGE (TIEPIE_HW_CKM_V | TIEPIE_HW_CKM_A)
1048
1049#define TIEPIE_HW_CKM_DC (TIEPIE_HW_CK_DCV | TIEPIE_HW_CK_DCA | TIEPIE_HW_CK_OHM)
1050#define TIEPIE_HW_CKM_AC (TIEPIE_HW_CK_ACV | TIEPIE_HW_CK_ACA)
1051
1065#define TIEPIE_HW_CON_COUNT 3
1066
1073#define TIEPIE_HW_COB_DISABLED 0
1074#define TIEPIE_HW_COB_SAMPLE 1
1075#define TIEPIE_HW_COB_FIXED 2
1076
1081#define TIEPIE_HW_CO_DISABLED (1 << TIEPIE_HW_COB_DISABLED)
1082#define TIEPIE_HW_CO_SAMPLE (1 << TIEPIE_HW_COB_SAMPLE)
1083#define TIEPIE_HW_CO_FIXED (1 << TIEPIE_HW_COB_FIXED)
1084
1091#define TIEPIE_HW_COM_NONE 0
1092#define TIEPIE_HW_COM_ALL ((1 << TIEPIE_HW_CON_COUNT) - 1)
1093#define TIEPIE_HW_COM_ENABLED (TIEPIE_HW_COM_ALL & ~TIEPIE_HW_CO_DISABLED)
1094#define TIEPIE_HW_COM_FREQUENCY (TIEPIE_HW_CO_FIXED)
1095
1109#define TIEPIE_HW_CSN_COUNT 2
1110
1117#define TIEPIE_HW_CSB_EXTERNAL 0
1118#define TIEPIE_HW_CSB_INTERNAL 1
1119
1124#define TIEPIE_HW_CS_EXTERNAL (1 << TIEPIE_HW_CSB_EXTERNAL)
1125#define TIEPIE_HW_CS_INTERNAL (1 << TIEPIE_HW_CSB_INTERNAL)
1126
1133#define TIEPIE_HW_CSM_NONE 0
1134#define TIEPIE_HW_CSM_ALL ((1 << TIEPIE_HW_CSN_COUNT) - 1)
1135#define TIEPIE_HW_CSM_FREQUENCY (TIEPIE_HW_CS_EXTERNAL)
1136
1150#define TIEPIE_HW_FMN_COUNT 2
1151
1157#define TIEPIE_HW_FMB_SIGNALFREQUENCY 0
1158#define TIEPIE_HW_FMB_SAMPLERATE 1
1159
1164#define TIEPIE_HW_FM_UNKNOWN 0x00000000
1165
1166#define TIEPIE_HW_FM_SIGNALFREQUENCY (1 << TIEPIE_HW_FMB_SIGNALFREQUENCY)
1167#define TIEPIE_HW_FM_SAMPLERATE (1 << TIEPIE_HW_FMB_SAMPLERATE)
1168
1174#define TIEPIE_HW_FMM_NONE 0x00000000
1175#define TIEPIE_HW_FMM_ALL ((1 << TIEPIE_HW_FMN_COUNT) - 1)
1176
1190#define TIEPIE_HW_GMN_COUNT 12
1191
1198#define TIEPIE_HW_GMB_CONTINUOUS 0
1199#define TIEPIE_HW_GMB_BURST_COUNT 1
1200#define TIEPIE_HW_GMB_GATED_PERIODS 2
1201#define TIEPIE_HW_GMB_GATED 3
1202#define TIEPIE_HW_GMB_GATED_PERIOD_START 4
1203#define TIEPIE_HW_GMB_GATED_PERIOD_FINISH 5
1204#define TIEPIE_HW_GMB_GATED_RUN 6
1205#define TIEPIE_HW_GMB_GATED_RUN_OUTPUT 7
1206#define TIEPIE_HW_GMB_BURST_SAMPLE_COUNT 8
1207#define TIEPIE_HW_GMB_BURST_SAMPLE_COUNT_OUTPUT 9
1208#define TIEPIE_HW_GMB_BURST_SEGMENT_COUNT 10
1209#define TIEPIE_HW_GMB_BURST_SEGMENT_COUNT_OUTPUT 11
1210
1215#define TIEPIE_HW_GM_UNKNOWN 0
1216
1217#define TIEPIE_HW_GM_CONTINUOUS (1 << TIEPIE_HW_GMB_CONTINUOUS)
1218#define TIEPIE_HW_GM_BURST_COUNT (1 << TIEPIE_HW_GMB_BURST_COUNT)
1219#define TIEPIE_HW_GM_GATED_PERIODS (1 << TIEPIE_HW_GMB_GATED_PERIODS)
1220#define TIEPIE_HW_GM_GATED (1 << TIEPIE_HW_GMB_GATED)
1221#define TIEPIE_HW_GM_GATED_PERIOD_START (1 << TIEPIE_HW_GMB_GATED_PERIOD_START)
1222#define TIEPIE_HW_GM_GATED_PERIOD_FINISH (1 << TIEPIE_HW_GMB_GATED_PERIOD_FINISH)
1223#define TIEPIE_HW_GM_GATED_RUN (1 << TIEPIE_HW_GMB_GATED_RUN)
1224#define TIEPIE_HW_GM_GATED_RUN_OUTPUT (1 << TIEPIE_HW_GMB_GATED_RUN_OUTPUT)
1225#define TIEPIE_HW_GM_BURST_SAMPLE_COUNT (1 << TIEPIE_HW_GMB_BURST_SAMPLE_COUNT)
1226#define TIEPIE_HW_GM_BURST_SAMPLE_COUNT_OUTPUT (1 << TIEPIE_HW_GMB_BURST_SAMPLE_COUNT_OUTPUT)
1227#define TIEPIE_HW_GM_BURST_SEGMENT_COUNT (1 << TIEPIE_HW_GMB_BURST_SEGMENT_COUNT)
1228#define TIEPIE_HW_GM_BURST_SEGMENT_COUNT_OUTPUT (1 << TIEPIE_HW_GMB_BURST_SEGMENT_COUNT_OUTPUT)
1229
1236#define TIEPIE_HW_GMM_NONE 0
1237#define TIEPIE_HW_GMM_BURST_COUNT (TIEPIE_HW_GM_BURST_COUNT)
1238#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)
1239#define TIEPIE_HW_GMM_BURST_SAMPLE_COUNT (TIEPIE_HW_GM_BURST_SAMPLE_COUNT | TIEPIE_HW_GM_BURST_SAMPLE_COUNT_OUTPUT)
1240#define TIEPIE_HW_GMM_BURST_SEGMENT_COUNT (TIEPIE_HW_GM_BURST_SEGMENT_COUNT | TIEPIE_HW_GM_BURST_SEGMENT_COUNT_OUTPUT)
1241#define TIEPIE_HW_GMM_BURST (TIEPIE_HW_GMM_BURST_COUNT | TIEPIE_HW_GMM_BURST_SAMPLE_COUNT | TIEPIE_HW_GMM_BURST_SEGMENT_COUNT)
1242#define TIEPIE_HW_GMM_REQUIRE_TRIGGER (TIEPIE_HW_GMM_GATED | TIEPIE_HW_GMM_BURST_SAMPLE_COUNT | TIEPIE_HW_GMM_BURST_SEGMENT_COUNT)
1243#define TIEPIE_HW_GMM_ALL ((1ULL << TIEPIE_HW_GMN_COUNT) - 1)
1244
1245#define TIEPIE_HW_GMM_SIGNALFREQUENCY (TIEPIE_HW_GMM_ALL & ~TIEPIE_HW_GMM_BURST_SAMPLE_COUNT)
1246#define TIEPIE_HW_GMM_SAMPLERATE (TIEPIE_HW_GMM_ALL)
1247
1248#define TIEPIE_HW_GMM_SINE (TIEPIE_HW_GMM_SIGNALFREQUENCY)
1249#define TIEPIE_HW_GMM_TRIANGLE (TIEPIE_HW_GMM_SIGNALFREQUENCY)
1250#define TIEPIE_HW_GMM_SQUARE (TIEPIE_HW_GMM_SIGNALFREQUENCY)
1251#define TIEPIE_HW_GMM_DC (TIEPIE_HW_GM_CONTINUOUS)
1252#define TIEPIE_HW_GMM_NOISE (TIEPIE_HW_GM_CONTINUOUS | TIEPIE_HW_GM_GATED)
1253#define TIEPIE_HW_GMM_ARBITRARY (TIEPIE_HW_GMM_SIGNALFREQUENCY | TIEPIE_HW_GMM_SAMPLERATE)
1254#define TIEPIE_HW_GMM_PULSE (TIEPIE_HW_GMM_SIGNALFREQUENCY & ~TIEPIE_HW_GMM_BURST_SEGMENT_COUNT)
1255
1269#define TIEPIE_HW_GSN_COUNT 4
1270
1277#define TIEPIE_HW_GSB_STOPPED 0
1278#define TIEPIE_HW_GSB_RUNNING 1
1279#define TIEPIE_HW_GSB_BURSTACTIVE 2
1280#define TIEPIE_HW_GSB_WAITING 3
1281
1286#define TIEPIE_HW_GS_STOPPED (1 << TIEPIE_HW_GSB_STOPPED)
1287#define TIEPIE_HW_GS_RUNNING (1 << TIEPIE_HW_GSB_RUNNING)
1288#define TIEPIE_HW_GS_BURSTACTIVE (1 << TIEPIE_HW_GSB_BURSTACTIVE)
1289#define TIEPIE_HW_GS_WAITING (1 << TIEPIE_HW_GSB_WAITING)
1290
1297#define TIEPIE_HW_GSM_NONE 0
1298#define TIEPIE_HW_GSM_ALL ((1UL << TIEPIE_HW_GSN_COUNT) - 1)
1299
1313#define TIEPIE_HW_MMN_COUNT 2
1314
1321#define TIEPIE_HW_MMB_STREAM 0
1322#define TIEPIE_HW_MMB_BLOCK 1
1323
1331#define TIEPIE_HW_MMM_NONE 0
1332#define TIEPIE_HW_MMM_ALL ((1 << TIEPIE_HW_MMN_COUNT) - 1)
1333
1338#define TIEPIE_HW_MM_UNKNOWN 0
1339
1340#define TIEPIE_HW_MM_STREAM (1 << TIEPIE_HW_MMB_STREAM)
1341#define TIEPIE_HW_MM_BLOCK (1 << TIEPIE_HW_MMB_BLOCK )
1342
1355#define TIEPIE_HW_STN_COUNT 7
1356
1363#define TIEPIE_HW_STB_SINE 0
1364#define TIEPIE_HW_STB_TRIANGLE 1
1365#define TIEPIE_HW_STB_SQUARE 2
1366#define TIEPIE_HW_STB_DC 3
1367#define TIEPIE_HW_STB_NOISE 4
1368#define TIEPIE_HW_STB_ARBITRARY 5
1369#define TIEPIE_HW_STB_PULSE 6
1370
1375#define TIEPIE_HW_ST_UNKNOWN 0
1376
1377#define TIEPIE_HW_ST_SINE (1 << TIEPIE_HW_STB_SINE)
1378#define TIEPIE_HW_ST_TRIANGLE (1 << TIEPIE_HW_STB_TRIANGLE)
1379#define TIEPIE_HW_ST_SQUARE (1 << TIEPIE_HW_STB_SQUARE)
1380#define TIEPIE_HW_ST_DC (1 << TIEPIE_HW_STB_DC)
1381#define TIEPIE_HW_ST_NOISE (1 << TIEPIE_HW_STB_NOISE)
1382#define TIEPIE_HW_ST_ARBITRARY (1 << TIEPIE_HW_STB_ARBITRARY)
1383#define TIEPIE_HW_ST_PULSE (1 << TIEPIE_HW_STB_PULSE)
1384
1391#define TIEPIE_HW_STM_NONE 0
1392
1393#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)
1394#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)
1395#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)
1396#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)
1397#define TIEPIE_HW_STM_SYMMETRY (TIEPIE_HW_ST_SINE | TIEPIE_HW_ST_TRIANGLE | TIEPIE_HW_ST_SQUARE )
1398#define TIEPIE_HW_STM_WIDTH ( TIEPIE_HW_ST_PULSE)
1399#define TIEPIE_HW_STM_LEADINGEDGETIME ( TIEPIE_HW_ST_PULSE)
1400#define TIEPIE_HW_STM_TRAILINGEDGETIME ( TIEPIE_HW_ST_PULSE)
1401#define TIEPIE_HW_STM_DATALENGTH ( TIEPIE_HW_ST_ARBITRARY )
1402#define TIEPIE_HW_STM_DATA ( TIEPIE_HW_ST_ARBITRARY )
1403
1404#define TIEPIE_HW_STM_EDGETIME (TIEPIE_HW_STM_LEADINGEDGETIME & TIEPIE_HW_STM_TRAILINGEDGETIME)
1405
1419#define TIEPIE_HW_TCN_COUNT 5
1420
1427#define TIEPIE_HW_TCB_NONE 0
1428#define TIEPIE_HW_TCB_SMALLER 1
1429#define TIEPIE_HW_TCB_LARGER 2
1430#define TIEPIE_HW_TCB_INSIDE 3
1431#define TIEPIE_HW_TCB_OUTSIDE 4
1432
1437#define TIEPIE_HW_TC_UNKNOWN 0
1438
1439#define TIEPIE_HW_TC_NONE (1 << TIEPIE_HW_TCB_NONE)
1440#define TIEPIE_HW_TC_SMALLER (1 << TIEPIE_HW_TCB_SMALLER)
1441#define TIEPIE_HW_TC_LARGER (1 << TIEPIE_HW_TCB_LARGER)
1442#define TIEPIE_HW_TC_INSIDE (1 << TIEPIE_HW_TCB_INSIDE)
1443#define TIEPIE_HW_TC_OUTSIDE (1 << TIEPIE_HW_TCB_OUTSIDE)
1444
1451#define TIEPIE_HW_TCM_NONE 0
1452#define TIEPIE_HW_TCM_ALL ((1 << TIEPIE_HW_TCN_COUNT) - 1)
1453#define TIEPIE_HW_TCM_ENABLED (TIEPIE_HW_TCM_ALL & ~TIEPIE_HW_TC_NONE)
1454
1466#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))
1467
1468#define TIEPIE_HW_COMBI_TRIGGER_IO_ID(dn, tiid) (((dn) << TIEPIE_HW_TIOID_SHIFT_DN) | ((tiid) & ((1 << TIEPIE_HW_TIOID_SHIFT_DN) - 1)))
1469
1483#define TIEPIE_HW_DN_MAIN 0
1484#define TIEPIE_HW_DN_SUB_FIRST 1
1485#define TIEPIE_HW_DN_SUB_SECOND 2
1486
1494#define TIEPIE_HW_PGID_OSCILLOSCOPE 1
1495#define TIEPIE_HW_PGID_GENERATOR 2
1496#define TIEPIE_HW_PGID_EXTERNAL_DSUB 3
1497
1506#define TIEPIE_HW_SGID_MAIN 0
1507#define TIEPIE_HW_SGID_CHANNEL1 1
1508#define TIEPIE_HW_SGID_CHANNEL2 2
1509
1516#define TIEPIE_HW_SGID_PIN1 1
1517#define TIEPIE_HW_SGID_PIN2 2
1518#define TIEPIE_HW_SGID_PIN3 3
1519
1530#define TIEPIE_HW_FID_SCP_TRIGGERED 0
1531
1538#define TIEPIE_HW_FID_GEN_START 0
1539#define TIEPIE_HW_FID_GEN_STOP 1
1540#define TIEPIE_HW_FID_GEN_NEW_PERIOD 2
1541
1542
1549#define TIEPIE_HW_FID_EXT_TRIGGERED 0
1550
1559#define TIEPIE_HW_TIOID_SHIFT_PGID 20
1560#define TIEPIE_HW_TIOID_SHIFT_DN 24
1561#define TIEPIE_HW_TIOID_SHIFT_SGID 8
1562#define TIEPIE_HW_TIOID_SHIFT_FID 0
1563
1571#define TIEPIE_HW_TIID_INVALID 0
1572#define TIEPIE_HW_TIID_EXT1 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN1, TIEPIE_HW_FID_EXT_TRIGGERED )
1573#define TIEPIE_HW_TIID_EXT2 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN2, TIEPIE_HW_FID_EXT_TRIGGERED )
1574#define TIEPIE_HW_TIID_EXT3 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN3, TIEPIE_HW_FID_EXT_TRIGGERED )
1575#define TIEPIE_HW_TIID_GENERATOR_START TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_GENERATOR , TIEPIE_HW_SGID_MAIN, TIEPIE_HW_FID_GEN_START )
1576#define TIEPIE_HW_TIID_GENERATOR_STOP TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_GENERATOR , TIEPIE_HW_SGID_MAIN, TIEPIE_HW_FID_GEN_STOP )
1577#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)
1578
1586#define TIEPIE_HW_TOID_INVALID 0
1587#define TIEPIE_HW_TOID_EXT1 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN1, TIEPIE_HW_FID_EXT_TRIGGERED)
1588#define TIEPIE_HW_TOID_EXT2 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN2, TIEPIE_HW_FID_EXT_TRIGGERED)
1589#define TIEPIE_HW_TOID_EXT3 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN3, TIEPIE_HW_FID_EXT_TRIGGERED)
1590
1604#define TIEPIE_HW_TKN_COUNT 15
1605
1612#define TIEPIE_HW_TKB_RISINGEDGE 0
1613#define TIEPIE_HW_TKB_FALLINGEDGE 1
1614#define TIEPIE_HW_TKB_INWINDOW 2
1615#define TIEPIE_HW_TKB_OUTWINDOW 3
1616#define TIEPIE_HW_TKB_ANYEDGE 4
1617#define TIEPIE_HW_TKB_ENTERWINDOW 5
1618#define TIEPIE_HW_TKB_EXITWINDOW 6
1619#define TIEPIE_HW_TKB_PULSEWIDTHPOSITIVE 7
1620#define TIEPIE_HW_TKB_PULSEWIDTHNEGATIVE 8
1621#define TIEPIE_HW_TKB_PULSEWIDTHEITHER 9
1622#define TIEPIE_HW_TKB_RUNTPULSEPOSITIVE 10
1623#define TIEPIE_HW_TKB_RUNTPULSENEGATIVE 11
1624#define TIEPIE_HW_TKB_RUNTPULSEEITHER 12
1625#define TIEPIE_HW_TKB_INTERVALRISING 13
1626#define TIEPIE_HW_TKB_INTERVALFALLING 14
1627
1632#define TIEPIE_HW_TK_UNKNOWN 0
1633#define TIEPIE_HW_TK_RISINGEDGE (1ULL << TIEPIE_HW_TKB_RISINGEDGE)
1634#define TIEPIE_HW_TK_FALLINGEDGE (1ULL << TIEPIE_HW_TKB_FALLINGEDGE)
1635#define TIEPIE_HW_TK_INWINDOW (1ULL << TIEPIE_HW_TKB_INWINDOW)
1636#define TIEPIE_HW_TK_OUTWINDOW (1ULL << TIEPIE_HW_TKB_OUTWINDOW)
1637#define TIEPIE_HW_TK_ANYEDGE (1ULL << TIEPIE_HW_TKB_ANYEDGE)
1638#define TIEPIE_HW_TK_ENTERWINDOW (1ULL << TIEPIE_HW_TKB_ENTERWINDOW)
1639#define TIEPIE_HW_TK_EXITWINDOW (1ULL << TIEPIE_HW_TKB_EXITWINDOW)
1640#define TIEPIE_HW_TK_PULSEWIDTHPOSITIVE (1ULL << TIEPIE_HW_TKB_PULSEWIDTHPOSITIVE)
1641#define TIEPIE_HW_TK_PULSEWIDTHNEGATIVE (1ULL << TIEPIE_HW_TKB_PULSEWIDTHNEGATIVE)
1642#define TIEPIE_HW_TK_PULSEWIDTHEITHER (1ULL << TIEPIE_HW_TKB_PULSEWIDTHEITHER)
1643#define TIEPIE_HW_TK_RUNTPULSEPOSITIVE (1ULL << TIEPIE_HW_TKB_RUNTPULSEPOSITIVE)
1644#define TIEPIE_HW_TK_RUNTPULSENEGATIVE (1ULL << TIEPIE_HW_TKB_RUNTPULSENEGATIVE)
1645#define TIEPIE_HW_TK_RUNTPULSEEITHER (1ULL << TIEPIE_HW_TKB_RUNTPULSEEITHER)
1646#define TIEPIE_HW_TK_INTERVALRISING (1ULL << TIEPIE_HW_TKB_INTERVALRISING)
1647#define TIEPIE_HW_TK_INTERVALFALLING (1ULL << TIEPIE_HW_TKB_INTERVALFALLING)
1648
1655#define TIEPIE_HW_TKM_NONE 0
1656#define TIEPIE_HW_TKM_EDGE (TIEPIE_HW_TK_RISINGEDGE | TIEPIE_HW_TK_FALLINGEDGE | TIEPIE_HW_TK_ANYEDGE)
1657#define TIEPIE_HW_TKM_WINDOW (TIEPIE_HW_TK_INWINDOW | TIEPIE_HW_TK_OUTWINDOW | TIEPIE_HW_TK_ENTERWINDOW | TIEPIE_HW_TK_EXITWINDOW)
1658#define TIEPIE_HW_TKM_PULSEWIDTH (TIEPIE_HW_TK_PULSEWIDTHPOSITIVE | TIEPIE_HW_TK_PULSEWIDTHNEGATIVE | TIEPIE_HW_TK_PULSEWIDTHEITHER)
1659#define TIEPIE_HW_TKM_RUNTPULSE (TIEPIE_HW_TK_RUNTPULSEPOSITIVE | TIEPIE_HW_TK_RUNTPULSENEGATIVE | TIEPIE_HW_TK_RUNTPULSEEITHER)
1660#define TIEPIE_HW_TKM_PULSE (TIEPIE_HW_TKM_PULSEWIDTH | TIEPIE_HW_TKM_RUNTPULSE)
1661#define TIEPIE_HW_TKM_INTERVAL (TIEPIE_HW_TK_INTERVALRISING | TIEPIE_HW_TK_INTERVALFALLING)
1662#define TIEPIE_HW_TKM_TIME (TIEPIE_HW_TKM_PULSEWIDTH | TIEPIE_HW_TKM_WINDOW | TIEPIE_HW_TKM_RUNTPULSE | TIEPIE_HW_TKM_INTERVAL)
1663#define TIEPIE_HW_TKM_ALL ((1ULL << TIEPIE_HW_TKN_COUNT) - 1)
1664
1678#define TIEPIE_HW_TLMN_COUNT 2
1679
1686#define TIEPIE_HW_TLMB_RELATIVE 0
1687#define TIEPIE_HW_TLMB_ABSOLUTE 1
1688
1693#define TIEPIE_HW_TLM_UNKNOWN 0
1694
1695#define TIEPIE_HW_TLM_RELATIVE (1 << TIEPIE_HW_TLMB_RELATIVE)
1696#define TIEPIE_HW_TLM_ABSOLUTE (1 << TIEPIE_HW_TLMB_ABSOLUTE)
1697
1704#define TIEPIE_HW_TLMM_NONE 0
1705#define TIEPIE_HW_TLMM_ALL ((1 << TIEPIE_HW_TLMN_COUNT) - 1)
1706
1720#define TIEPIE_HW_TO_INFINITY (-1.0)
1721
1734#define TIEPIE_HW_TOEN_COUNT 6
1735
1742#define TIEPIE_HW_TOEB_GENERATOR_START 0
1743#define TIEPIE_HW_TOEB_GENERATOR_STOP 1
1744#define TIEPIE_HW_TOEB_GENERATOR_NEWPERIOD 2
1745#define TIEPIE_HW_TOEB_OSCILLOSCOPE_RUNNING 3
1746#define TIEPIE_HW_TOEB_OSCILLOSCOPE_TRIGGERED 4
1747#define TIEPIE_HW_TOEB_MANUAL 5
1748
1753#define TIEPIE_HW_TOE_UNKNOWN 0
1754#define TIEPIE_HW_TOE_GENERATOR_START (1 << TIEPIE_HW_TOEB_GENERATOR_START)
1755#define TIEPIE_HW_TOE_GENERATOR_STOP (1 << TIEPIE_HW_TOEB_GENERATOR_STOP)
1756#define TIEPIE_HW_TOE_GENERATOR_NEWPERIOD (1 << TIEPIE_HW_TOEB_GENERATOR_NEWPERIOD)
1757#define TIEPIE_HW_TOE_OSCILLOSCOPE_RUNNING (1 << TIEPIE_HW_TOEB_OSCILLOSCOPE_RUNNING)
1758#define TIEPIE_HW_TOE_OSCILLOSCOPE_TRIGGERED (1 << TIEPIE_HW_TOEB_OSCILLOSCOPE_TRIGGERED)
1759#define TIEPIE_HW_TOE_MANUAL (1 << TIEPIE_HW_TOEB_MANUAL)
1760
1767#define TIEPIE_HW_TOEM_NONE 0
1768#define TIEPIE_HW_TOEM_GENERATOR (TIEPIE_HW_TOE_GENERATOR_START | TIEPIE_HW_TOE_GENERATOR_STOP | TIEPIE_HW_TOE_GENERATOR_NEWPERIOD)
1769#define TIEPIE_HW_TOEM_OSCILLOSCOPE (TIEPIE_HW_TOE_OSCILLOSCOPE_RUNNING | TIEPIE_HW_TOE_OSCILLOSCOPE_TRIGGERED)
1770#define TIEPIE_HW_TOEM_ALL ((1ULL << TIEPIE_HW_TOEN_COUNT) - 1)
1771
1794{
1836
1837typedef uint32_t tiepie_hw_handle;
1838typedef uint8_t tiepie_hw_bool;
1839
1867
1888
1918
1919typedef uint8_t tiepie_hw_tristate;
1921
1928typedef struct tiepie_hw_date
1929{
1930 uint16_t year;
1931 uint8_t month;
1932 uint8_t day;
1934
1947
1948#ifdef INCLUDED_BY_MATLAB
1949 typedef void* tiepie_hw_devicelist_callback;
1950 typedef void* tiepie_hw_handle_callback;
1951 typedef void* tiepie_hw_event_callback;
1952#else
1962 typedef void(*tiepie_hw_devicelist_callback)(void* data, uint32_t device_types, uint32_t serial_number);
1963
1972 typedef void(*tiepie_hw_handle_callback)(void* data, tiepie_hw_handle handle);
1973
1983 typedef void(*tiepie_hw_event_callback)(void* data, tiepie_hw_event event, uint32_t value);
1984#endif
1985
2020TIEPIE_HW_API void tiepie_hw_init(void);
2021
2033
2045TIEPIE_HW_API void tiepie_hw_fini(void);
2046
2050typedef struct tiepie_hw_version
2051{
2052 uint16_t major;
2053 uint16_t minor;
2054 uint16_t patch;
2055 uint16_t build;
2056 const char* extra;
2058
2072TIEPIE_HW_API const tiepie_hw_version* tiepie_hw_get_version(void);
2073
2098TIEPIE_HW_API uint32_t tiepie_hw_get_config(uint8_t* buffer, uint32_t length);
2099
2112
2130TIEPIE_HW_API const char* tiepie_hw_get_last_status_str(void);
2131
2232// Workaround: Without this line Doxygen adds the documentation below to the group above.
2233
2252TIEPIE_HW_API void tiepie_hw_devicelist_update(void);
2253
2267
2290
2302TIEPIE_HW_API uint32_t tiepie_hw_devicelist_get_count(void);
2303
2319
2335
2351
2386
2424
2462
2476
2484
2507TIEPIE_HW_API uint32_t tiepie_hw_devicelist_create_combined_device(const tiepie_hw_handle* handles, uint32_t count);
2508
2533
2549TIEPIE_HW_API void tiepie_hw_devicelist_remove_device(uint32_t serial_number, tiepie_hw_bool force);
2550
2562
2572// Workaround: Without this line Doxygen adds the documentation below to the group above.
2573
2588
2607TIEPIE_HW_API tiepie_hw_bool tiepie_hw_devicelistitem_can_open(tiepie_hw_handle handle, uint32_t device_type);
2608
2627TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_opened_by(tiepie_hw_handle handle, uint32_t device_type, char* buffer, uint32_t length);
2628
2644
2677TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_name(tiepie_hw_handle handle, char* buffer, uint32_t length);
2678
2711TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_name_short(tiepie_hw_handle handle, char* buffer, uint32_t length);
2712
2745TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_name_shortest(tiepie_hw_handle handle, char* buffer, uint32_t length);
2746
2768
2787
2804TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_ip_address(tiepie_hw_handle handle, char* buffer, uint32_t length);
2805
2821
2830
2839
2870
2878// Workaround: Without this line Doxygen adds the documentation below to the group above.
2879
2911TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_contained_serial_numbers(tiepie_hw_handle handle, uint32_t* buffer, uint32_t length);
2912
2929TIEPIE_HW_API tiepie_hw_productid tiepie_hw_devicelistitemcombined_get_product_id(tiepie_hw_handle handle, uint32_t contained_device_serial_number);
2930
2951TIEPIE_HW_API uint32_t tiepie_hw_devicelistitemcombined_get_name(tiepie_hw_handle handle, uint32_t contained_device_serial_number, char* buffer, uint32_t length);
2952
2973TIEPIE_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);
2974
2995TIEPIE_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);
2996
3013TIEPIE_HW_API tiepie_hw_date tiepie_hw_devicelistitemcombined_get_calibration_date(tiepie_hw_handle handle, uint32_t contained_device_serial_number);
3014
3031TIEPIE_HW_API uint16_t tiepie_hw_devicelistitemcombined_get_oscilloscope_channel_count(tiepie_hw_handle handle, uint32_t contained_device_serial_number);
3032
3041// Workaround: Without this line Doxygen adds the documentation below to the group above.
3042
3056
3070
3084
3093// Workaround: Without this line Doxygen adds the documentation below to the group above.
3094
3103
3113
3120// Workaround: Without this line Doxygen adds the documentation below to the group above.
3121
3131TIEPIE_HW_API tiepie_hw_bool tiepie_hw_network_servers_add(const char* url, uint32_t length, tiepie_hw_handle* handle);
3132
3142TIEPIE_HW_API tiepie_hw_bool tiepie_hw_network_servers_remove(const char* url, uint32_t length, tiepie_hw_bool force);
3143
3150TIEPIE_HW_API uint32_t tiepie_hw_network_servers_get_count(void);
3151
3160
3169TIEPIE_HW_API tiepie_hw_handle tiepie_hw_network_servers_get_by_url(const char* url, uint32_t length);
3170
3177// Workaround: Without this line Doxygen adds the documentation below to the group above.
3178
3192
3214// Workaround: Without this line Doxygen adds the documentation below to the group above.
3215
3236TIEPIE_HW_API void tiepie_hw_object_close(tiepie_hw_handle handle);
3237
3252
3267
3275// Workaround: Without this line Doxygen adds the documentation below to the group above.
3276
3286
3297// Workaround: Without this line Doxygen adds the documentation below to the group above.
3298
3305// Workaround: Without this line Doxygen adds the documentation below to the group above.
3306
3330
3347
3364TIEPIE_HW_API uint32_t tiepie_hw_device_get_ip_address(tiepie_hw_handle handle, char* buffer, uint32_t length);
3365
3380TIEPIE_HW_API uint16_t tiepie_hw_device_get_ip_port(tiepie_hw_handle handle);
3381
3398
3414TIEPIE_HW_API uint32_t tiepie_hw_device_get_type(tiepie_hw_handle handle);
3415
3449TIEPIE_HW_API uint32_t tiepie_hw_device_get_name(tiepie_hw_handle handle, char* buffer, uint32_t length);
3450
3484TIEPIE_HW_API uint32_t tiepie_hw_device_get_name_short(tiepie_hw_handle handle, char* buffer, uint32_t length);
3485
3519TIEPIE_HW_API uint32_t tiepie_hw_device_get_name_shortest(tiepie_hw_handle handle, char* buffer, uint32_t length);
3520
3536
3559
3577TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_has_battery_ex(tiepie_hw_handle handle, uint32_t serial_number);
3578
3597
3617TIEPIE_HW_API int8_t tiepie_hw_device_get_battery_charge_ex(tiepie_hw_handle handle, uint32_t serial_number);
3618
3638
3659TIEPIE_HW_API int32_t tiepie_hw_device_get_battery_time_to_empty_ex(tiepie_hw_handle handle, uint32_t serial_number);
3660
3680
3701TIEPIE_HW_API int32_t tiepie_hw_device_get_battery_time_to_full_ex(tiepie_hw_handle handle, uint32_t serial_number);
3702
3721
3742
3763
3786
3804
3823TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_is_battery_broken_ex(tiepie_hw_handle handle, uint32_t serial_number);
3824
3839// Workaround: Without this line Doxygen adds the documentation below to the group above.
3840
3857
3878TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_input_index_by_id(tiepie_hw_handle handle, uint32_t id);
3879
3885// Workaround: Without this line Doxygen adds the documentation below to the group above.
3886
3900
3910// Workaround: Without this line Doxygen adds the documentation below to the group above.
3911
3932
3954
3967// Workaround: Without this line Doxygen adds the documentation below to the group above.
3968
3989TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_get_kinds(tiepie_hw_handle handle, uint16_t input);
3990
3992
4015TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_trigger_input_get_kinds_ex(tiepie_hw_handle handle, uint16_t input, uint32_t measure_mode);
4016
4018
4039TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_get_kind(tiepie_hw_handle handle, uint16_t input);
4040
4063TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_set_kind(tiepie_hw_handle handle, uint16_t input, uint64_t value);
4064
4077// Workaround: Without this line Doxygen adds the documentation below to the group above.
4078
4101
4103
4113TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_trigger_input_is_available_ex(tiepie_hw_handle handle, uint16_t input, uint32_t measure_mode);
4114
4116
4135TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_input_get_id(tiepie_hw_handle handle, uint16_t input);
4136
4156TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_input_get_name(tiepie_hw_handle handle, uint16_t input, char* buffer, uint32_t length);
4157
4171// Workaround: Without this line Doxygen adds the documentation below to the group above.
4172
4189
4208TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_output_index_by_id(tiepie_hw_handle handle, uint32_t id);
4209
4218// Workaround: Without this line Doxygen adds the documentation below to the group above.
4219
4239
4260
4282// Workaround: Without this line Doxygen adds the documentation below to the group above.
4283
4303TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_get_events(tiepie_hw_handle handle, uint16_t output);
4304
4324TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_get_event(tiepie_hw_handle handle, uint16_t output);
4325
4347TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_set_event(tiepie_hw_handle handle, uint16_t output, uint64_t value);
4348
4360// Workaround: Without this line Doxygen adds the documentation below to the group above.
4361
4380TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_output_get_id(tiepie_hw_handle handle, uint16_t output);
4381
4401TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_output_get_name(tiepie_hw_handle handle, uint16_t output, char* buffer, uint32_t length);
4402
4422
4447// Workaround: Without this line Doxygen adds the documentation below to the group above.
4448
4464
4485
4487
4501TIEPIE_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);
4502
4504
4511// Workaround: Without this line Doxygen adds the documentation below to the group above.
4512
4531
4549
4567
4585TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_impedance(tiepie_hw_handle handle, uint16_t ch);
4586
4596// Workaround: Without this line Doxygen adds the documentation below to the group above.
4597
4619TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_bandwidths(tiepie_hw_handle handle, uint16_t ch, double* list, uint32_t length);
4620
4640TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_bandwidth(tiepie_hw_handle handle, uint16_t ch);
4641
4662TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_set_bandwidth(tiepie_hw_handle handle, uint16_t ch, double bandwidth);
4663
4673// Workaround: Without this line Doxygen adds the documentation below to the group above.
4674
4693TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_get_couplings(tiepie_hw_handle handle, uint16_t ch);
4694
4713TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_get_coupling(tiepie_hw_handle handle, uint16_t ch);
4714
4737TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_set_coupling(tiepie_hw_handle handle, uint16_t ch, uint64_t coupling);
4738
4750// Workaround: Without this line Doxygen adds the documentation below to the group above.
4751
4770
4792
4814// Workaround: Without this line Doxygen adds the documentation below to the group above.
4815
4834
4855
4894TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_ranges(tiepie_hw_handle handle, uint16_t ch, double* list, uint32_t length);
4895
4897
4910TIEPIE_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);
4911
4913
4932TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_range(tiepie_hw_handle handle, uint16_t ch);
4933
4970TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_set_range(tiepie_hw_handle handle, uint16_t ch, double range);
4971
4993// Workaround: Without this line Doxygen adds the documentation below to the group above.
4994
5012
5033
5061
5084
5107
5130
5159TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_set_safeground_threshold(tiepie_hw_handle handle, uint16_t ch, double threshold);
5160
5162
5172TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_verify_safeground_threshold(tiepie_hw_handle handle, uint16_t ch, double threshold);
5173
5175
5191// Workaround: Without this line Doxygen adds the documentation below to the group above.
5192
5210
5212
5231TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_has_trigger_ex(tiepie_hw_handle handle, uint16_t ch, uint32_t measure_mode);
5232
5234
5252
5254
5269TIEPIE_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);
5270
5272
5286
5299// Workaround: Without this line Doxygen adds the documentation below to the group above.
5300
5320
5343
5357// Workaround: Without this line Doxygen adds the documentation below to the group above.
5358
5378TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_get_kinds(tiepie_hw_handle handle, uint16_t ch);
5379
5381
5391TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_get_kinds_ex(tiepie_hw_handle handle, uint16_t ch, uint32_t measure_mode);
5392
5394
5414TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_get_kind(tiepie_hw_handle handle, uint16_t ch);
5415
5438TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_set_kind(tiepie_hw_handle handle, uint16_t ch, uint64_t value);
5439
5460// Workaround: Without this line Doxygen adds the documentation below to the group above.
5461
5480
5499
5519TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_set_level_mode(tiepie_hw_handle handle, uint16_t ch, uint32_t value);
5520
5540// Workaround: Without this line Doxygen adds the documentation below to the group above.
5541
5563
5585TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_get_level(tiepie_hw_handle handle, uint16_t ch, uint32_t index);
5586
5612TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_set_level(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value);
5613
5631// Workaround: Without this line Doxygen adds the documentation below to the group above.
5632
5654
5676TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_get_hysteresis(tiepie_hw_handle handle, uint16_t ch, uint32_t index);
5677
5701TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_set_hysteresis(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value);
5702
5716// Workaround: Without this line Doxygen adds the documentation below to the group above.
5717
5739
5741
5752TIEPIE_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);
5753
5755
5776
5798TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_set_condition(tiepie_hw_handle handle, uint16_t ch, uint32_t value);
5799
5815// Workaround: Without this line Doxygen adds the documentation below to the group above.
5816
5842
5867TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_get_time(tiepie_hw_handle handle, uint16_t ch, uint32_t index);
5868
5896TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_set_time(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value);
5897
5899
5914TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_verify_time(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value);
5915
5935TIEPIE_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);
5936
5938
5966
5987
6010
6039
6060
6082TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_amplitude(tiepie_hw_handle handle, uint16_t ch, double value);
6083
6113
6134
6156TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_frequency(tiepie_hw_handle handle, uint16_t ch, double value);
6157
6189
6210
6232TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_offset(tiepie_hw_handle handle, uint16_t ch, double value);
6233
6270
6291
6313TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_symmetry(tiepie_hw_handle handle, uint16_t ch, double value);
6314
6351
6371TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_get_phase(tiepie_hw_handle handle, uint16_t ch);
6372
6394TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_phase(tiepie_hw_handle handle, uint16_t ch, double value);
6395
6425
6446
6468
6529// Workaround: Without this line Doxygen adds the documentation below to the group above.
6530
6591#ifdef INCLUDED_BY_MATLAB
6592TIEPIE_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);
6593#else
6594# ifdef LIBTIEPIE_HW_DYNAMIC
6595typedef 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);
6596# else
6597TIEPIE_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);
6598# endif
6599#endif
6600
6630TIEPIE_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);
6631
6662TIEPIE_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);
6663
6695TIEPIE_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);
6696
6729TIEPIE_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);
6730
6764TIEPIE_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);
6765
6800TIEPIE_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);
6801
6837TIEPIE_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);
6838
6875TIEPIE_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);
6876
6897
6919TIEPIE_HW_API void tiepie_hw_oscilloscope_channel_get_data_value_range(tiepie_hw_handle handle, uint16_t ch, double* min, double* max);
6920
6940
6960
6967// Workaround: Without this line Doxygen adds the documentation below to the group above.
6968
6981TIEPIE_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);
6982
6993TIEPIE_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);
6994
7006TIEPIE_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);
7007
7020TIEPIE_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);
7021
7035TIEPIE_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);
7036
7051TIEPIE_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);
7052
7068TIEPIE_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);
7069
7086TIEPIE_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);
7087
7105TIEPIE_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);
7106
7115TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_data_raw_type(tiepie_hw_handle handle, uint16_t ch);
7116
7130TIEPIE_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);
7131
7143TIEPIE_HW_API int64_t tiepie_hw_oscilloscope_channel_get_data_raw_value_min(tiepie_hw_handle handle, uint16_t ch);
7144
7156TIEPIE_HW_API int64_t tiepie_hw_oscilloscope_channel_get_data_raw_value_zero(tiepie_hw_handle handle, uint16_t ch);
7157
7169TIEPIE_HW_API int64_t tiepie_hw_oscilloscope_channel_get_data_raw_value_max(tiepie_hw_handle handle, uint16_t ch);
7170
7179TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_is_range_max_reachable(tiepie_hw_handle handle, uint16_t ch);
7180
7194// Workaround: Without this line Doxygen adds the documentation below to the group above.
7195
7215
7232
7255
7295// Workaround: Without this line Doxygen adds the documentation below to the group above.
7296
7314
7332
7352TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_measure_mode(tiepie_hw_handle handle, uint32_t value);
7353
7364// Workaround: Without this line Doxygen adds the documentation below to the group above.
7365
7381
7403
7423
7443
7468
7490
7532// Workaround: Without this line Doxygen adds the documentation below to the group above.
7533
7551
7570
7590TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_auto_resolution_mode(tiepie_hw_handle handle, uint32_t value);
7591
7630TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_resolutions(tiepie_hw_handle handle, uint8_t* list, uint32_t length);
7631
7649
7670TIEPIE_HW_API uint8_t tiepie_hw_oscilloscope_set_resolution(tiepie_hw_handle handle, uint8_t value);
7671
7687
7689
7698TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_is_resolution_enhanced_ex(tiepie_hw_handle handle, uint8_t value);
7699
7701
7724// Workaround: Without this line Doxygen adds the documentation below to the group above.
7725
7746
7767
7789TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_clock_source(tiepie_hw_handle handle, uint32_t value);
7790
7829TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_source_frequencies(tiepie_hw_handle handle, double* list, uint32_t length);
7830
7832
7861TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_source_frequencies_ex(tiepie_hw_handle handle, uint32_t value, double* list, uint32_t length);
7862
7864
7888
7916
7935// Workaround: Without this line Doxygen adds the documentation below to the group above.
7936
7957
7978
8000TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_clock_output(tiepie_hw_handle handle, uint32_t value);
8001
8040TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_output_frequencies(tiepie_hw_handle handle, double* list, uint32_t length);
8041
8043
8072TIEPIE_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);
8073
8075
8099
8127
8151// Workaround: Without this line Doxygen adds the documentation below to the group above.
8152
8170
8188
8211TIEPIE_HW_API double tiepie_hw_oscilloscope_set_sample_rate(tiepie_hw_handle handle, double value);
8212
8214
8228TIEPIE_HW_API double tiepie_hw_oscilloscope_verify_sample_rate(tiepie_hw_handle handle, double value);
8229
8247TIEPIE_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);
8248
8267TIEPIE_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);
8268
8270
8289// Workaround: Without this line Doxygen adds the documentation below to the group above.
8290
8308
8310
8325TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_record_length_max_ex(tiepie_hw_handle handle, uint32_t measure_mode, uint8_t resolution);
8326
8328
8346
8368TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_set_record_length(tiepie_hw_handle handle, uint64_t record_length);
8369
8371
8385TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_verify_record_length(tiepie_hw_handle handle, uint64_t record_length);
8386
8404TIEPIE_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);
8405
8407
8431// Workaround: Without this line Doxygen adds the documentation below to the group above.
8432
8450
8471TIEPIE_HW_API double tiepie_hw_oscilloscope_set_pre_sample_ratio(tiepie_hw_handle handle, double value);
8472
8482// Workaround: Without this line Doxygen adds the documentation below to the group above.
8483
8502
8504
8517TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_segment_count_max_ex(tiepie_hw_handle handle, uint32_t measure_mode);
8518
8520
8540
8562TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_segment_count(tiepie_hw_handle handle, uint32_t value);
8563
8565
8579TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_verify_segment_count(tiepie_hw_handle handle, uint32_t value);
8580
8598TIEPIE_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);
8599
8601
8612// Workaround: Without this line Doxygen adds the documentation below to the group above.
8613
8629
8631
8649TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_has_trigger_ex(tiepie_hw_handle handle, uint32_t measure_mode);
8650
8652
8677// Workaround: Without this line Doxygen adds the documentation below to the group above.
8678
8696
8716TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_set_timeout(tiepie_hw_handle handle, double value);
8717
8719
8731TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_verify_timeout(tiepie_hw_handle handle, double value);
8732
8746TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_verify_timeout_ex(tiepie_hw_handle handle, double value, uint32_t measure_mode, double sample_rate);
8747
8749
8765// Workaround: Without this line Doxygen adds the documentation below to the group above.
8766
8782
8784
8802TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_trigger_has_delay_ex(tiepie_hw_handle handle, uint32_t measure_mode);
8803
8805
8825
8827
8852TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_get_delay_max_ex(tiepie_hw_handle handle, uint32_t measure_mode, double sample_rate);
8853
8855
8875
8897TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_set_delay(tiepie_hw_handle handle, double value);
8898
8900
8915TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_verify_delay(tiepie_hw_handle handle, double value);
8916
8933TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_verify_delay_ex(tiepie_hw_handle handle, double value, uint32_t measure_mode, double sample_rate);
8934
8936
8944// Workaround: Without this line Doxygen adds the documentation below to the group above.
8945
8961
8978
8997
9017
9037// Workaround: Without this line Doxygen adds the documentation below to the group above.
9038
9055
9074
9096
9098
9127TIEPIE_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);
9128
9130
9152
9211TIEPIE_HW_API uint16_t tiepie_hw_oscilloscope_get_sureconnect_data(tiepie_hw_handle handle, tiepie_hw_tristate* buffer, uint16_t channel_count);
9212
9231// Workaround: Without this line Doxygen adds the documentation below to the group above.
9232
9249
9265
9282
9299
9316
9333
9335
9351TIEPIE_HW_API void tiepie_hw_generator_get_output_value_min_max(tiepie_hw_handle handle, double* min, double* max);
9352
9354
9375// Workaround: Without this line Doxygen adds the documentation below to the group above.
9376
9396
9405
9423
9440
9460
9478
9497
9519
9539
9558
9589// Workaround: Without this line Doxygen adds the documentation below to the group above.
9590
9608
9626
9649TIEPIE_HW_API uint32_t tiepie_hw_generator_set_signal_type(tiepie_hw_handle handle, uint32_t value);
9650
9673// Workaround: Without this line Doxygen adds the documentation below to the group above.
9674
9694
9696
9713TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_amplitude_ex(tiepie_hw_handle handle, uint32_t signal_type);
9714
9716
9739
9762
9764
9791TIEPIE_HW_API void tiepie_hw_generator_get_amplitude_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double* min, double* max);
9792
9794
9814
9840TIEPIE_HW_API double tiepie_hw_generator_set_amplitude(tiepie_hw_handle handle, double amplitude);
9841
9843
9870TIEPIE_HW_API double tiepie_hw_generator_verify_amplitude(tiepie_hw_handle handle, double amplitude);
9871
9901TIEPIE_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);
9902
9904
9918// Workaround: Without this line Doxygen adds the documentation below to the group above.
9919
9955TIEPIE_HW_API uint32_t tiepie_hw_generator_get_amplitude_ranges(tiepie_hw_handle handle, double* list, uint32_t length);
9956
9977
10014TIEPIE_HW_API double tiepie_hw_generator_set_amplitude_range(tiepie_hw_handle handle, double value);
10015
10036
10060
10081// Workaround: Without this line Doxygen adds the documentation below to the group above.
10082
10102
10104
10121TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_offset_ex(tiepie_hw_handle handle, uint32_t signal_type);
10122
10124
10144
10164
10166
10191TIEPIE_HW_API void tiepie_hw_generator_get_offset_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double* min, double* max);
10192
10194
10214
10237TIEPIE_HW_API double tiepie_hw_generator_set_offset(tiepie_hw_handle handle, double value);
10238
10240
10265TIEPIE_HW_API double tiepie_hw_generator_verify_offset(tiepie_hw_handle handle, double value);
10266
10295TIEPIE_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);
10296
10298
10333// Workaround: Without this line Doxygen adds the documentation below to the group above.
10334
10353
10355
10376TIEPIE_HW_API uint32_t tiepie_hw_generator_get_frequency_modes_ex(tiepie_hw_handle handle, uint32_t signal_type);
10377
10379
10398
10423TIEPIE_HW_API uint32_t tiepie_hw_generator_set_frequency_mode(tiepie_hw_handle handle, uint32_t value);
10424
10429// Workaround: Without this line Doxygen adds the documentation below to the group above.
10430
10450
10452
10470TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_frequency_ex(tiepie_hw_handle handle, uint32_t frequency_mode, uint32_t signal_type);
10471
10473
10493
10513
10515
10541TIEPIE_HW_API void tiepie_hw_generator_get_frequency_min_max(tiepie_hw_handle handle, uint32_t frequency_mode, double* min, double* max);
10542
10568TIEPIE_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);
10569
10571
10591
10617TIEPIE_HW_API double tiepie_hw_generator_set_frequency(tiepie_hw_handle handle, double value);
10618
10620
10645TIEPIE_HW_API double tiepie_hw_generator_verify_frequency(tiepie_hw_handle handle, double value);
10646
10676TIEPIE_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);
10677
10679
10680
10700// Workaround: Without this line Doxygen adds the documentation below to the group above.
10701
10721
10723
10740TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_phase_ex(tiepie_hw_handle handle, uint32_t signal_type);
10741
10743
10764
10785
10787
10812TIEPIE_HW_API void tiepie_hw_generator_get_phase_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double* min, double* max);
10813
10815
10836
10862TIEPIE_HW_API double tiepie_hw_generator_set_phase(tiepie_hw_handle handle, double value);
10863
10865
10890TIEPIE_HW_API double tiepie_hw_generator_verify_phase(tiepie_hw_handle handle, double value);
10891
10918TIEPIE_HW_API double tiepie_hw_generator_verify_phase_ex(tiepie_hw_handle handle, double value, uint32_t signal_type);
10919
10921
10942// Workaround: Without this line Doxygen adds the documentation below to the group above.
10943
10963
10965
10982TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_symmetry_ex(tiepie_hw_handle handle, uint32_t signal_type);
10983
10985
11005
11025
11027
11052TIEPIE_HW_API void tiepie_hw_generator_get_symmetry_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double* min, double* max);
11053
11055
11075
11099TIEPIE_HW_API double tiepie_hw_generator_set_symmetry(tiepie_hw_handle handle, double value);
11100
11102
11127TIEPIE_HW_API double tiepie_hw_generator_verify_symmetry(tiepie_hw_handle handle, double value);
11128
11155TIEPIE_HW_API double tiepie_hw_generator_verify_symmetry_ex(tiepie_hw_handle handle, double value, uint32_t signal_type);
11156
11158
11182// Workaround: Without this line Doxygen adds the documentation below to the group above.
11183
11203
11205
11222TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_width_ex(tiepie_hw_handle handle, uint32_t signal_type);
11223
11225
11245
11265
11267
11293TIEPIE_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);
11294
11296
11316
11341TIEPIE_HW_API double tiepie_hw_generator_set_width(tiepie_hw_handle handle, double value);
11342
11344
11369TIEPIE_HW_API double tiepie_hw_generator_verify_width(tiepie_hw_handle handle, double value);
11370
11398TIEPIE_HW_API double tiepie_hw_generator_verify_width_ex(tiepie_hw_handle handle, double value, uint32_t signal_type, double signal_frequency);
11399
11401
11433// Workaround: Without this line Doxygen adds the documentation below to the group above.
11434
11458
11460
11492TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_edge_time_ex(tiepie_hw_handle handle, uint32_t signal_type);
11493
11495
11520
11545
11547
11584TIEPIE_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);
11585
11587
11612
11641TIEPIE_HW_API double tiepie_hw_generator_set_leading_edge_time(tiepie_hw_handle handle, double leading_edge_time);
11642
11644
11678TIEPIE_HW_API double tiepie_hw_generator_verify_leading_edge_time(tiepie_hw_handle handle, double leading_edge_time);
11679
11718TIEPIE_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);
11719
11721
11746
11771
11773
11811TIEPIE_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);
11812
11814
11839
11868TIEPIE_HW_API double tiepie_hw_generator_set_trailing_edge_time(tiepie_hw_handle handle, double value);
11869
11871
11904TIEPIE_HW_API double tiepie_hw_generator_verify_trailing_edge_time(tiepie_hw_handle handle, double value);
11905
11943TIEPIE_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);
11944
11946
11999// Workaround: Without this line Doxygen adds the documentation below to the group above.
12000
12017
12019
12036TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_data_ex(tiepie_hw_handle handle, uint32_t signal_type);
12037
12039
12058
12077
12079
12103TIEPIE_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);
12104
12106
12125
12127
12152TIEPIE_HW_API uint64_t tiepie_hw_generator_verify_data_length(tiepie_hw_handle handle, uint64_t value);
12153
12179TIEPIE_HW_API uint64_t tiepie_hw_generator_verify_data_length_ex(tiepie_hw_handle handle, uint64_t value, uint32_t signal_type);
12180
12182
12210TIEPIE_HW_API void tiepie_hw_generator_set_data(tiepie_hw_handle handle, const float* buffer, uint64_t sample_count);
12211
12213
12239TIEPIE_HW_API void tiepie_hw_generator_set_data_ex(tiepie_hw_handle handle, const float* buffer, uint64_t sample_count, uint32_t signal_type);
12240
12247// Workaround: Without this line Doxygen adds the documentation below to the group above.
12248
12257TIEPIE_HW_API uint32_t tiepie_hw_generator_get_data_raw_type(tiepie_hw_handle handle);
12258
12268TIEPIE_HW_API void tiepie_hw_generator_get_data_raw_value_range(tiepie_hw_handle handle, int64_t* min, int64_t* zero, int64_t* max);
12269
12277TIEPIE_HW_API int64_t tiepie_hw_generator_get_data_raw_value_min(tiepie_hw_handle handle);
12278
12286TIEPIE_HW_API int64_t tiepie_hw_generator_get_data_raw_value_zero(tiepie_hw_handle handle);
12287
12295TIEPIE_HW_API int64_t tiepie_hw_generator_get_data_raw_value_max(tiepie_hw_handle handle);
12296
12307TIEPIE_HW_API void tiepie_hw_generator_set_data_raw(tiepie_hw_handle handle, const void* buffer, uint64_t sample_count);
12308
12320TIEPIE_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);
12321
12327
12350// Workaround: Without this line Doxygen adds the documentation below to the group above.
12351
12370
12372
12390TIEPIE_HW_API uint64_t tiepie_hw_generator_get_modes_ex(tiepie_hw_handle handle, uint32_t signal_type, uint32_t frequency_mode);
12391
12393
12412
12430TIEPIE_HW_API uint64_t tiepie_hw_generator_get_mode(tiepie_hw_handle handle);
12431
12453TIEPIE_HW_API uint64_t tiepie_hw_generator_set_mode(tiepie_hw_handle handle, uint64_t value);
12454
12511// Workaround: Without this line Doxygen adds the documentation below to the group above.
12512
12530
12550
12570
12572
12595TIEPIE_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);
12596
12598
12618
12641TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_count(tiepie_hw_handle handle, uint64_t value);
12642
12662
12682
12684
12707TIEPIE_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);
12708
12710
12730
12753TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_sample_count(tiepie_hw_handle handle, uint64_t value);
12754
12774
12794
12796
12823TIEPIE_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);
12824
12826
12846
12869TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_segment_count(tiepie_hw_handle handle, uint64_t value);
12870
12872
12896TIEPIE_HW_API uint64_t tiepie_hw_generator_verify_burst_segment_count(tiepie_hw_handle handle, uint64_t value);
12897
12927TIEPIE_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);
12928
12930
12977// Workaround: Without this line Doxygen adds the documentation below to the group above.
12978
12989
13000
13010
13018TIEPIE_HW_API uint32_t tiepie_hw_server_get_status(tiepie_hw_handle handle);
13019
13028
13038TIEPIE_HW_API uint32_t tiepie_hw_server_get_url(tiepie_hw_handle handle, char* buffer, uint32_t length);
13039
13049TIEPIE_HW_API uint32_t tiepie_hw_server_get_id(tiepie_hw_handle handle, char* buffer, uint32_t length);
13050
13060TIEPIE_HW_API uint32_t tiepie_hw_server_get_ip_address(tiepie_hw_handle handle, char* buffer, uint32_t length);
13061
13069TIEPIE_HW_API uint16_t tiepie_hw_server_get_ip_port(tiepie_hw_handle handle);
13070
13080TIEPIE_HW_API uint32_t tiepie_hw_server_get_name(tiepie_hw_handle handle, char* buffer, uint32_t length);
13081
13091TIEPIE_HW_API uint32_t tiepie_hw_server_get_description(tiepie_hw_handle handle, char* buffer, uint32_t length);
13092
13114TIEPIE_HW_API uint32_t tiepie_hw_server_get_version(tiepie_hw_handle handle, char* buffer, uint32_t length);
13115
13168
13182TIEPIE_HW_API void tiepie_hw_pointerarray_set(tiepie_hw_pointerarray ptr, uint32_t index, void* value);
13183
13195
13202#ifdef __cplusplus
13203}
13204#endif
13205
13206#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 serial number.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelist_get_item_by_index(uint32_t index)
Get handle to device list item by index.
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:1874
uint8_t tiepie_hw_bool
Boolean value one byte wide.
Definition libtiepie-hw.h:1838
void ** tiepie_hw_pointerarray
Pointer array.
Definition libtiepie-hw.h:1920
tiepie_hw_demosignal
Demo signal type IDs, for demo oscilloscope channels. See Demo signals.
Definition libtiepie-hw.h:1893
uint8_t tiepie_hw_tristate
TriState value one byte wide.
Definition libtiepie-hw.h:1919
tiepie_hw_status
Status code.
Definition libtiepie-hw.h:1794
void(* tiepie_hw_devicelist_callback)(void *data, uint32_t device_types, uint32_t serial_number)
Prototype for a device list callback.
Definition libtiepie-hw.h:1962
tiepie_hw_productid
ProductID IDs for products.
Definition libtiepie-hw.h:1844
void(* tiepie_hw_handle_callback)(void *data, tiepie_hw_handle handle)
Prototype for a handle callback.
Definition libtiepie-hw.h:1972
void(* tiepie_hw_event_callback)(void *data, tiepie_hw_event event, uint32_t value)
Prototype for an event callback.
Definition libtiepie-hw.h:1983
uint32_t tiepie_hw_handle
Generic handle.
Definition libtiepie-hw.h:1837
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_TRIGGERED
Event ID for the event indicating that the oscilloscope has triggered.
Definition libtiepie-hw.h:1880
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_SURE_CONNECT_COMPLETED
Event ID for the event indicating that the connection test is ready.
Definition libtiepie-hw.h:1879
@ TIEPIE_HW_EVENT_GENERATOR_BURST_COMPLETED
Event ID for the event indicating that the generator burst is completed.
Definition libtiepie-hw.h:1881
@ TIEPIE_HW_EVENT_OBJECT_REMOVED
Event ID for the event indicating that an object was removed.
Definition libtiepie-hw.h:1876
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_DATA_OVERFLOW
Event ID for the event indicating that data overflow occurred during a streaming measurement.
Definition libtiepie-hw.h:1878
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_DATA_READY
Event ID for the event indicating that the oscilloscope measurement is ready.
Definition libtiepie-hw.h:1877
@ TIEPIE_HW_EVENT_SERVER_STATUS_CHANGED
Event ID for the event indicating that the server state has changed.
Definition libtiepie-hw.h:1883
@ TIEPIE_HW_EVENT_INVALID
This event ID value should not occur.
Definition libtiepie-hw.h:1875
@ 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:1884
@ TIEPIE_HW_EVENT_GENERATOR_CONTROLLABLE_CHANGED
Event ID for the event indicating that the generator controllable state has changed.
Definition libtiepie-hw.h:1882
@ 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:1886
@ TIEPIE_HW_EVENT_DEVICE_BATTERY_STATUS_CHANGED
Event ID for the event indicating that the battery state has changed.
Definition libtiepie-hw.h:1885
@ TIEPIE_HW_DEMOSIGNAL_CAN_250000_HI
Generate a CAN-High signal, 250 kbps.
Definition libtiepie-hw.h:1909
@ TIEPIE_HW_DEMOSIGNAL_CANFD_250000_LO
Generate a CANFD-Low signal, 250 kbps.
Definition libtiepie-hw.h:1913
@ TIEPIE_HW_DEMOSIGNAL_DMX512
Generate a DMX 512 signal.
Definition libtiepie-hw.h:1914
@ TIEPIE_HW_DEMOSIGNAL_SINE
Generate a sine wave signal.
Definition libtiepie-hw.h:1895
@ TIEPIE_HW_DEMOSIGNAL_UART_9600_8N1
Generate a UART signal, 9600 baud, 8 bits, no parity, 1 stop bit.
Definition libtiepie-hw.h:1902
@ TIEPIE_HW_DEMOSIGNAL_LIN_19200
Generate a LIN bus signal, 19200 bps.
Definition libtiepie-hw.h:1915
@ TIEPIE_HW_DEMOSIGNAL_CAN_250000_LO
Generate a CAN-Low signal, 250 kbps.
Definition libtiepie-hw.h:1910
@ TIEPIE_HW_DEMOSIGNAL_CANFD_250000_HI
Generate a CANFD-High signal, 250 kbps.
Definition libtiepie-hw.h:1912
@ TIEPIE_HW_DEMOSIGNAL_UART_9600_7E2
Generate a UART signal, 9600 baud, 7 bits, even parity, 2 stop bits.
Definition libtiepie-hw.h:1903
@ TIEPIE_HW_DEMOSIGNAL_RS485_9600_8N1
Generate a RS458 signal, 9600 baud, 8 bits, no parity, 1 stop bit.
Definition libtiepie-hw.h:1906
@ TIEPIE_HW_DEMOSIGNAL_TRIANGLE
Generate a triangular signal.
Definition libtiepie-hw.h:1896
@ TIEPIE_HW_DEMOSIGNAL_RUNT
Generate a pulse signal with a runt pulse.
Definition libtiepie-hw.h:1899
@ TIEPIE_HW_DEMOSIGNAL_RS485_9600_8N1MD
Generate a RS458 signal, 9600 baud, 8 bits, no parity, 1 stop bit MultiDrop.
Definition libtiepie-hw.h:1907
@ TIEPIE_HW_DEMOSIGNAL_I2C_SDA
Generate an I2C SDA signal.
Definition libtiepie-hw.h:1901
@ TIEPIE_HW_DEMOSIGNAL_RS232_9600_8O15
Generate a RS232 signal, 9600 baud, 8 bits, odd parity, 1.5 stop bits.
Definition libtiepie-hw.h:1905
@ TIEPIE_HW_DEMOSIGNAL_RS232_9600_8N1
Generate a RS232 signal, 9600 baud, 8 bits, no parity, 1 stop bit.
Definition libtiepie-hw.h:1904
@ TIEPIE_HW_DEMOSIGNAL_NONE
Disable signal.
Definition libtiepie-hw.h:1894
@ TIEPIE_HW_DEMOSIGNAL_EV_CHARGING
Generate a EV charging signal.
Definition libtiepie-hw.h:1916
@ TIEPIE_HW_DEMOSIGNAL_CANFD_250000
Generate a differential CANFD signal, 250 kbps.
Definition libtiepie-hw.h:1911
@ TIEPIE_HW_DEMOSIGNAL_SQUARE
Generate a square wave signal.
Definition libtiepie-hw.h:1897
@ TIEPIE_HW_DEMOSIGNAL_I2C_SCL
Generate an I2C SCL signal.
Definition libtiepie-hw.h:1900
@ TIEPIE_HW_DEMOSIGNAL_CAN_250000
Generate a differential CAN signal, 250 kbps.
Definition libtiepie-hw.h:1908
@ TIEPIE_HW_DEMOSIGNAL_DC
Generate a DC level.
Definition libtiepie-hw.h:1898
@ TIEPIE_HW_STATUS_INVALID_INPUT
The requested trigger input is invalid.
Definition libtiepie-hw.h:1814
@ TIEPIE_HW_STATUS_NO_TRIGGER_ENABLED
The current setup requires a trigger input to be enabled.
Definition libtiepie-hw.h:1822
@ TIEPIE_HW_STATUS_SUCCESS
The function executed successfully.
Definition libtiepie-hw.h:1797
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10005
Initialization error 10005.
Definition libtiepie-hw.h:1832
@ 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:1824
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10006
Initialization error 10006.
Definition libtiepie-hw.h:1833
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10004
Initialization error 10004.
Definition libtiepie-hw.h:1831
@ TIEPIE_HW_STATUS_INVALID_INDEX
The requested index is invalid.
Definition libtiepie-hw.h:1818
@ TIEPIE_HW_STATUS_INVALID_DEVICE_TYPE
The device type is invalid.
Definition libtiepie-hw.h:1804
@ TIEPIE_HW_STATUS_INVALID_CHANNEL
The requested channel number is invalid.
Definition libtiepie-hw.h:1802
@ TIEPIE_HW_STATUS_INVALID_VALUE
The requested value is invalid.
Definition libtiepie-hw.h:1801
@ TIEPIE_HW_STATUS_WIRELESSTRIGGER_INVALID_MODULE_CONFIGURATION
Wireless trigger modules in a combi device must be the same model.
Definition libtiepie-hw.h:1827
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10003
Initialization error 10003.
Definition libtiepie-hw.h:1830
@ TIEPIE_HW_STATUS_INVALID_HANDLE
The handle to the device is invalid.
Definition libtiepie-hw.h:1800
@ TIEPIE_HW_STATUS_NOT_SUPPORTED
The requested functionality is not supported by the hardware.
Definition libtiepie-hw.h:1799
@ TIEPIE_HW_STATUS_MEASUREMENT_RUNNING
A measurement is already running.
Definition libtiepie-hw.h:1825
@ TIEPIE_HW_STATUS_SYNCHRONIZATION_FAILED
Synchronization of the instruments has failed.
Definition libtiepie-hw.h:1823
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10001
Initialization error 10001.
Definition libtiepie-hw.h:1828
@ TIEPIE_HW_STATUS_INITIALIZATION_FAILED
The instrument's initialization failed, please contact TiePie engineering support.
Definition libtiepie-hw.h:1820
@ TIEPIE_HW_STATUS_BIT_ERROR
The requested I2C operation generated a bit error.
Definition libtiepie-hw.h:1811
@ TIEPIE_HW_STATUS_INVALID_FIRMWARE
The currently used firmware is not supported.
Definition libtiepie-hw.h:1817
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10007
Initialization error 10007.
Definition libtiepie-hw.h:1834
@ TIEPIE_HW_STATUS_INVALID_DEVICE_SERIALNUMBER
There is no device with the requested serial number.
Definition libtiepie-hw.h:1807
@ 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:1796
@ TIEPIE_HW_STATUS_WIRELESSTRIGGERMODULENOTCONNECTED
A wireless trigger module is not connected.
Definition libtiepie-hw.h:1826
@ TIEPIE_HW_STATUS_INTERNAL_ADDRESS
The requested I2C address is an internally used address in the device.
Definition libtiepie-hw.h:1809
@ TIEPIE_HW_STATUS_NOT_AVAILABLE
With the current settings, the requested functionality is not available.
Definition libtiepie-hw.h:1816
@ TIEPIE_HW_STATUS_UNSUCCESSFUL
An error occurred during execution of the last called function.
Definition libtiepie-hw.h:1798
@ TIEPIE_HW_STATUS_LIBRARY_NOT_INITIALIZED
The library is not initialized, see tiepie_hw_init().
Definition libtiepie-hw.h:1821
@ TIEPIE_HW_STATUS_INVALID_DEVICE_INDEX
The device index is invalid, must be < tiepie_hw_devicelist_get_count().
Definition libtiepie-hw.h:1805
@ TIEPIE_HW_STATUS_NO_ACKNOWLEDGE
The requested I2C operation generated "No acknowledge".
Definition libtiepie-hw.h:1812
@ TIEPIE_HW_STATUS_INVALID_OUTPUT
The requested trigger output is invalid.
Definition libtiepie-hw.h:1815
@ 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:1813
@ TIEPIE_HW_STATUS_INVALID_PRODUCT_ID
There is no device with the requested product ID.
Definition libtiepie-hw.h:1806
@ TIEPIE_HW_STATUS_INVALID_TRIGGER_SOURCE
The requested trigger source is invalid.
Definition libtiepie-hw.h:1803
@ TIEPIE_HW_STATUS_NOT_CONTROLLABLE
The generator is currently not controllable, see tiepie_hw_generator_is_controllable.
Definition libtiepie-hw.h:1810
@ TIEPIE_HW_STATUS_OBJECT_GONE
The object indicated by the handle is no longer available.
Definition libtiepie-hw.h:1808
@ 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:1795
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10002
Initialization error 10002.
Definition libtiepie-hw.h:1829
@ TIEPIE_HW_STATUS_INVALID_EEPROM
The instrument's EEPROM content is damaged, please contact TiePie engineering support.
Definition libtiepie-hw.h:1819
@ TIEPIE_HW_PRODUCTID_HS4
Handyscope HS4.
Definition libtiepie-hw.h:1848
@ TIEPIE_HW_PRODUCTID_HS3
Handyscope HS3.
Definition libtiepie-hw.h:1847
@ TIEPIE_HW_PRODUCTID_WS5
WiFiScope WS5.
Definition libtiepie-hw.h:1858
@ TIEPIE_HW_PRODUCTID_WS4D
WiFiScope WS4D.
Definition libtiepie-hw.h:1862
@ TIEPIE_HW_PRODUCTID_HP3
Handyprobe HP3.
Definition libtiepie-hw.h:1849
@ TIEPIE_HW_PRODUCTID_TP450
TP450.
Definition libtiepie-hw.h:1850
@ TIEPIE_HW_PRODUCTID_HS6
Handyscope HS6.
Definition libtiepie-hw.h:1853
@ TIEPIE_HW_PRODUCTID_COMBI
Combined instrument.
Definition libtiepie-hw.h:1846
@ TIEPIE_HW_PRODUCTID_ATS5004DW
ATS5004DW.
Definition libtiepie-hw.h:1863
@ TIEPIE_HW_PRODUCTID_NONE
Unknown/invalid ID.
Definition libtiepie-hw.h:1845
@ TIEPIE_HW_PRODUCTID_HS5
Handyscope HS5.
Definition libtiepie-hw.h:1852
@ TIEPIE_HW_PRODUCTID_WS6
WiFiScope WS6.
Definition libtiepie-hw.h:1857
@ TIEPIE_HW_PRODUCTID_HS6D
Handyscope HS6 DIFF.
Definition libtiepie-hw.h:1854
@ TIEPIE_HW_PRODUCTID_WS6D
WiFiScope WS6D.
Definition libtiepie-hw.h:1859
@ TIEPIE_HW_PRODUCTID_HS4D
Handyscope HS4 DIFF.
Definition libtiepie-hw.h:1851
@ TIEPIE_HW_PRODUCTID_ATS605004D
ATS605004D.
Definition libtiepie-hw.h:1856
@ TIEPIE_HW_PRODUCTID_ATS605004DW
ATS605004DW.
Definition libtiepie-hw.h:1861
@ TIEPIE_HW_PRODUCTID_ATS610004DW
ATS610004DW.
Definition libtiepie-hw.h:1860
@ TIEPIE_HW_PRODUCTID_ATS5004D
ATS5004D.
Definition libtiepie-hw.h:1865
@ TIEPIE_HW_PRODUCTID_ATS610004D
ATS610004D.
Definition libtiepie-hw.h:1855
@ TIEPIE_HW_PRODUCTID_ATS5004
ATS5004.
Definition libtiepie-hw.h:1864
Date struct.
Definition libtiepie-hw.h:1929
uint8_t day
Day.
Definition libtiepie-hw.h:1932
uint16_t year
Year.
Definition libtiepie-hw.h:1930
uint8_t month
Month.
Definition libtiepie-hw.h:1931
Demo info struct.
Definition libtiepie-hw.h:1942
const char * name
Name of the device.
Definition libtiepie-hw.h:1944
const char * name_short
Short name of the device.
Definition libtiepie-hw.h:1945
tiepie_hw_productid product_id
Product ID of the device.
Definition libtiepie-hw.h:1943
Structure with library version info.
Definition libtiepie-hw.h:2051
uint16_t minor
Minor version number.
Definition libtiepie-hw.h:2053
uint16_t patch
Patch level.
Definition libtiepie-hw.h:2054
uint16_t major
Major version number.
Definition libtiepie-hw.h:2052
uint16_t build
Build number.
Definition libtiepie-hw.h:2055
const char * extra
Additional version text.
Definition libtiepie-hw.h:2056