libtiepie-hw 1.3.3
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 3
28#define TIEPIE_HW_VERSION_PATCH 3
29#define TIEPIE_HW_VERSION_NUMBER "1.3.3"
30#define TIEPIE_HW_VERSION "1.3.3"
31
769#define TIEPIE_HW_HANDLE_INVALID 0
770
777#define TIEPIE_HW_BOOL_FALSE 0
778#define TIEPIE_HW_BOOL_TRUE 1
779
786#define TIEPIE_HW_INTERFACE_DEVICE 0x0000000000000001
787#define TIEPIE_HW_INTERFACE_OSCILLOSCOPE 0x0000000000000002
788#define TIEPIE_HW_INTERFACE_GENERATOR 0x0000000000000004
789#define TIEPIE_HW_INTERFACE_SERVER 0x0000000000000010
790
791#define TIEPIE_HW_INTERFACE_COUNT 4
792
799#define TIEPIE_HW_DEVICETYPE_OSCILLOSCOPE 0x00000001
800#define TIEPIE_HW_DEVICETYPE_GENERATOR 0x00000002
801
802#define TIEPIE_HW_DEVICETYPE_COUNT 2
803
810#define TIEPIE_HW_CONNECTORTYPE_UNKNOWN 0x00000000
811
812#define TIEPIE_HW_CONNECTORTYPE_BNC 0x00000001
813#define TIEPIE_HW_CONNECTORTYPE_BANANA 0x00000002
814#define TIEPIE_HW_CONNECTORTYPE_POWERPLUG 0x00000004
815
816#define TIEPIE_HW_CONNECTORTYPE_COUNT 3
817
823#define TIEPIE_HW_CONNECTORTYPE_MASK (TIEPIE_HW_CONNECTORTYPE_BNC | TIEPIE_HW_CONNECTORTYPE_BANANA | TIEPIE_HW_CONNECTORTYPE_POWERPLUG)
824
832#define TIEPIE_HW_DATARAWTYPE_UNKNOWN 0x00000000
833
834#define TIEPIE_HW_DATARAWTYPE_INT8 0x00000001
835#define TIEPIE_HW_DATARAWTYPE_INT16 0x00000002
836#define TIEPIE_HW_DATARAWTYPE_INT32 0x00000004
837#define TIEPIE_HW_DATARAWTYPE_INT64 0x00000008
838
839#define TIEPIE_HW_DATARAWTYPE_UINT8 0x00000010
840#define TIEPIE_HW_DATARAWTYPE_UINT16 0x00000020
841#define TIEPIE_HW_DATARAWTYPE_UINT32 0x00000040
842#define TIEPIE_HW_DATARAWTYPE_UINT64 0x00000080
843
844#define TIEPIE_HW_DATARAWTYPE_FLOAT32 0x00000100
845#define TIEPIE_HW_DATARAWTYPE_FLOAT64 0x00000200
846
847#define TIEPIE_HW_DATARAWTYPE_COUNT 10
848
854#define TIEPIE_HW_DATARAWTYPE_MASK_INT (TIEPIE_HW_DATARAWTYPE_INT8 | TIEPIE_HW_DATARAWTYPE_INT16 | TIEPIE_HW_DATARAWTYPE_INT32 | TIEPIE_HW_DATARAWTYPE_INT64)
855#define TIEPIE_HW_DATARAWTYPE_MASK_UINT (TIEPIE_HW_DATARAWTYPE_UINT8 | TIEPIE_HW_DATARAWTYPE_UINT16 | TIEPIE_HW_DATARAWTYPE_UINT32 | TIEPIE_HW_DATARAWTYPE_UINT64)
856#define TIEPIE_HW_DATARAWTYPE_MASK_FLOAT (TIEPIE_HW_DATARAWTYPE_FLOAT32 | TIEPIE_HW_DATARAWTYPE_FLOAT64 )
857#define TIEPIE_HW_DATARAWTYPE_MASK_FIXED (TIEPIE_HW_DATARAWTYPE_MASK_INT | TIEPIE_HW_DATARAWTYPE_MASK_UINT)
858
866#define TIEPIE_HW_TRISTATE_UNDEFINED 0
867#define TIEPIE_HW_TRISTATE_FALSE 1
868#define TIEPIE_HW_TRISTATE_TRUE 2
869
876#define TIEPIE_HW_TRIGGERIO_INDEX_INVALID 0xffff
877
884#define TIEPIE_HW_STRING_LENGTH_NULL_TERMINATED 0xffffffff
885
892#define TIEPIE_HW_SERVER_STATUS_DISCONNECTED 0
893#define TIEPIE_HW_SERVER_STATUS_CONNECTING 1
894#define TIEPIE_HW_SERVER_STATUS_CONNECTED 2
895#define TIEPIE_HW_SERVER_STATUS_DISCONNECTING 3
896
903#define TIEPIE_HW_SERVER_ERROR_NONE 0
904#define TIEPIE_HW_SERVER_ERROR_UNKNOWN 1
905#define TIEPIE_HW_SERVER_ERROR_CONNECTIONREFUSED 2
906#define TIEPIE_HW_SERVER_ERROR_NETWORKUNREACHABLE 3
907#define TIEPIE_HW_SERVER_ERROR_TIMEDOUT 4
908#define TIEPIE_HW_SERVER_ERROR_HOSTNAMELOOKUPFAILED 5
909
915
921#define TIEPIE_HW_RANGEINDEX_AUTO 0xffffffff
922
928
934#define TIEPIE_HW_POINTER_ARRAY_MAX_LENGTH 256
935
948#define TIEPIE_HW_ARMN_COUNT 3
949
955#define TIEPIE_HW_ARMB_DISABLED 0
956#define TIEPIE_HW_ARMB_NATIVEONLY 1
957#define TIEPIE_HW_ARMB_ALL 2
958
963#define TIEPIE_HW_ARM_UNKNOWN 0
964
965#define TIEPIE_HW_ARM_DISABLED (1 << TIEPIE_HW_ARMB_DISABLED)
966#define TIEPIE_HW_ARM_NATIVEONLY (1 << TIEPIE_HW_ARMB_NATIVEONLY)
967#define TIEPIE_HW_ARM_ALL (1 << TIEPIE_HW_ARMB_ALL)
968
974#define TIEPIE_HW_ARMM_NONE 0
975#define TIEPIE_HW_ARMM_ALL ((1 << TIEPIE_HW_ARMN_COUNT) - 1)
976#define TIEPIE_HW_ARMM_ENABLED (TIEPIE_HW_ARMM_ALL & ~TIEPIE_HW_ARM_DISABLED)
977
990#define TIEPIE_HW_CKN_COUNT 5
991
997#define TIEPIE_HW_CKB_DCV 0
998#define TIEPIE_HW_CKB_ACV 1
999#define TIEPIE_HW_CKB_DCA 2
1000#define TIEPIE_HW_CKB_ACA 3
1001#define TIEPIE_HW_CKB_OHM 4
1002
1007#define TIEPIE_HW_CK_UNKNOWN 0
1008
1009#define TIEPIE_HW_CK_DCV (1 << TIEPIE_HW_CKB_DCV)
1010#define TIEPIE_HW_CK_ACV (1 << TIEPIE_HW_CKB_ACV)
1011#define TIEPIE_HW_CK_DCA (1 << TIEPIE_HW_CKB_DCA)
1012#define TIEPIE_HW_CK_ACA (1 << TIEPIE_HW_CKB_ACA)
1013#define TIEPIE_HW_CK_OHM (1 << TIEPIE_HW_CKB_OHM)
1014
1020#define TIEPIE_HW_CKM_NONE 0
1021#define TIEPIE_HW_CKM_V (TIEPIE_HW_CK_DCV | TIEPIE_HW_CK_ACV)
1022#define TIEPIE_HW_CKM_A (TIEPIE_HW_CK_DCA | TIEPIE_HW_CK_ACA)
1023#define TIEPIE_HW_CKM_OHM (TIEPIE_HW_CK_OHM)
1024
1025#define TIEPIE_HW_CKM_ASYMMETRICRANGE (TIEPIE_HW_CKM_OHM)
1026#define TIEPIE_HW_CKM_SYMMETRICRANGE (TIEPIE_HW_CKM_V | TIEPIE_HW_CKM_A)
1027
1028#define TIEPIE_HW_CKM_DC (TIEPIE_HW_CK_DCV | TIEPIE_HW_CK_DCA | TIEPIE_HW_CK_OHM)
1029#define TIEPIE_HW_CKM_AC (TIEPIE_HW_CK_ACV | TIEPIE_HW_CK_ACA)
1030
1043#define TIEPIE_HW_CON_COUNT 3
1044
1050#define TIEPIE_HW_COB_DISABLED 0
1051#define TIEPIE_HW_COB_SAMPLE 1
1052#define TIEPIE_HW_COB_FIXED 2
1053
1058#define TIEPIE_HW_CO_DISABLED (1 << TIEPIE_HW_COB_DISABLED)
1059#define TIEPIE_HW_CO_SAMPLE (1 << TIEPIE_HW_COB_SAMPLE)
1060#define TIEPIE_HW_CO_FIXED (1 << TIEPIE_HW_COB_FIXED)
1061
1067#define TIEPIE_HW_COM_NONE 0
1068#define TIEPIE_HW_COM_ALL ((1 << TIEPIE_HW_CON_COUNT) - 1)
1069#define TIEPIE_HW_COM_ENABLED (TIEPIE_HW_COM_ALL & ~TIEPIE_HW_CO_DISABLED)
1070#define TIEPIE_HW_COM_FREQUENCY (TIEPIE_HW_CO_FIXED)
1071
1084#define TIEPIE_HW_CSN_COUNT 2
1085
1091#define TIEPIE_HW_CSB_EXTERNAL 0
1092#define TIEPIE_HW_CSB_INTERNAL 1
1093
1098#define TIEPIE_HW_CS_EXTERNAL (1 << TIEPIE_HW_CSB_EXTERNAL)
1099#define TIEPIE_HW_CS_INTERNAL (1 << TIEPIE_HW_CSB_INTERNAL)
1100
1106#define TIEPIE_HW_CSM_NONE 0
1107#define TIEPIE_HW_CSM_ALL ((1 << TIEPIE_HW_CSN_COUNT) - 1)
1108#define TIEPIE_HW_CSM_FREQUENCY (TIEPIE_HW_CS_EXTERNAL)
1109
1122#define TIEPIE_HW_FMN_COUNT 2
1123
1129#define TIEPIE_HW_FMB_SIGNALFREQUENCY 0
1130#define TIEPIE_HW_FMB_SAMPLERATE 1
1131
1136#define TIEPIE_HW_FM_UNKNOWN 0x00000000
1137
1138#define TIEPIE_HW_FM_SIGNALFREQUENCY (1 << TIEPIE_HW_FMB_SIGNALFREQUENCY)
1139#define TIEPIE_HW_FM_SAMPLERATE (1 << TIEPIE_HW_FMB_SAMPLERATE)
1140
1146#define TIEPIE_HW_FMM_NONE 0x00000000
1147#define TIEPIE_HW_FMM_ALL ((1 << TIEPIE_HW_FMN_COUNT) - 1)
1148
1161#define TIEPIE_HW_GMN_COUNT 12
1162
1168#define TIEPIE_HW_GMB_CONTINUOUS 0
1169#define TIEPIE_HW_GMB_BURST_COUNT 1
1170#define TIEPIE_HW_GMB_GATED_PERIODS 2
1171#define TIEPIE_HW_GMB_GATED 3
1172#define TIEPIE_HW_GMB_GATED_PERIOD_START 4
1173#define TIEPIE_HW_GMB_GATED_PERIOD_FINISH 5
1174#define TIEPIE_HW_GMB_GATED_RUN 6
1175#define TIEPIE_HW_GMB_GATED_RUN_OUTPUT 7
1176#define TIEPIE_HW_GMB_BURST_SAMPLE_COUNT 8
1177#define TIEPIE_HW_GMB_BURST_SAMPLE_COUNT_OUTPUT 9
1178#define TIEPIE_HW_GMB_BURST_SEGMENT_COUNT 10
1179#define TIEPIE_HW_GMB_BURST_SEGMENT_COUNT_OUTPUT 11
1180
1185#define TIEPIE_HW_GM_UNKNOWN 0
1186
1187#define TIEPIE_HW_GM_CONTINUOUS (1 << TIEPIE_HW_GMB_CONTINUOUS)
1188#define TIEPIE_HW_GM_BURST_COUNT (1 << TIEPIE_HW_GMB_BURST_COUNT)
1189#define TIEPIE_HW_GM_GATED_PERIODS (1 << TIEPIE_HW_GMB_GATED_PERIODS)
1190#define TIEPIE_HW_GM_GATED (1 << TIEPIE_HW_GMB_GATED)
1191#define TIEPIE_HW_GM_GATED_PERIOD_START (1 << TIEPIE_HW_GMB_GATED_PERIOD_START)
1192#define TIEPIE_HW_GM_GATED_PERIOD_FINISH (1 << TIEPIE_HW_GMB_GATED_PERIOD_FINISH)
1193#define TIEPIE_HW_GM_GATED_RUN (1 << TIEPIE_HW_GMB_GATED_RUN)
1194#define TIEPIE_HW_GM_GATED_RUN_OUTPUT (1 << TIEPIE_HW_GMB_GATED_RUN_OUTPUT)
1195#define TIEPIE_HW_GM_BURST_SAMPLE_COUNT (1 << TIEPIE_HW_GMB_BURST_SAMPLE_COUNT)
1196#define TIEPIE_HW_GM_BURST_SAMPLE_COUNT_OUTPUT (1 << TIEPIE_HW_GMB_BURST_SAMPLE_COUNT_OUTPUT)
1197#define TIEPIE_HW_GM_BURST_SEGMENT_COUNT (1 << TIEPIE_HW_GMB_BURST_SEGMENT_COUNT)
1198#define TIEPIE_HW_GM_BURST_SEGMENT_COUNT_OUTPUT (1 << TIEPIE_HW_GMB_BURST_SEGMENT_COUNT_OUTPUT)
1199
1205#define TIEPIE_HW_GMM_NONE 0
1206#define TIEPIE_HW_GMM_BURST_COUNT (TIEPIE_HW_GM_BURST_COUNT)
1207#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)
1208#define TIEPIE_HW_GMM_BURST_SAMPLE_COUNT (TIEPIE_HW_GM_BURST_SAMPLE_COUNT | TIEPIE_HW_GM_BURST_SAMPLE_COUNT_OUTPUT)
1209#define TIEPIE_HW_GMM_BURST_SEGMENT_COUNT (TIEPIE_HW_GM_BURST_SEGMENT_COUNT | TIEPIE_HW_GM_BURST_SEGMENT_COUNT_OUTPUT)
1210#define TIEPIE_HW_GMM_BURST (TIEPIE_HW_GMM_BURST_COUNT | TIEPIE_HW_GMM_BURST_SAMPLE_COUNT | TIEPIE_HW_GMM_BURST_SEGMENT_COUNT)
1211#define TIEPIE_HW_GMM_REQUIRE_TRIGGER (TIEPIE_HW_GMM_GATED | TIEPIE_HW_GMM_BURST_SAMPLE_COUNT | TIEPIE_HW_GMM_BURST_SEGMENT_COUNT)
1212#define TIEPIE_HW_GMM_ALL ((1ULL << TIEPIE_HW_GMN_COUNT) - 1)
1213
1214#define TIEPIE_HW_GMM_SIGNALFREQUENCY (TIEPIE_HW_GMM_ALL & ~TIEPIE_HW_GMM_BURST_SAMPLE_COUNT)
1215#define TIEPIE_HW_GMM_SAMPLERATE (TIEPIE_HW_GMM_ALL)
1216
1217#define TIEPIE_HW_GMM_SINE (TIEPIE_HW_GMM_SIGNALFREQUENCY)
1218#define TIEPIE_HW_GMM_TRIANGLE (TIEPIE_HW_GMM_SIGNALFREQUENCY)
1219#define TIEPIE_HW_GMM_SQUARE (TIEPIE_HW_GMM_SIGNALFREQUENCY)
1220#define TIEPIE_HW_GMM_DC (TIEPIE_HW_GM_CONTINUOUS)
1221#define TIEPIE_HW_GMM_NOISE (TIEPIE_HW_GM_CONTINUOUS | TIEPIE_HW_GM_GATED)
1222#define TIEPIE_HW_GMM_ARBITRARY (TIEPIE_HW_GMM_SIGNALFREQUENCY | TIEPIE_HW_GMM_SAMPLERATE)
1223#define TIEPIE_HW_GMM_PULSE (TIEPIE_HW_GMM_SIGNALFREQUENCY & ~TIEPIE_HW_GMM_BURST_SEGMENT_COUNT)
1224
1238#define TIEPIE_HW_GSN_COUNT 4
1239
1246#define TIEPIE_HW_GSB_STOPPED 0
1247#define TIEPIE_HW_GSB_RUNNING 1
1248#define TIEPIE_HW_GSB_BURSTACTIVE 2
1249#define TIEPIE_HW_GSB_WAITING 3
1250
1255#define TIEPIE_HW_GS_STOPPED (1 << TIEPIE_HW_GSB_STOPPED)
1256#define TIEPIE_HW_GS_RUNNING (1 << TIEPIE_HW_GSB_RUNNING)
1257#define TIEPIE_HW_GS_BURSTACTIVE (1 << TIEPIE_HW_GSB_BURSTACTIVE)
1258#define TIEPIE_HW_GS_WAITING (1 << TIEPIE_HW_GSB_WAITING)
1259
1265#define TIEPIE_HW_GSM_NONE 0
1266#define TIEPIE_HW_GSM_ALL ((1UL << TIEPIE_HW_GSN_COUNT) - 1)
1267
1280#define TIEPIE_HW_MMN_COUNT 2
1281
1287#define TIEPIE_HW_MMB_STREAM 0
1288#define TIEPIE_HW_MMB_BLOCK 1
1289
1296#define TIEPIE_HW_MMM_NONE 0
1297#define TIEPIE_HW_MMM_ALL ((1 << TIEPIE_HW_MMN_COUNT) - 1)
1298
1303#define TIEPIE_HW_MM_UNKNOWN 0
1304
1305#define TIEPIE_HW_MM_STREAM (1 << TIEPIE_HW_MMB_STREAM)
1306#define TIEPIE_HW_MM_BLOCK (1 << TIEPIE_HW_MMB_BLOCK )
1307
1319#define TIEPIE_HW_STN_COUNT 7
1320
1326#define TIEPIE_HW_STB_SINE 0
1327#define TIEPIE_HW_STB_TRIANGLE 1
1328#define TIEPIE_HW_STB_SQUARE 2
1329#define TIEPIE_HW_STB_DC 3
1330#define TIEPIE_HW_STB_NOISE 4
1331#define TIEPIE_HW_STB_ARBITRARY 5
1332#define TIEPIE_HW_STB_PULSE 6
1333
1338#define TIEPIE_HW_ST_UNKNOWN 0
1339
1340#define TIEPIE_HW_ST_SINE (1 << TIEPIE_HW_STB_SINE)
1341#define TIEPIE_HW_ST_TRIANGLE (1 << TIEPIE_HW_STB_TRIANGLE)
1342#define TIEPIE_HW_ST_SQUARE (1 << TIEPIE_HW_STB_SQUARE)
1343#define TIEPIE_HW_ST_DC (1 << TIEPIE_HW_STB_DC)
1344#define TIEPIE_HW_ST_NOISE (1 << TIEPIE_HW_STB_NOISE)
1345#define TIEPIE_HW_ST_ARBITRARY (1 << TIEPIE_HW_STB_ARBITRARY)
1346#define TIEPIE_HW_ST_PULSE (1 << TIEPIE_HW_STB_PULSE)
1347
1353#define TIEPIE_HW_STM_NONE 0
1354
1355#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)
1356#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)
1357#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)
1358#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)
1359#define TIEPIE_HW_STM_SYMMETRY (TIEPIE_HW_ST_SINE | TIEPIE_HW_ST_TRIANGLE | TIEPIE_HW_ST_SQUARE )
1360#define TIEPIE_HW_STM_WIDTH ( TIEPIE_HW_ST_PULSE)
1361#define TIEPIE_HW_STM_LEADINGEDGETIME ( TIEPIE_HW_ST_PULSE)
1362#define TIEPIE_HW_STM_TRAILINGEDGETIME ( TIEPIE_HW_ST_PULSE)
1363#define TIEPIE_HW_STM_DATALENGTH ( TIEPIE_HW_ST_ARBITRARY )
1364#define TIEPIE_HW_STM_DATA ( TIEPIE_HW_ST_ARBITRARY )
1365
1366#define TIEPIE_HW_STM_EDGETIME (TIEPIE_HW_STM_LEADINGEDGETIME & TIEPIE_HW_STM_TRAILINGEDGETIME)
1367
1380#define TIEPIE_HW_TCN_COUNT 5
1381
1387#define TIEPIE_HW_TCB_NONE 0
1388#define TIEPIE_HW_TCB_SMALLER 1
1389#define TIEPIE_HW_TCB_LARGER 2
1390#define TIEPIE_HW_TCB_INSIDE 3
1391#define TIEPIE_HW_TCB_OUTSIDE 4
1392
1397#define TIEPIE_HW_TC_UNKNOWN 0
1398
1399#define TIEPIE_HW_TC_NONE (1 << TIEPIE_HW_TCB_NONE)
1400#define TIEPIE_HW_TC_SMALLER (1 << TIEPIE_HW_TCB_SMALLER)
1401#define TIEPIE_HW_TC_LARGER (1 << TIEPIE_HW_TCB_LARGER)
1402#define TIEPIE_HW_TC_INSIDE (1 << TIEPIE_HW_TCB_INSIDE)
1403#define TIEPIE_HW_TC_OUTSIDE (1 << TIEPIE_HW_TCB_OUTSIDE)
1404
1410#define TIEPIE_HW_TCM_NONE 0
1411#define TIEPIE_HW_TCM_ALL ((1 << TIEPIE_HW_TCN_COUNT) - 1)
1412#define TIEPIE_HW_TCM_ENABLED (TIEPIE_HW_TCM_ALL & ~TIEPIE_HW_TC_NONE)
1413
1424#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))
1425
1426#define TIEPIE_HW_COMBI_TRIGGER_IO_ID(dn, tiid) (((dn) << TIEPIE_HW_TIOID_SHIFT_DN) | ((tiid) & ((1 << TIEPIE_HW_TIOID_SHIFT_DN) - 1)))
1427
1438#define TIEPIE_HW_DN_MAIN 0
1439#define TIEPIE_HW_DN_SUB_FIRST 1
1440#define TIEPIE_HW_DN_SUB_SECOND 2
1441
1448#define TIEPIE_HW_PGID_OSCILLOSCOPE 1
1449#define TIEPIE_HW_PGID_GENERATOR 2
1450#define TIEPIE_HW_PGID_EXTERNAL_DSUB 3
1451
1460#define TIEPIE_HW_SGID_MAIN 0
1461#define TIEPIE_HW_SGID_CHANNEL1 1
1462#define TIEPIE_HW_SGID_CHANNEL2 2
1463
1470#define TIEPIE_HW_SGID_PIN1 1
1471#define TIEPIE_HW_SGID_PIN2 2
1472#define TIEPIE_HW_SGID_PIN3 3
1473
1483#define TIEPIE_HW_FID_SCP_TRIGGERED 0
1484
1491#define TIEPIE_HW_FID_GEN_START 0
1492#define TIEPIE_HW_FID_GEN_STOP 1
1493#define TIEPIE_HW_FID_GEN_NEW_PERIOD 2
1494
1495
1502#define TIEPIE_HW_FID_EXT_TRIGGERED 0
1503
1511#define TIEPIE_HW_TIOID_SHIFT_PGID 20
1512#define TIEPIE_HW_TIOID_SHIFT_DN 24
1513#define TIEPIE_HW_TIOID_SHIFT_SGID 8
1514#define TIEPIE_HW_TIOID_SHIFT_FID 0
1515
1522#define TIEPIE_HW_TIID_INVALID 0
1523#define TIEPIE_HW_TIID_EXT1 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN1, TIEPIE_HW_FID_EXT_TRIGGERED )
1524#define TIEPIE_HW_TIID_EXT2 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN2, TIEPIE_HW_FID_EXT_TRIGGERED )
1525#define TIEPIE_HW_TIID_EXT3 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN3, TIEPIE_HW_FID_EXT_TRIGGERED )
1526#define TIEPIE_HW_TIID_GENERATOR_START TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_GENERATOR , TIEPIE_HW_SGID_MAIN, TIEPIE_HW_FID_GEN_START )
1527#define TIEPIE_HW_TIID_GENERATOR_STOP TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_GENERATOR , TIEPIE_HW_SGID_MAIN, TIEPIE_HW_FID_GEN_STOP )
1528#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)
1529
1536#define TIEPIE_HW_TOID_INVALID 0
1537#define TIEPIE_HW_TOID_EXT1 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN1, TIEPIE_HW_FID_EXT_TRIGGERED)
1538#define TIEPIE_HW_TOID_EXT2 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN2, TIEPIE_HW_FID_EXT_TRIGGERED)
1539#define TIEPIE_HW_TOID_EXT3 TIEPIE_HW_TRIGGER_IO_ID(TIEPIE_HW_PGID_EXTERNAL_DSUB, TIEPIE_HW_SGID_PIN3, TIEPIE_HW_FID_EXT_TRIGGERED)
1540
1553#define TIEPIE_HW_TKN_COUNT 15
1554
1560#define TIEPIE_HW_TKB_RISINGEDGE 0
1561#define TIEPIE_HW_TKB_FALLINGEDGE 1
1562#define TIEPIE_HW_TKB_INWINDOW 2
1563#define TIEPIE_HW_TKB_OUTWINDOW 3
1564#define TIEPIE_HW_TKB_ANYEDGE 4
1565#define TIEPIE_HW_TKB_ENTERWINDOW 5
1566#define TIEPIE_HW_TKB_EXITWINDOW 6
1567#define TIEPIE_HW_TKB_PULSEWIDTHPOSITIVE 7
1568#define TIEPIE_HW_TKB_PULSEWIDTHNEGATIVE 8
1569#define TIEPIE_HW_TKB_PULSEWIDTHEITHER 9
1570#define TIEPIE_HW_TKB_RUNTPULSEPOSITIVE 10
1571#define TIEPIE_HW_TKB_RUNTPULSENEGATIVE 11
1572#define TIEPIE_HW_TKB_RUNTPULSEEITHER 12
1573#define TIEPIE_HW_TKB_INTERVALRISING 13
1574#define TIEPIE_HW_TKB_INTERVALFALLING 14
1575
1580#define TIEPIE_HW_TK_UNKNOWN 0
1581#define TIEPIE_HW_TK_RISINGEDGE (1ULL << TIEPIE_HW_TKB_RISINGEDGE)
1582#define TIEPIE_HW_TK_FALLINGEDGE (1ULL << TIEPIE_HW_TKB_FALLINGEDGE)
1583#define TIEPIE_HW_TK_INWINDOW (1ULL << TIEPIE_HW_TKB_INWINDOW)
1584#define TIEPIE_HW_TK_OUTWINDOW (1ULL << TIEPIE_HW_TKB_OUTWINDOW)
1585#define TIEPIE_HW_TK_ANYEDGE (1ULL << TIEPIE_HW_TKB_ANYEDGE)
1586#define TIEPIE_HW_TK_ENTERWINDOW (1ULL << TIEPIE_HW_TKB_ENTERWINDOW)
1587#define TIEPIE_HW_TK_EXITWINDOW (1ULL << TIEPIE_HW_TKB_EXITWINDOW)
1588#define TIEPIE_HW_TK_PULSEWIDTHPOSITIVE (1ULL << TIEPIE_HW_TKB_PULSEWIDTHPOSITIVE)
1589#define TIEPIE_HW_TK_PULSEWIDTHNEGATIVE (1ULL << TIEPIE_HW_TKB_PULSEWIDTHNEGATIVE)
1590#define TIEPIE_HW_TK_PULSEWIDTHEITHER (1ULL << TIEPIE_HW_TKB_PULSEWIDTHEITHER)
1591#define TIEPIE_HW_TK_RUNTPULSEPOSITIVE (1ULL << TIEPIE_HW_TKB_RUNTPULSEPOSITIVE)
1592#define TIEPIE_HW_TK_RUNTPULSENEGATIVE (1ULL << TIEPIE_HW_TKB_RUNTPULSENEGATIVE)
1593#define TIEPIE_HW_TK_RUNTPULSEEITHER (1ULL << TIEPIE_HW_TKB_RUNTPULSEEITHER)
1594#define TIEPIE_HW_TK_INTERVALRISING (1ULL << TIEPIE_HW_TKB_INTERVALRISING)
1595#define TIEPIE_HW_TK_INTERVALFALLING (1ULL << TIEPIE_HW_TKB_INTERVALFALLING)
1596
1602#define TIEPIE_HW_TKM_NONE 0
1603#define TIEPIE_HW_TKM_EDGE (TIEPIE_HW_TK_RISINGEDGE | TIEPIE_HW_TK_FALLINGEDGE | TIEPIE_HW_TK_ANYEDGE)
1604#define TIEPIE_HW_TKM_WINDOW (TIEPIE_HW_TK_INWINDOW | TIEPIE_HW_TK_OUTWINDOW | TIEPIE_HW_TK_ENTERWINDOW | TIEPIE_HW_TK_EXITWINDOW)
1605#define TIEPIE_HW_TKM_PULSEWIDTH (TIEPIE_HW_TK_PULSEWIDTHPOSITIVE | TIEPIE_HW_TK_PULSEWIDTHNEGATIVE | TIEPIE_HW_TK_PULSEWIDTHEITHER)
1606#define TIEPIE_HW_TKM_RUNTPULSE (TIEPIE_HW_TK_RUNTPULSEPOSITIVE | TIEPIE_HW_TK_RUNTPULSENEGATIVE | TIEPIE_HW_TK_RUNTPULSEEITHER)
1607#define TIEPIE_HW_TKM_PULSE (TIEPIE_HW_TKM_PULSEWIDTH | TIEPIE_HW_TKM_RUNTPULSE)
1608#define TIEPIE_HW_TKM_INTERVAL (TIEPIE_HW_TK_INTERVALRISING | TIEPIE_HW_TK_INTERVALFALLING)
1609#define TIEPIE_HW_TKM_TIME (TIEPIE_HW_TKM_PULSEWIDTH | TIEPIE_HW_TKM_WINDOW | TIEPIE_HW_TKM_RUNTPULSE | TIEPIE_HW_TKM_INTERVAL)
1610#define TIEPIE_HW_TKM_ALL ((1ULL << TIEPIE_HW_TKN_COUNT) - 1)
1611
1624#define TIEPIE_HW_TLMN_COUNT 2
1625
1631#define TIEPIE_HW_TLMB_RELATIVE 0
1632#define TIEPIE_HW_TLMB_ABSOLUTE 1
1633
1638#define TIEPIE_HW_TLM_UNKNOWN 0
1639
1640#define TIEPIE_HW_TLM_RELATIVE (1 << TIEPIE_HW_TLMB_RELATIVE)
1641#define TIEPIE_HW_TLM_ABSOLUTE (1 << TIEPIE_HW_TLMB_ABSOLUTE)
1642
1648#define TIEPIE_HW_TLMM_NONE 0
1649#define TIEPIE_HW_TLMM_ALL ((1 << TIEPIE_HW_TLMN_COUNT) - 1)
1650
1663#define TIEPIE_HW_TO_INFINITY (-1.0)
1664
1676#define TIEPIE_HW_TOEN_COUNT 6
1677
1683#define TIEPIE_HW_TOEB_GENERATOR_START 0
1684#define TIEPIE_HW_TOEB_GENERATOR_STOP 1
1685#define TIEPIE_HW_TOEB_GENERATOR_NEWPERIOD 2
1686#define TIEPIE_HW_TOEB_OSCILLOSCOPE_RUNNING 3
1687#define TIEPIE_HW_TOEB_OSCILLOSCOPE_TRIGGERED 4
1688#define TIEPIE_HW_TOEB_MANUAL 5
1689
1694#define TIEPIE_HW_TOE_UNKNOWN 0
1695#define TIEPIE_HW_TOE_GENERATOR_START (1 << TIEPIE_HW_TOEB_GENERATOR_START)
1696#define TIEPIE_HW_TOE_GENERATOR_STOP (1 << TIEPIE_HW_TOEB_GENERATOR_STOP)
1697#define TIEPIE_HW_TOE_GENERATOR_NEWPERIOD (1 << TIEPIE_HW_TOEB_GENERATOR_NEWPERIOD)
1698#define TIEPIE_HW_TOE_OSCILLOSCOPE_RUNNING (1 << TIEPIE_HW_TOEB_OSCILLOSCOPE_RUNNING)
1699#define TIEPIE_HW_TOE_OSCILLOSCOPE_TRIGGERED (1 << TIEPIE_HW_TOEB_OSCILLOSCOPE_TRIGGERED)
1700#define TIEPIE_HW_TOE_MANUAL (1 << TIEPIE_HW_TOEB_MANUAL)
1701
1707#define TIEPIE_HW_TOEM_NONE 0
1708#define TIEPIE_HW_TOEM_GENERATOR (TIEPIE_HW_TOE_GENERATOR_START | TIEPIE_HW_TOE_GENERATOR_STOP | TIEPIE_HW_TOE_GENERATOR_NEWPERIOD)
1709#define TIEPIE_HW_TOEM_OSCILLOSCOPE (TIEPIE_HW_TOE_OSCILLOSCOPE_RUNNING | TIEPIE_HW_TOE_OSCILLOSCOPE_TRIGGERED)
1710#define TIEPIE_HW_TOEM_ALL ((1ULL << TIEPIE_HW_TOEN_COUNT) - 1)
1711
1733{
1774
1775typedef uint32_t tiepie_hw_handle;
1776typedef uint8_t tiepie_hw_bool;
1777
1805
1826
1856
1857typedef uint8_t tiepie_hw_tristate;
1859
1860typedef struct tiepie_hw_date
1861{
1862 uint16_t year;
1863 uint8_t month;
1864 uint8_t day;
1866
1873
1874#ifdef INCLUDED_BY_MATLAB
1875 typedef void* tiepie_hw_devicelist_callback;
1876 typedef void* tiepie_hw_handle_callback;
1877 typedef void* tiepie_hw_event_callback;
1878#else
1879 typedef void(*tiepie_hw_devicelist_callback)(void* data, uint32_t device_types, uint32_t serial_number);
1880 typedef void(*tiepie_hw_handle_callback)(void* data, tiepie_hw_handle handle);
1881 typedef void(*tiepie_hw_event_callback)(void* data, tiepie_hw_event event, uint32_t value);
1882#endif
1883
1918TIEPIE_HW_API void tiepie_hw_init(void);
1919
1931
1943TIEPIE_HW_API void tiepie_hw_fini(void);
1944
1948typedef struct tiepie_hw_version
1949{
1950 uint16_t major;
1951 uint16_t minor;
1952 uint16_t patch;
1953 uint16_t build;
1954 const char* extra;
1956
1970TIEPIE_HW_API const tiepie_hw_version* tiepie_hw_get_version(void);
1971
1996TIEPIE_HW_API uint32_t tiepie_hw_get_config(uint8_t* buffer, uint32_t length);
1997
2010
2028TIEPIE_HW_API const char* tiepie_hw_get_last_status_str(void);
2029
2130// Workaround: Without this line Doxygen adds the documentation below to the group above.
2131
2150TIEPIE_HW_API void tiepie_hw_devicelist_update(void);
2151
2165
2188
2200TIEPIE_HW_API uint32_t tiepie_hw_devicelist_get_count(void);
2201
2216
2231
2246
2281
2319
2357
2371
2379
2400TIEPIE_HW_API uint32_t tiepie_hw_devicelist_create_combined_device(const tiepie_hw_handle* handles, uint32_t count);
2401
2424
2440TIEPIE_HW_API void tiepie_hw_devicelist_remove_device(uint32_t serial_number, tiepie_hw_bool force);
2441
2453
2463// Workaround: Without this line Doxygen adds the documentation below to the group above.
2464
2479
2498TIEPIE_HW_API tiepie_hw_bool tiepie_hw_devicelistitem_can_open(tiepie_hw_handle handle, uint32_t device_type);
2499
2518TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_opened_by(tiepie_hw_handle handle, uint32_t device_type, char* buffer, uint32_t length);
2519
2535
2568TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_name(tiepie_hw_handle handle, char* buffer, uint32_t length);
2569
2602TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_name_short(tiepie_hw_handle handle, char* buffer, uint32_t length);
2603
2636TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_name_shortest(tiepie_hw_handle handle, char* buffer, uint32_t length);
2637
2659
2678
2695TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_ip_address(tiepie_hw_handle handle, char* buffer, uint32_t length);
2696
2712
2721
2730
2761
2769// Workaround: Without this line Doxygen adds the documentation below to the group above.
2770
2802TIEPIE_HW_API uint32_t tiepie_hw_devicelistitem_get_contained_serial_numbers(tiepie_hw_handle handle, uint32_t* buffer, uint32_t length);
2803
2820TIEPIE_HW_API tiepie_hw_productid tiepie_hw_devicelistitemcombined_get_product_id(tiepie_hw_handle handle, uint32_t contained_device_serial_number);
2821
2842TIEPIE_HW_API uint32_t tiepie_hw_devicelistitemcombined_get_name(tiepie_hw_handle handle, uint32_t contained_device_serial_number, char* buffer, uint32_t length);
2843
2864TIEPIE_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);
2865
2886TIEPIE_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);
2887
2904TIEPIE_HW_API tiepie_hw_date tiepie_hw_devicelistitemcombined_get_calibration_date(tiepie_hw_handle handle, uint32_t contained_device_serial_number);
2905
2922TIEPIE_HW_API uint16_t tiepie_hw_devicelistitemcombined_get_oscilloscope_channel_count(tiepie_hw_handle handle, uint32_t contained_device_serial_number);
2923
2932// Workaround: Without this line Doxygen adds the documentation below to the group above.
2933
2947
2961
2975
2983// Workaround: Without this line Doxygen adds the documentation below to the group above.
2984
2993
3003
3009// Workaround: Without this line Doxygen adds the documentation below to the group above.
3010
3020TIEPIE_HW_API tiepie_hw_bool tiepie_hw_network_servers_add(const char* url, uint32_t length, tiepie_hw_handle* handle);
3021
3031TIEPIE_HW_API tiepie_hw_bool tiepie_hw_network_servers_remove(const char* url, uint32_t length, tiepie_hw_bool force);
3032
3039TIEPIE_HW_API uint32_t tiepie_hw_network_servers_get_count(void);
3040
3049
3058TIEPIE_HW_API tiepie_hw_handle tiepie_hw_network_servers_get_by_url(const char* url, uint32_t length);
3059
3066// Workaround: Without this line Doxygen adds the documentation below to the group above.
3067
3081
3103// Workaround: Without this line Doxygen adds the documentation below to the group above.
3104
3125TIEPIE_HW_API void tiepie_hw_object_close(tiepie_hw_handle handle);
3126
3141
3156
3164// Workaround: Without this line Doxygen adds the documentation below to the group above.
3165
3175
3186// Workaround: Without this line Doxygen adds the documentation below to the group above.
3187
3194// Workaround: Without this line Doxygen adds the documentation below to the group above.
3195
3219
3236
3253TIEPIE_HW_API uint32_t tiepie_hw_device_get_ip_address(tiepie_hw_handle handle, char* buffer, uint32_t length);
3254
3269TIEPIE_HW_API uint16_t tiepie_hw_device_get_ip_port(tiepie_hw_handle handle);
3270
3287
3303TIEPIE_HW_API uint32_t tiepie_hw_device_get_type(tiepie_hw_handle handle);
3304
3338TIEPIE_HW_API uint32_t tiepie_hw_device_get_name(tiepie_hw_handle handle, char* buffer, uint32_t length);
3339
3373TIEPIE_HW_API uint32_t tiepie_hw_device_get_name_short(tiepie_hw_handle handle, char* buffer, uint32_t length);
3374
3408TIEPIE_HW_API uint32_t tiepie_hw_device_get_name_shortest(tiepie_hw_handle handle, char* buffer, uint32_t length);
3409
3425
3448
3467
3487
3507
3526
3547
3565
3580// Workaround: Without this line Doxygen adds the documentation below to the group above.
3581
3598
3619TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_input_index_by_id(tiepie_hw_handle handle, uint32_t id);
3620
3626// Workaround: Without this line Doxygen adds the documentation below to the group above.
3627
3641
3651// Workaround: Without this line Doxygen adds the documentation below to the group above.
3652
3673
3695
3708// Workaround: Without this line Doxygen adds the documentation below to the group above.
3709
3730TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_get_kinds(tiepie_hw_handle handle, uint16_t input);
3731
3733
3756TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_trigger_input_get_kinds_ex(tiepie_hw_handle handle, uint16_t input, uint32_t measure_mode);
3757
3759
3780TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_get_kind(tiepie_hw_handle handle, uint16_t input);
3781
3804TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_set_kind(tiepie_hw_handle handle, uint16_t input, uint64_t value);
3805
3818// Workaround: Without this line Doxygen adds the documentation below to the group above.
3819
3842
3844
3854TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_trigger_input_is_available_ex(tiepie_hw_handle handle, uint16_t input, uint32_t measure_mode);
3855
3857
3876TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_input_get_id(tiepie_hw_handle handle, uint16_t input);
3877
3897TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_input_get_name(tiepie_hw_handle handle, uint16_t input, char* buffer, uint32_t length);
3898
3912// Workaround: Without this line Doxygen adds the documentation below to the group above.
3913
3930
3949TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_output_index_by_id(tiepie_hw_handle handle, uint32_t id);
3950
3959// Workaround: Without this line Doxygen adds the documentation below to the group above.
3960
3980
4001
4018// Workaround: Without this line Doxygen adds the documentation below to the group above.
4019
4039TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_get_events(tiepie_hw_handle handle, uint16_t output);
4040
4060TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_get_event(tiepie_hw_handle handle, uint16_t output);
4061
4083TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_set_event(tiepie_hw_handle handle, uint16_t output, uint64_t value);
4084
4096// Workaround: Without this line Doxygen adds the documentation below to the group above.
4097
4116TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_output_get_id(tiepie_hw_handle handle, uint16_t output);
4117
4137TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_output_get_name(tiepie_hw_handle handle, uint16_t output, char* buffer, uint32_t length);
4138
4158
4183// Workaround: Without this line Doxygen adds the documentation below to the group above.
4184
4200
4221
4223
4237TIEPIE_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);
4238
4240
4247// Workaround: Without this line Doxygen adds the documentation below to the group above.
4248
4267
4285
4303
4321TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_impedance(tiepie_hw_handle handle, uint16_t ch);
4322
4332// Workaround: Without this line Doxygen adds the documentation below to the group above.
4333
4355TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_bandwidths(tiepie_hw_handle handle, uint16_t ch, double* list, uint32_t length);
4356
4376TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_bandwidth(tiepie_hw_handle handle, uint16_t ch);
4377
4398TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_set_bandwidth(tiepie_hw_handle handle, uint16_t ch, double bandwidth);
4399
4409// Workaround: Without this line Doxygen adds the documentation below to the group above.
4410
4429TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_get_couplings(tiepie_hw_handle handle, uint16_t ch);
4430
4449TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_get_coupling(tiepie_hw_handle handle, uint16_t ch);
4450
4473TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_set_coupling(tiepie_hw_handle handle, uint16_t ch, uint64_t coupling);
4474
4486// Workaround: Without this line Doxygen adds the documentation below to the group above.
4487
4506
4528
4550// Workaround: Without this line Doxygen adds the documentation below to the group above.
4551
4570
4591
4630TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_ranges(tiepie_hw_handle handle, uint16_t ch, double* list, uint32_t length);
4631
4633
4646TIEPIE_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);
4647
4649
4668TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_get_range(tiepie_hw_handle handle, uint16_t ch);
4669
4706TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_set_range(tiepie_hw_handle handle, uint16_t ch, double range);
4707
4729// Workaround: Without this line Doxygen adds the documentation below to the group above.
4730
4748
4769
4797
4820
4843
4866
4895TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_set_safeground_threshold(tiepie_hw_handle handle, uint16_t ch, double threshold);
4896
4898
4908TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_verify_safeground_threshold(tiepie_hw_handle handle, uint16_t ch, double threshold);
4909
4911
4927// Workaround: Without this line Doxygen adds the documentation below to the group above.
4928
4946
4948
4967TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_has_trigger_ex(tiepie_hw_handle handle, uint16_t ch, uint32_t measure_mode);
4968
4970
4988
4990
5005TIEPIE_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);
5006
5008
5022
5035// Workaround: Without this line Doxygen adds the documentation below to the group above.
5036
5056
5079
5093// Workaround: Without this line Doxygen adds the documentation below to the group above.
5094
5114TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_get_kinds(tiepie_hw_handle handle, uint16_t ch);
5115
5117
5127TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_get_kinds_ex(tiepie_hw_handle handle, uint16_t ch, uint32_t measure_mode);
5128
5130
5150TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_get_kind(tiepie_hw_handle handle, uint16_t ch);
5151
5174TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_channel_trigger_set_kind(tiepie_hw_handle handle, uint16_t ch, uint64_t value);
5175
5196// Workaround: Without this line Doxygen adds the documentation below to the group above.
5197
5216
5235
5255TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_set_level_mode(tiepie_hw_handle handle, uint16_t ch, uint32_t value);
5256
5276// Workaround: Without this line Doxygen adds the documentation below to the group above.
5277
5299
5321TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_get_level(tiepie_hw_handle handle, uint16_t ch, uint32_t index);
5322
5348TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_set_level(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value);
5349
5367// Workaround: Without this line Doxygen adds the documentation below to the group above.
5368
5390
5412TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_get_hysteresis(tiepie_hw_handle handle, uint16_t ch, uint32_t index);
5413
5437TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_set_hysteresis(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value);
5438
5452// Workaround: Without this line Doxygen adds the documentation below to the group above.
5453
5475
5477
5488TIEPIE_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);
5489
5491
5512
5534TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_trigger_set_condition(tiepie_hw_handle handle, uint16_t ch, uint32_t value);
5535
5551// Workaround: Without this line Doxygen adds the documentation below to the group above.
5552
5578
5603TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_get_time(tiepie_hw_handle handle, uint16_t ch, uint32_t index);
5604
5632TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_set_time(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value);
5633
5635
5650TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_trigger_verify_time(tiepie_hw_handle handle, uint16_t ch, uint32_t index, double value);
5651
5671TIEPIE_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);
5672
5674
5702
5723
5746
5775
5796
5818TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_amplitude(tiepie_hw_handle handle, uint16_t ch, double value);
5819
5849
5870
5892TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_frequency(tiepie_hw_handle handle, uint16_t ch, double value);
5893
5925
5946
5968TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_offset(tiepie_hw_handle handle, uint16_t ch, double value);
5969
6006
6027
6049TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_symmetry(tiepie_hw_handle handle, uint16_t ch, double value);
6050
6087
6107TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_get_phase(tiepie_hw_handle handle, uint16_t ch);
6108
6130TIEPIE_HW_API double tiepie_hw_oscilloscope_channel_demo_set_phase(tiepie_hw_handle handle, uint16_t ch, double value);
6131
6161
6182
6204
6265// Workaround: Without this line Doxygen adds the documentation below to the group above.
6266
6327#ifdef INCLUDED_BY_MATLAB
6328TIEPIE_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);
6329#else
6330# ifdef LIBTIEPIE_HW_DYNAMIC
6331typedef 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);
6332# else
6333TIEPIE_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);
6334# endif
6335#endif
6336
6366TIEPIE_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);
6367
6398TIEPIE_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);
6399
6431TIEPIE_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);
6432
6465TIEPIE_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);
6466
6500TIEPIE_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);
6501
6536TIEPIE_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);
6537
6573TIEPIE_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);
6574
6611TIEPIE_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);
6612
6633
6655TIEPIE_HW_API void tiepie_hw_oscilloscope_channel_get_data_value_range(tiepie_hw_handle handle, uint16_t ch, double* min, double* max);
6656
6676
6696
6703// Workaround: Without this line Doxygen adds the documentation below to the group above.
6704
6717TIEPIE_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);
6718
6729TIEPIE_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);
6730
6742TIEPIE_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);
6743
6756TIEPIE_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);
6757
6771TIEPIE_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);
6772
6787TIEPIE_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);
6788
6804TIEPIE_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);
6805
6822TIEPIE_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);
6823
6841TIEPIE_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);
6842
6851TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_channel_get_data_raw_type(tiepie_hw_handle handle, uint16_t ch);
6852
6866TIEPIE_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);
6867
6879TIEPIE_HW_API int64_t tiepie_hw_oscilloscope_channel_get_data_raw_value_min(tiepie_hw_handle handle, uint16_t ch);
6880
6892TIEPIE_HW_API int64_t tiepie_hw_oscilloscope_channel_get_data_raw_value_zero(tiepie_hw_handle handle, uint16_t ch);
6893
6905TIEPIE_HW_API int64_t tiepie_hw_oscilloscope_channel_get_data_raw_value_max(tiepie_hw_handle handle, uint16_t ch);
6906
6915TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_channel_is_range_max_reachable(tiepie_hw_handle handle, uint16_t ch);
6916
6930// Workaround: Without this line Doxygen adds the documentation below to the group above.
6931
6951
6968
6991
7031// Workaround: Without this line Doxygen adds the documentation below to the group above.
7032
7050
7068
7088TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_measure_mode(tiepie_hw_handle handle, uint32_t value);
7089
7100// Workaround: Without this line Doxygen adds the documentation below to the group above.
7101
7117
7139
7159
7179
7204
7226
7268// Workaround: Without this line Doxygen adds the documentation below to the group above.
7269
7287
7306
7326TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_auto_resolution_mode(tiepie_hw_handle handle, uint32_t value);
7327
7366TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_resolutions(tiepie_hw_handle handle, uint8_t* list, uint32_t length);
7367
7385
7406TIEPIE_HW_API uint8_t tiepie_hw_oscilloscope_set_resolution(tiepie_hw_handle handle, uint8_t value);
7407
7423
7425
7434TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_is_resolution_enhanced_ex(tiepie_hw_handle handle, uint8_t value);
7435
7437
7460// Workaround: Without this line Doxygen adds the documentation below to the group above.
7461
7482
7503
7525TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_clock_source(tiepie_hw_handle handle, uint32_t value);
7526
7565TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_source_frequencies(tiepie_hw_handle handle, double* list, uint32_t length);
7566
7568
7597TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_source_frequencies_ex(tiepie_hw_handle handle, uint32_t value, double* list, uint32_t length);
7598
7600
7624
7652
7671// Workaround: Without this line Doxygen adds the documentation below to the group above.
7672
7693
7714
7736TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_clock_output(tiepie_hw_handle handle, uint32_t value);
7737
7776TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_clock_output_frequencies(tiepie_hw_handle handle, double* list, uint32_t length);
7777
7779
7808TIEPIE_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);
7809
7811
7835
7863
7887// Workaround: Without this line Doxygen adds the documentation below to the group above.
7888
7906
7924
7947TIEPIE_HW_API double tiepie_hw_oscilloscope_set_sample_rate(tiepie_hw_handle handle, double value);
7948
7950
7964TIEPIE_HW_API double tiepie_hw_oscilloscope_verify_sample_rate(tiepie_hw_handle handle, double value);
7965
7983TIEPIE_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);
7984
8003TIEPIE_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);
8004
8006
8025// Workaround: Without this line Doxygen adds the documentation below to the group above.
8026
8044
8046
8061TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_get_record_length_max_ex(tiepie_hw_handle handle, uint32_t measure_mode, uint8_t resolution);
8062
8064
8082
8104TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_set_record_length(tiepie_hw_handle handle, uint64_t record_length);
8105
8107
8121TIEPIE_HW_API uint64_t tiepie_hw_oscilloscope_verify_record_length(tiepie_hw_handle handle, uint64_t record_length);
8122
8140TIEPIE_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);
8141
8143
8167// Workaround: Without this line Doxygen adds the documentation below to the group above.
8168
8186
8207TIEPIE_HW_API double tiepie_hw_oscilloscope_set_pre_sample_ratio(tiepie_hw_handle handle, double value);
8208
8218// Workaround: Without this line Doxygen adds the documentation below to the group above.
8219
8238
8240
8253TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_get_segment_count_max_ex(tiepie_hw_handle handle, uint32_t measure_mode);
8254
8256
8276
8298TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_set_segment_count(tiepie_hw_handle handle, uint32_t value);
8299
8301
8315TIEPIE_HW_API uint32_t tiepie_hw_oscilloscope_verify_segment_count(tiepie_hw_handle handle, uint32_t value);
8316
8334TIEPIE_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);
8335
8337
8348// Workaround: Without this line Doxygen adds the documentation below to the group above.
8349
8365
8367
8385TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_has_trigger_ex(tiepie_hw_handle handle, uint32_t measure_mode);
8386
8388
8413// Workaround: Without this line Doxygen adds the documentation below to the group above.
8414
8432
8452TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_set_timeout(tiepie_hw_handle handle, double value);
8453
8455
8467TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_verify_timeout(tiepie_hw_handle handle, double value);
8468
8482TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_verify_timeout_ex(tiepie_hw_handle handle, double value, uint32_t measure_mode, double sample_rate);
8483
8485
8501// Workaround: Without this line Doxygen adds the documentation below to the group above.
8502
8518
8520
8538TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_trigger_has_delay_ex(tiepie_hw_handle handle, uint32_t measure_mode);
8539
8541
8561
8563
8588TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_get_delay_max_ex(tiepie_hw_handle handle, uint32_t measure_mode, double sample_rate);
8589
8591
8611
8633TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_set_delay(tiepie_hw_handle handle, double value);
8634
8636
8651TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_verify_delay(tiepie_hw_handle handle, double value);
8652
8669TIEPIE_HW_API double tiepie_hw_oscilloscope_trigger_verify_delay_ex(tiepie_hw_handle handle, double value, uint32_t measure_mode, double sample_rate);
8670
8672
8680// Workaround: Without this line Doxygen adds the documentation below to the group above.
8681
8697
8714
8733
8753
8773// Workaround: Without this line Doxygen adds the documentation below to the group above.
8774
8791
8810
8832
8834
8863TIEPIE_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);
8864
8866
8888
8947TIEPIE_HW_API uint16_t tiepie_hw_oscilloscope_get_sureconnect_data(tiepie_hw_handle handle, tiepie_hw_tristate* buffer, uint16_t channel_count);
8948
8967// Workaround: Without this line Doxygen adds the documentation below to the group above.
8968
8985
9001
9018
9035
9052
9069
9071
9087TIEPIE_HW_API void tiepie_hw_generator_get_output_value_min_max(tiepie_hw_handle handle, double* min, double* max);
9088
9090
9111// Workaround: Without this line Doxygen adds the documentation below to the group above.
9112
9132
9141
9159
9176
9196
9214
9233
9255
9275
9294
9325// Workaround: Without this line Doxygen adds the documentation below to the group above.
9326
9344
9362
9385TIEPIE_HW_API uint32_t tiepie_hw_generator_set_signal_type(tiepie_hw_handle handle, uint32_t value);
9386
9409// Workaround: Without this line Doxygen adds the documentation below to the group above.
9410
9430
9432
9449TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_amplitude_ex(tiepie_hw_handle handle, uint32_t signal_type);
9450
9452
9475
9498
9500
9527TIEPIE_HW_API void tiepie_hw_generator_get_amplitude_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double* min, double* max);
9528
9530
9550
9576TIEPIE_HW_API double tiepie_hw_generator_set_amplitude(tiepie_hw_handle handle, double amplitude);
9577
9579
9606TIEPIE_HW_API double tiepie_hw_generator_verify_amplitude(tiepie_hw_handle handle, double amplitude);
9607
9637TIEPIE_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);
9638
9640
9654// Workaround: Without this line Doxygen adds the documentation below to the group above.
9655
9691TIEPIE_HW_API uint32_t tiepie_hw_generator_get_amplitude_ranges(tiepie_hw_handle handle, double* list, uint32_t length);
9692
9713
9750TIEPIE_HW_API double tiepie_hw_generator_set_amplitude_range(tiepie_hw_handle handle, double value);
9751
9772
9796
9817// Workaround: Without this line Doxygen adds the documentation below to the group above.
9818
9838
9840
9857TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_offset_ex(tiepie_hw_handle handle, uint32_t signal_type);
9858
9860
9880
9900
9902
9927TIEPIE_HW_API void tiepie_hw_generator_get_offset_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double* min, double* max);
9928
9930
9950
9973TIEPIE_HW_API double tiepie_hw_generator_set_offset(tiepie_hw_handle handle, double value);
9974
9976
10001TIEPIE_HW_API double tiepie_hw_generator_verify_offset(tiepie_hw_handle handle, double value);
10002
10031TIEPIE_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);
10032
10034
10069// Workaround: Without this line Doxygen adds the documentation below to the group above.
10070
10089
10091
10112TIEPIE_HW_API uint32_t tiepie_hw_generator_get_frequency_modes_ex(tiepie_hw_handle handle, uint32_t signal_type);
10113
10115
10134
10159TIEPIE_HW_API uint32_t tiepie_hw_generator_set_frequency_mode(tiepie_hw_handle handle, uint32_t value);
10160
10165// Workaround: Without this line Doxygen adds the documentation below to the group above.
10166
10186
10188
10206TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_frequency_ex(tiepie_hw_handle handle, uint32_t frequency_mode, uint32_t signal_type);
10207
10209
10229
10249
10251
10277TIEPIE_HW_API void tiepie_hw_generator_get_frequency_min_max(tiepie_hw_handle handle, uint32_t frequency_mode, double* min, double* max);
10278
10304TIEPIE_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);
10305
10307
10327
10353TIEPIE_HW_API double tiepie_hw_generator_set_frequency(tiepie_hw_handle handle, double value);
10354
10356
10381TIEPIE_HW_API double tiepie_hw_generator_verify_frequency(tiepie_hw_handle handle, double value);
10382
10412TIEPIE_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);
10413
10415
10416
10436// Workaround: Without this line Doxygen adds the documentation below to the group above.
10437
10457
10459
10476TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_phase_ex(tiepie_hw_handle handle, uint32_t signal_type);
10477
10479
10500
10521
10523
10548TIEPIE_HW_API void tiepie_hw_generator_get_phase_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double* min, double* max);
10549
10551
10572
10598TIEPIE_HW_API double tiepie_hw_generator_set_phase(tiepie_hw_handle handle, double value);
10599
10601
10626TIEPIE_HW_API double tiepie_hw_generator_verify_phase(tiepie_hw_handle handle, double value);
10627
10654TIEPIE_HW_API double tiepie_hw_generator_verify_phase_ex(tiepie_hw_handle handle, double value, uint32_t signal_type);
10655
10657
10678// Workaround: Without this line Doxygen adds the documentation below to the group above.
10679
10699
10701
10718TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_symmetry_ex(tiepie_hw_handle handle, uint32_t signal_type);
10719
10721
10741
10761
10763
10788TIEPIE_HW_API void tiepie_hw_generator_get_symmetry_min_max_ex(tiepie_hw_handle handle, uint32_t signal_type, double* min, double* max);
10789
10791
10811
10835TIEPIE_HW_API double tiepie_hw_generator_set_symmetry(tiepie_hw_handle handle, double value);
10836
10838
10863TIEPIE_HW_API double tiepie_hw_generator_verify_symmetry(tiepie_hw_handle handle, double value);
10864
10891TIEPIE_HW_API double tiepie_hw_generator_verify_symmetry_ex(tiepie_hw_handle handle, double value, uint32_t signal_type);
10892
10894
10918// Workaround: Without this line Doxygen adds the documentation below to the group above.
10919
10939
10941
10958TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_width_ex(tiepie_hw_handle handle, uint32_t signal_type);
10959
10961
10981
11001
11003
11029TIEPIE_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);
11030
11032
11052
11077TIEPIE_HW_API double tiepie_hw_generator_set_width(tiepie_hw_handle handle, double value);
11078
11080
11105TIEPIE_HW_API double tiepie_hw_generator_verify_width(tiepie_hw_handle handle, double value);
11106
11134TIEPIE_HW_API double tiepie_hw_generator_verify_width_ex(tiepie_hw_handle handle, double value, uint32_t signal_type, double signal_frequency);
11135
11137
11169// Workaround: Without this line Doxygen adds the documentation below to the group above.
11170
11194
11196
11228TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_edge_time_ex(tiepie_hw_handle handle, uint32_t signal_type);
11229
11231
11256
11281
11283
11320TIEPIE_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);
11321
11323
11348
11377TIEPIE_HW_API double tiepie_hw_generator_set_leading_edge_time(tiepie_hw_handle handle, double leading_edge_time);
11378
11380
11414TIEPIE_HW_API double tiepie_hw_generator_verify_leading_edge_time(tiepie_hw_handle handle, double leading_edge_time);
11415
11454TIEPIE_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);
11455
11457
11482
11507
11509
11547TIEPIE_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);
11548
11550
11575
11604TIEPIE_HW_API double tiepie_hw_generator_set_trailing_edge_time(tiepie_hw_handle handle, double value);
11605
11607
11640TIEPIE_HW_API double tiepie_hw_generator_verify_trailing_edge_time(tiepie_hw_handle handle, double value);
11641
11679TIEPIE_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);
11680
11682
11735// Workaround: Without this line Doxygen adds the documentation below to the group above.
11736
11753
11755
11772TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_data_ex(tiepie_hw_handle handle, uint32_t signal_type);
11773
11775
11794
11813
11815
11839TIEPIE_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);
11840
11842
11861
11863
11888TIEPIE_HW_API uint64_t tiepie_hw_generator_verify_data_length(tiepie_hw_handle handle, uint64_t value);
11889
11915TIEPIE_HW_API uint64_t tiepie_hw_generator_verify_data_length_ex(tiepie_hw_handle handle, uint64_t value, uint32_t signal_type);
11916
11918
11946TIEPIE_HW_API void tiepie_hw_generator_set_data(tiepie_hw_handle handle, const float* buffer, uint64_t sample_count);
11947
11949
11975TIEPIE_HW_API void tiepie_hw_generator_set_data_ex(tiepie_hw_handle handle, const float* buffer, uint64_t sample_count, uint32_t signal_type);
11976
11983// Workaround: Without this line Doxygen adds the documentation below to the group above.
11984
11993TIEPIE_HW_API uint32_t tiepie_hw_generator_get_data_raw_type(tiepie_hw_handle handle);
11994
12004TIEPIE_HW_API void tiepie_hw_generator_get_data_raw_value_range(tiepie_hw_handle handle, int64_t* min, int64_t* zero, int64_t* max);
12005
12013TIEPIE_HW_API int64_t tiepie_hw_generator_get_data_raw_value_min(tiepie_hw_handle handle);
12014
12022TIEPIE_HW_API int64_t tiepie_hw_generator_get_data_raw_value_zero(tiepie_hw_handle handle);
12023
12031TIEPIE_HW_API int64_t tiepie_hw_generator_get_data_raw_value_max(tiepie_hw_handle handle);
12032
12043TIEPIE_HW_API void tiepie_hw_generator_set_data_raw(tiepie_hw_handle handle, const void* buffer, uint64_t sample_count);
12044
12056TIEPIE_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);
12057
12063
12086// Workaround: Without this line Doxygen adds the documentation below to the group above.
12087
12106
12108
12126TIEPIE_HW_API uint64_t tiepie_hw_generator_get_modes_ex(tiepie_hw_handle handle, uint32_t signal_type, uint32_t frequency_mode);
12127
12129
12148
12166TIEPIE_HW_API uint64_t tiepie_hw_generator_get_mode(tiepie_hw_handle handle);
12167
12189TIEPIE_HW_API uint64_t tiepie_hw_generator_set_mode(tiepie_hw_handle handle, uint64_t value);
12190
12247// Workaround: Without this line Doxygen adds the documentation below to the group above.
12248
12266
12286
12306
12308
12331TIEPIE_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);
12332
12334
12354
12377TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_count(tiepie_hw_handle handle, uint64_t value);
12378
12398
12418
12420
12443TIEPIE_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);
12444
12446
12466
12489TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_sample_count(tiepie_hw_handle handle, uint64_t value);
12490
12510
12530
12532
12559TIEPIE_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);
12560
12562
12582
12605TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_segment_count(tiepie_hw_handle handle, uint64_t value);
12606
12608
12632TIEPIE_HW_API uint64_t tiepie_hw_generator_verify_burst_segment_count(tiepie_hw_handle handle, uint64_t value);
12633
12663TIEPIE_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);
12664
12666
12713// Workaround: Without this line Doxygen adds the documentation below to the group above.
12714
12725
12736
12746
12754TIEPIE_HW_API uint32_t tiepie_hw_server_get_status(tiepie_hw_handle handle);
12755
12764
12774TIEPIE_HW_API uint32_t tiepie_hw_server_get_url(tiepie_hw_handle handle, char* buffer, uint32_t length);
12775
12785TIEPIE_HW_API uint32_t tiepie_hw_server_get_id(tiepie_hw_handle handle, char* buffer, uint32_t length);
12786
12796TIEPIE_HW_API uint32_t tiepie_hw_server_get_ip_address(tiepie_hw_handle handle, char* buffer, uint32_t length);
12797
12805TIEPIE_HW_API uint16_t tiepie_hw_server_get_ip_port(tiepie_hw_handle handle);
12806
12816TIEPIE_HW_API uint32_t tiepie_hw_server_get_name(tiepie_hw_handle handle, char* buffer, uint32_t length);
12817
12827TIEPIE_HW_API uint32_t tiepie_hw_server_get_description(tiepie_hw_handle handle, char* buffer, uint32_t length);
12828
12850TIEPIE_HW_API uint32_t tiepie_hw_server_get_version(tiepie_hw_handle handle, char* buffer, uint32_t length);
12851
12904
12918TIEPIE_HW_API void tiepie_hw_pointerarray_set(tiepie_hw_pointerarray ptr, uint32_t index, void* value);
12919
12931
12938#ifdef __cplusplus
12939}
12940#endif
12941
12942#endif
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 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(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_has_wireless_trigger_module(tiepie_hw_handle handle)
Check whether the device has a wireless trigger module.
TIEPIE_HW_API uint32_t tiepie_hw_device_get_name_shortest(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the short name of the device without model postfix.
TIEPIE_HW_API uint32_t tiepie_hw_device_get_serial_number(tiepie_hw_handle handle)
Get the serial number of the device.
TIEPIE_HW_API uint16_t tiepie_hw_device_get_ip_port(tiepie_hw_handle handle)
Get the IP port number of the device.
TIEPIE_HW_API uint32_t tiepie_hw_device_get_type(tiepie_hw_handle handle)
Get the device type.
TIEPIE_HW_API uint32_t tiepie_hw_device_get_name(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the full name of the device.
TIEPIE_HW_API uint32_t tiepie_hw_device_get_ip_address(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the IP address of the device.
TIEPIE_HW_API uint32_t tiepie_hw_device_get_name_short(tiepie_hw_handle handle, char *buffer, uint32_t length)
Get the short name of the device.
TIEPIE_HW_API tiepie_hw_productid tiepie_hw_device_get_product_id(tiepie_hw_handle handle)
Get the product id of the device.
TIEPIE_HW_API tiepie_hw_date tiepie_hw_device_get_calibration_date(tiepie_hw_handle handle)
Get the calibration date of the device.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_trigger_input_get_enabled(tiepie_hw_handle handle, uint16_t input)
Check whether a device trigger input is enabled.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_trigger_input_set_enabled(tiepie_hw_handle handle, uint16_t input, tiepie_hw_bool value)
To select a device trigger input as trigger source, set trigger input enabled.
TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_input_get_name(tiepie_hw_handle handle, uint16_t input, char *buffer, uint32_t length)
Get the name of a specified device trigger input.
TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_input_get_id(tiepie_hw_handle handle, uint16_t input)
Get the id of a specified device trigger input.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_trigger_input_is_available(tiepie_hw_handle handle, uint16_t input)
Check whether a device trigger input is available.
TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_set_kind(tiepie_hw_handle handle, uint16_t input, uint64_t value)
Set the required trigger kind for a specified device trigger input.
TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_get_kinds(tiepie_hw_handle handle, uint16_t input)
Get the supported trigger kinds for a specified device trigger input.
TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_input_get_kind(tiepie_hw_handle handle, uint16_t input)
Get the currently selected trigger kind for a specified device trigger input.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_oscilloscope_trigger_input_is_triggered(tiepie_hw_handle handle, uint16_t input)
Check whether the trigger input caused a trigger.
TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_input_index_by_id(tiepie_hw_handle handle, uint32_t id)
Get the index of a trigger input identified by its ID.
TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_input_count(tiepie_hw_handle handle)
Get the number of trigger inputs.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_trigger_output_set_enabled(tiepie_hw_handle handle, uint16_t output, tiepie_hw_bool value)
Set trigger output enable.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_trigger_output_get_enabled(tiepie_hw_handle handle, uint16_t output)
Check whether a trigger output is enabled.
TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_get_events(tiepie_hw_handle handle, uint16_t output)
Get the supported trigger output events for a specified device trigger output.
TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_get_event(tiepie_hw_handle handle, uint16_t output)
Get the currently selected trigger output event for a specified device trigger output.
TIEPIE_HW_API uint64_t tiepie_hw_device_trigger_output_set_event(tiepie_hw_handle handle, uint16_t output, uint64_t value)
Set the trigger output event for a specified device trigger output.
TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_output_get_name(tiepie_hw_handle handle, uint16_t output, char *buffer, uint32_t length)
Get the name of a specified device trigger output.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_device_trigger_output_trigger(tiepie_hw_handle handle, uint16_t output)
Trigger the specified device trigger output.
TIEPIE_HW_API uint32_t tiepie_hw_device_trigger_output_get_id(tiepie_hw_handle handle, uint16_t output)
Get the id of a specified device trigger output.
TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_output_index_by_id(tiepie_hw_handle handle, uint32_t id)
Get the index of trigger output identified by its ID.
TIEPIE_HW_API uint16_t tiepie_hw_device_trigger_get_output_count(tiepie_hw_handle handle)
Get the number of trigger outputs.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_count_min(tiepie_hw_handle handle)
Get the minimum burst count for the current generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_sample_count(tiepie_hw_handle handle)
Get the current burst sample count for the current generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_segment_count_min(tiepie_hw_handle handle)
Get the minimum burst segment count for the current settings of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_sample_count(tiepie_hw_handle handle, uint64_t value)
Set the burst sample count for the current generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_sample_count_max(tiepie_hw_handle handle)
Get the maximum burst sample count for the current generator mode of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_is_burst_active(tiepie_hw_handle handle)
Check whether a burst is active, of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_count(tiepie_hw_handle handle)
Get the current burst count for the current generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_count(tiepie_hw_handle handle, uint64_t value)
Set the burst count for the current generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_count_max(tiepie_hw_handle handle)
Get the maximum burst count for the current generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_set_burst_segment_count(tiepie_hw_handle handle, uint64_t value)
Set the burst segment count of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_segment_count_max(tiepie_hw_handle handle)
Get the maximum burst segment count for the current settings of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_segment_count(tiepie_hw_handle handle)
Get the current burst segment count of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_burst_sample_count_min(tiepie_hw_handle handle)
Get the minimum burst sample count for the current generator mode of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_set_output_invert(tiepie_hw_handle handle, tiepie_hw_bool value)
Enable or disable the output invert of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_output_invert(tiepie_hw_handle handle)
Check whether the output of a specified generator can be inverted.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_stop(tiepie_hw_handle handle)
Stop the signal generation of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_is_controllable(tiepie_hw_handle handle)
Check whether a specified generator can be controlled.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_is_running(tiepie_hw_handle handle)
Check whether the generator is running.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_start(tiepie_hw_handle handle)
Start the signal generation of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_set_output_enable(tiepie_hw_handle handle, tiepie_hw_bool value)
Enable or disable the hardware of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_get_output_invert(tiepie_hw_handle handle)
Check whether the output of a specified generator is inverted.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_get_output_enable(tiepie_hw_handle handle)
Check whether a specified generator is enabled.
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_status(tiepie_hw_handle handle)
Get the current signal generation status of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_impedance(tiepie_hw_handle handle)
Get the output impedance of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_output_value_min(tiepie_hw_handle handle)
Get the minimum output value of a specified generator.
TIEPIE_HW_API uint8_t tiepie_hw_generator_get_resolution(tiepie_hw_handle handle)
Get the DAC resolution of a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_connector_type(tiepie_hw_handle handle)
Get the output connector type for a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_output_value_max(tiepie_hw_handle handle)
Get the maximum output value of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_is_differential(tiepie_hw_handle handle)
Check whether the output of a specified generator is differential.
TIEPIE_HW_API uint64_t tiepie_hw_generator_set_mode(tiepie_hw_handle handle, uint64_t value)
Set the generator mode of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_modes_native(tiepie_hw_handle handle)
Get all supported generator modes of a specified generator, regardless of the signal type and frequen...
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_modes(tiepie_hw_handle handle)
Get the supported generator modes for the current signal type and frequency mode of a specified gener...
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_mode(tiepie_hw_handle handle)
Get the current generator mode of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_set_amplitude_range(tiepie_hw_handle handle, double value)
Set the amplitude range for a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_amplitude_range(tiepie_hw_handle handle)
Get the currently set amplitude range for a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_set_amplitude_auto_ranging(tiepie_hw_handle handle, tiepie_hw_bool value)
Set the amplitude auto ranging setting for a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_get_amplitude_auto_ranging(tiepie_hw_handle handle)
Get the amplitude auto ranging setting for a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_amplitude_ranges(tiepie_hw_handle handle, double *list, uint32_t length)
Get the supported amplitude ranges for a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_amplitude(tiepie_hw_handle handle)
Get the currently set signal amplitude of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_amplitude_min(tiepie_hw_handle handle)
Get the minimum signal amplitude for the current signal type of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_amplitude_max(tiepie_hw_handle handle)
Get the maximum signal amplitude for the current signal type of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_set_amplitude(tiepie_hw_handle handle, double amplitude)
Set the signal amplitude of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_amplitude(tiepie_hw_handle handle)
Check whether the current signal type of a specified generator supports controlling the signal amplit...
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_data_length_max(tiepie_hw_handle handle)
Get the maximum length of the waveform buffer of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_data(tiepie_hw_handle handle)
Check whether the current signal type of a specified generator supports controlling the Arbitrary wav...
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_data_length_min(tiepie_hw_handle handle)
Get the minimum length of the waveform buffer of a specified generator.
TIEPIE_HW_API void tiepie_hw_generator_set_data(tiepie_hw_handle handle, const float *buffer, uint64_t sample_count)
Load a waveform pattern into the waveform buffer of a specified generator.
TIEPIE_HW_API uint64_t tiepie_hw_generator_get_data_length(tiepie_hw_handle handle)
Get the length of the currently loaded waveform pattern of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_leading_edge_time_max(tiepie_hw_handle handle)
Get the maximum leading edge time with the current pulse width and signal frequency,...
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_edge_time(tiepie_hw_handle handle)
Check whether the current signal type of a specified generator supports controlling the edge times.
TIEPIE_HW_API double tiepie_hw_generator_get_leading_edge_time_min(tiepie_hw_handle handle)
Get the minimum leading edge time with the current pulse width and signal frequency,...
TIEPIE_HW_API double tiepie_hw_generator_get_trailing_edge_time_max(tiepie_hw_handle handle)
Get the maximum trailing edge time with the current pulse width and signal frequency,...
TIEPIE_HW_API double tiepie_hw_generator_set_leading_edge_time(tiepie_hw_handle handle, double leading_edge_time)
Set the leading edge time, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_trailing_edge_time_min(tiepie_hw_handle handle)
Get the minimum trailing edge time with the current pulse width and signal frequency,...
TIEPIE_HW_API double tiepie_hw_generator_get_leading_edge_time(tiepie_hw_handle handle)
Get the current leading edge time with the current pulse width and signal frequency,...
TIEPIE_HW_API double tiepie_hw_generator_set_trailing_edge_time(tiepie_hw_handle handle, double value)
Set the trailing edge time, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_trailing_edge_time(tiepie_hw_handle handle)
Get the current trailing edge time with the current pulse width and signal frequency,...
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_frequency_modes(tiepie_hw_handle handle)
Get the supported generator frequency modes of a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_frequency_mode(tiepie_hw_handle handle)
Get the current generator frequency mode of a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_set_frequency_mode(tiepie_hw_handle handle, uint32_t value)
Set the generator frequency mode of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_set_frequency(tiepie_hw_handle handle, double value)
Set signal/sample frequency, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_frequency_min(tiepie_hw_handle handle)
Get the minimum signal/sample frequency with the current frequency mode, of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_frequency(tiepie_hw_handle handle)
Check whether the current signal type and frequency mode of a specified generator support controlling...
TIEPIE_HW_API double tiepie_hw_generator_get_frequency_max(tiepie_hw_handle handle)
Get the maximum signal/sample frequency with the current frequency mode and signal type,...
TIEPIE_HW_API double tiepie_hw_generator_get_frequency(tiepie_hw_handle handle)
Get the current signal/sample frequency, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_offset(tiepie_hw_handle handle)
Get the current signal offset of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_set_offset(tiepie_hw_handle handle, double value)
Set the signal offset of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_offset(tiepie_hw_handle handle)
Check whether the current signal type of a specified generator supports controlling the signal offset...
TIEPIE_HW_API double tiepie_hw_generator_get_offset_max(tiepie_hw_handle handle)
Get the maximum offset for the current signal type, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_offset_min(tiepie_hw_handle handle)
Get the minimum offset for the current signal type, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_phase_max(tiepie_hw_handle handle)
Get the maximum signal phase of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_phase(tiepie_hw_handle handle)
Check whether the specified generator and the current signal type of the specified generator support ...
TIEPIE_HW_API double tiepie_hw_generator_get_phase(tiepie_hw_handle handle)
Get the current signal phase of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_set_phase(tiepie_hw_handle handle, double value)
Set the signal phase of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_phase_min(tiepie_hw_handle handle)
Get the minimum signal phase of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_symmetry_min(tiepie_hw_handle handle)
Get the minimum signal symmetry of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_symmetry(tiepie_hw_handle handle)
Check whether the current signal type of a specified generator supports controlling the signal symmet...
TIEPIE_HW_API double tiepie_hw_generator_get_symmetry(tiepie_hw_handle handle)
Get the current signal symmetry of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_set_symmetry(tiepie_hw_handle handle, double value)
Set the signal symmetry of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_symmetry_max(tiepie_hw_handle handle)
Get the maximum signal symmetry of a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_signal_type(tiepie_hw_handle handle)
Get the currently selected signal type of a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_get_signal_types(tiepie_hw_handle handle)
Get the supported signal types of a specified generator.
TIEPIE_HW_API uint32_t tiepie_hw_generator_set_signal_type(tiepie_hw_handle handle, uint32_t value)
Set the signal type of a specified generator.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_generator_has_width(tiepie_hw_handle handle)
Check whether the current signal type of a specified generator supports controlling the signal pulse ...
TIEPIE_HW_API double tiepie_hw_generator_set_width(tiepie_hw_handle handle, double value)
Set the pulse width, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_width(tiepie_hw_handle handle)
Get the current pulse width, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_width_max(tiepie_hw_handle handle)
Get the maximum pulse width with the current signal frequency, of a specified generator.
TIEPIE_HW_API double tiepie_hw_generator_get_width_min(tiepie_hw_handle handle)
Get the minimum pulse width with the current signal frequency, of a specified generator.
TIEPIE_HW_API void tiepie_hw_pointerarray_set(tiepie_hw_pointerarray ptr, uint32_t index, void *value)
Set a pointer at a specified index in a specified pointer array.
TIEPIE_HW_API void tiepie_hw_pointerarray_delete(tiepie_hw_pointerarray ptr)
Delete an existing pointer array.
TIEPIE_HW_API tiepie_hw_pointerarray tiepie_hw_pointerarray_new(uint32_t length)
Create a new pointer array.
TIEPIE_HW_API tiepie_hw_status tiepie_hw_get_last_status(void)
Get the last status value.
TIEPIE_HW_API const char * tiepie_hw_get_last_status_str(void)
Get the last status value as text.
TIEPIE_HW_API void tiepie_hw_init(void)
Create and initialize internal resources used by the library.
TIEPIE_HW_API void tiepie_hw_fini(void)
Clear and free internal resources used by the library.
TIEPIE_HW_API const tiepie_hw_version * tiepie_hw_get_version(void)
Get library version info.
TIEPIE_HW_API uint32_t tiepie_hw_get_config(uint8_t *buffer, uint32_t length)
Get the library configuration number.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_is_initialized(void)
Check whether the library's internal resources are initialized.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelistitem_open_generator(tiepie_hw_handle handle)
Open a generator and get a handle to the generator.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelistitem_open_oscilloscope(tiepie_hw_handle handle)
Open an oscilloscope and get a handle to the oscilloscope.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelist_get_item_by_serial_number(uint32_t serial_number)
Get handle to device list item by product id.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelist_get_item_by_index(uint32_t index)
Get handle to device list item by product id.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelistitem_open_device(tiepie_hw_handle handle, uint32_t device_type)
Open a device and get a handle to the device.
TIEPIE_HW_API void tiepie_hw_devicelist_remove_unused_devices(void)
Remove unused instruments from the device list so they can be used by other applications.
TIEPIE_HW_API uint32_t tiepie_hw_devicelist_create_combined_device(const tiepie_hw_handle *handles, uint32_t count)
Create a combined instrument.
TIEPIE_HW_API uint32_t tiepie_hw_devicelist_create_demo_device(tiepie_hw_productid product_id)
Create a demo instrument.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_devicelist_get_usb_hotplug_detect_enabled(void)
Get the current enabled state of the USB hot plug detection.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelist_get_item_by_product_id(tiepie_hw_productid product_id)
Get handle to device list item by product id.
TIEPIE_HW_API uint32_t tiepie_hw_devicelist_get_count(void)
Get the number of devices in the device list.
TIEPIE_HW_API const tiepie_hw_demo_info * tiepie_hw_devicelist_get_demo_device_info(void)
Get list of available demo devices.
TIEPIE_HW_API void tiepie_hw_devicelist_remove_device(uint32_t serial_number, tiepie_hw_bool force)
Remove an instrument from the device list so it can be used by other applications.
TIEPIE_HW_API void tiepie_hw_devicelist_update(void)
Update the device list.
TIEPIE_HW_API tiepie_hw_handle tiepie_hw_devicelist_create_and_open_combined_device(const tiepie_hw_handle *handles, uint32_t count)
Create and open a combined instrument.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_devicelist_set_usb_hotplug_detect_enabled(tiepie_hw_bool value)
Set the USB hot plug detection enabled state.
TIEPIE_HW_API void tiepie_hw_network_servers_set_callback_added(tiepie_hw_handle_callback callback, void *data)
Set a callback function which is called when a server is added to the server list.
TIEPIE_HW_API uint32_t tiepie_hw_network_servers_get_count(void)
Get the number of servers available.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_network_servers_add(const char *url, uint32_t length, tiepie_hw_handle *handle)
Add a server to the list of servers.
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 servers.
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 server from the list of servers.
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 Instrument Sharing Server. This gives access to the instruments connected to a...
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 Instrument Sharing Server.
TIEPIE_HW_API uint32_t tiepie_hw_server_get_last_error(tiepie_hw_handle handle)
Get the last error from a specified Instrument Sharing Server.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_server_remove(tiepie_hw_handle handle, tiepie_hw_bool force)
Remove a specified Instrument Sharing Server from the list of servers.
TIEPIE_HW_API tiepie_hw_bool tiepie_hw_server_disconnect(tiepie_hw_handle handle, tiepie_hw_bool force)
Disconnect from a specified Instrument Sharing Server. This will close all opened instruments shared ...
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 Instrument Sharing Server.
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 Instrument Sharing Server.
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 Instrument Sharing Server.
TIEPIE_HW_API uint32_t tiepie_hw_server_get_status(tiepie_hw_handle handle)
Retrieve the status of a specified Instrument Sharing Server.
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 Instrument Sharing Server.
TIEPIE_HW_API uint16_t tiepie_hw_server_get_ip_port(tiepie_hw_handle handle)
Get the IP port number of the specified Instrument Sharing Server.
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 Instrument Sharing Server.
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:1812
uint8_t tiepie_hw_bool
Boolean value one byte wide.
Definition libtiepie-hw.h:1776
void ** tiepie_hw_pointerarray
Pointer array.
Definition libtiepie-hw.h:1858
tiepie_hw_demosignal
Demo signal type IDs, for demo oscilloscope channels. See Demo signals.
Definition libtiepie-hw.h:1831
uint8_t tiepie_hw_tristate
TriState value one byte wide.
Definition libtiepie-hw.h:1857
tiepie_hw_status
Status code.
Definition libtiepie-hw.h:1733
void(* tiepie_hw_devicelist_callback)(void *data, uint32_t device_types, uint32_t serial_number)
Definition libtiepie-hw.h:1879
tiepie_hw_productid
ProductID IDs for products.
Definition libtiepie-hw.h:1782
void(* tiepie_hw_handle_callback)(void *data, tiepie_hw_handle handle)
Definition libtiepie-hw.h:1880
void(* tiepie_hw_event_callback)(void *data, tiepie_hw_event event, uint32_t value)
Definition libtiepie-hw.h:1881
uint32_t tiepie_hw_handle
Generic handle.
Definition libtiepie-hw.h:1775
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_TRIGGERED
Event ID for the event indicating that the oscilloscope has triggered.
Definition libtiepie-hw.h:1818
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_SURE_CONNECT_COMPLETED
Event ID for the event indicating that the connection test is ready.
Definition libtiepie-hw.h:1817
@ TIEPIE_HW_EVENT_GENERATOR_BURST_COMPLETED
Event ID for the event indicating that the generator burst is completed.
Definition libtiepie-hw.h:1819
@ TIEPIE_HW_EVENT_OBJECT_REMOVED
Event ID for the event indicating that an object was removed.
Definition libtiepie-hw.h:1814
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_DATA_OVERFLOW
Event ID for the event indicating that the data overflow occurred during a streaming measurement.
Definition libtiepie-hw.h:1816
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_DATA_READY
Event ID for the event indicating that the oscilloscope measurement is ready.
Definition libtiepie-hw.h:1815
@ TIEPIE_HW_EVENT_SERVER_STATUS_CHANGED
XXX.
Definition libtiepie-hw.h:1821
@ TIEPIE_HW_EVENT_INVALID
This event ID value should not occur.
Definition libtiepie-hw.h:1813
@ 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:1822
@ TIEPIE_HW_EVENT_GENERATOR_CONTROLLABLE_CHANGED
Event ID for the event indicating that the generator controllable state has changed.
Definition libtiepie-hw.h:1820
@ TIEPIE_HW_EVENT_OSCILLOSCOPE_WIRELESS_SYNCHRONIZATION_ERROR
XXX.
Definition libtiepie-hw.h:1824
@ TIEPIE_HW_EVENT_DEVICE_BATTERY_STATUS_CHANGED
XXX.
Definition libtiepie-hw.h:1823
@ TIEPIE_HW_DEMOSIGNAL_CAN_250000_HI
Generate a CAN-High signal, 250 kbps.
Definition libtiepie-hw.h:1847
@ TIEPIE_HW_DEMOSIGNAL_CANFD_250000_LO
Generate a CANFD-Low signal, 250 kbps.
Definition libtiepie-hw.h:1851
@ TIEPIE_HW_DEMOSIGNAL_DMX512
Generate a DMX 512 signal.
Definition libtiepie-hw.h:1852
@ TIEPIE_HW_DEMOSIGNAL_SINE
Generate a sine wave signal.
Definition libtiepie-hw.h:1833
@ TIEPIE_HW_DEMOSIGNAL_UART_9600_8N1
Generate a UART signal, 9600 baud, 8 bits, no parity, 1 stop bit.
Definition libtiepie-hw.h:1840
@ TIEPIE_HW_DEMOSIGNAL_LIN_19200
Generate a LIN bus signal, 19200 bps.
Definition libtiepie-hw.h:1853
@ TIEPIE_HW_DEMOSIGNAL_CAN_250000_LO
Generate a CAN-Low signal, 250 kbps.
Definition libtiepie-hw.h:1848
@ TIEPIE_HW_DEMOSIGNAL_CANFD_250000_HI
Generate a CANFD-High signal, 250 kbps.
Definition libtiepie-hw.h:1850
@ TIEPIE_HW_DEMOSIGNAL_UART_9600_7E2
Generate a UART signal, 9600 baud, 7 bits, even parity, 2 stop bits.
Definition libtiepie-hw.h:1841
@ TIEPIE_HW_DEMOSIGNAL_RS485_9600_8N1
Generate a RS458 signal, 9600 baud, 8 bits, no parity, 1 stop bit.
Definition libtiepie-hw.h:1844
@ TIEPIE_HW_DEMOSIGNAL_TRIANGLE
Generate a triangular signal.
Definition libtiepie-hw.h:1834
@ TIEPIE_HW_DEMOSIGNAL_RUNT
Generate a pulse signal with a runt pulse.
Definition libtiepie-hw.h:1837
@ TIEPIE_HW_DEMOSIGNAL_RS485_9600_8N1MD
Generate a RS458 signal, 9600 baud, 8 bits, no parity, 1 stop bit MultiDrop.
Definition libtiepie-hw.h:1845
@ TIEPIE_HW_DEMOSIGNAL_I2C_SDA
Generate an I2C SDA signal.
Definition libtiepie-hw.h:1839
@ TIEPIE_HW_DEMOSIGNAL_RS232_9600_8O15
Generate a RS232 signal, 9600 baud, 8 bits, odd parity, 1.5 stop bits.
Definition libtiepie-hw.h:1843
@ TIEPIE_HW_DEMOSIGNAL_RS232_9600_8N1
Generate a RS232 signal, 9600 baud, 8 bits, no parity, 1 stop bit.
Definition libtiepie-hw.h:1842
@ TIEPIE_HW_DEMOSIGNAL_NONE
Disable signal.
Definition libtiepie-hw.h:1832
@ TIEPIE_HW_DEMOSIGNAL_EV_CHARGING
Generate a TIEPIE_HW_EV charging signal.
Definition libtiepie-hw.h:1854
@ TIEPIE_HW_DEMOSIGNAL_CANFD_250000
Generate a differential CANFD signal, 250 kbps.
Definition libtiepie-hw.h:1849
@ TIEPIE_HW_DEMOSIGNAL_SQUARE
Generate a square wave signal.
Definition libtiepie-hw.h:1835
@ TIEPIE_HW_DEMOSIGNAL_I2C_SCL
Generate an I2C SCL signal.
Definition libtiepie-hw.h:1838
@ TIEPIE_HW_DEMOSIGNAL_CAN_250000
Generate a differential CAN signal, 250 kbps.
Definition libtiepie-hw.h:1846
@ TIEPIE_HW_DEMOSIGNAL_DC
Generate a DC level.
Definition libtiepie-hw.h:1836
@ TIEPIE_HW_STATUS_INVALID_INPUT
The requested trigger input is invalid.
Definition libtiepie-hw.h:1753
@ TIEPIE_HW_STATUS_NO_TRIGGER_ENABLED
The current setup requires a trigger input to be enabled.
Definition libtiepie-hw.h:1761
@ TIEPIE_HW_STATUS_SUCCESS
The function executed successfully.
Definition libtiepie-hw.h:1736
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10005
Initialization error 10005.
Definition libtiepie-hw.h:1770
@ 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:1763
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10006
Initialization error 10006.
Definition libtiepie-hw.h:1771
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10004
Initialization error 10004.
Definition libtiepie-hw.h:1769
@ TIEPIE_HW_STATUS_INVALID_INDEX
The requested index is invalid.
Definition libtiepie-hw.h:1757
@ TIEPIE_HW_STATUS_INVALID_DEVICE_TYPE
The device type is invalid.
Definition libtiepie-hw.h:1743
@ TIEPIE_HW_STATUS_INVALID_CHANNEL
The requested channel number is invalid.
Definition libtiepie-hw.h:1741
@ TIEPIE_HW_STATUS_INVALID_VALUE
The requested value is invalid.
Definition libtiepie-hw.h:1740
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10003
Initialization error 10003.
Definition libtiepie-hw.h:1768
@ TIEPIE_HW_STATUS_INVALID_HANDLE
The handle to the device is invalid.
Definition libtiepie-hw.h:1739
@ TIEPIE_HW_STATUS_NOT_SUPPORTED
The requested functionality is not supported by the hardware.
Definition libtiepie-hw.h:1738
@ TIEPIE_HW_STATUS_MEASUREMENT_RUNNING
A measurement is already running.
Definition libtiepie-hw.h:1764
@ TIEPIE_HW_STATUS_SYNCHRONIZATION_FAILED
Synchronization of the instruments has failed.
Definition libtiepie-hw.h:1762
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10001
Initialization error 10001.
Definition libtiepie-hw.h:1766
@ TIEPIE_HW_STATUS_INITIALIZATION_FAILED
The instrument's initialization failed, please contact TiePie engineering support.
Definition libtiepie-hw.h:1759
@ TIEPIE_HW_STATUS_BIT_ERROR
The requested I2C operation generated a bit error.
Definition libtiepie-hw.h:1750
@ TIEPIE_HW_STATUS_INVALID_FIRMWARE
The currently used firmware is not supported.
Definition libtiepie-hw.h:1756
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10007
Initialization error 10007.
Definition libtiepie-hw.h:1772
@ TIEPIE_HW_STATUS_INVALID_DEVICE_SERIALNUMBER
There is no device with the requested serial number.
Definition libtiepie-hw.h:1746
@ 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:1735
@ TIEPIE_HW_STATUS_WIRELESSTRIGGERMODULENOTCONNECTED
Definition libtiepie-hw.h:1765
@ TIEPIE_HW_STATUS_INTERNAL_ADDRESS
The requested I2C address is an internally used address in the device.
Definition libtiepie-hw.h:1748
@ TIEPIE_HW_STATUS_NOT_AVAILABLE
With the current settings, the requested functionality is not available.
Definition libtiepie-hw.h:1755
@ TIEPIE_HW_STATUS_UNSUCCESSFUL
An error occurred during execution of the last called function.
Definition libtiepie-hw.h:1737
@ TIEPIE_HW_STATUS_LIBRARY_NOT_INITIALIZED
The library is not initialized, see tiepie_hw_init().
Definition libtiepie-hw.h:1760
@ TIEPIE_HW_STATUS_INVALID_DEVICE_INDEX
The device index is invalid, must be < tiepie_hw_devicelist_get_count().
Definition libtiepie-hw.h:1744
@ TIEPIE_HW_STATUS_NO_ACKNOWLEDGE
The requested I2C operation generated "No acknowledge".
Definition libtiepie-hw.h:1751
@ TIEPIE_HW_STATUS_INVALID_OUTPUT
The requested trigger output is invalid.
Definition libtiepie-hw.h:1754
@ 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:1752
@ TIEPIE_HW_STATUS_INVALID_PRODUCT_ID
There is no device with the requested product ID.
Definition libtiepie-hw.h:1745
@ TIEPIE_HW_STATUS_INVALID_TRIGGER_SOURCE
The requested trigger source is invalid.
Definition libtiepie-hw.h:1742
@ TIEPIE_HW_STATUS_NOT_CONTROLLABLE
The generator is currently not controllable, see tiepie_hw_generator_is_controllable.
Definition libtiepie-hw.h:1749
@ TIEPIE_HW_STATUS_OBJECT_GONE
The object indicated by the handle is no longer available.
Definition libtiepie-hw.h:1747
@ 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:1734
@ TIEPIE_HW_STATUS_INITIALIZATION_ERROR_10002
Initialization error 10002.
Definition libtiepie-hw.h:1767
@ TIEPIE_HW_STATUS_INVALID_EEPROM
The instrument's EEPROM content is damaged, please contact TiePie engineering support.
Definition libtiepie-hw.h:1758
@ TIEPIE_HW_PRODUCTID_HS4
Handyscope TIEPIE_HW_HS4.
Definition libtiepie-hw.h:1786
@ TIEPIE_HW_PRODUCTID_HS3
Handyscope TIEPIE_HW_HS3.
Definition libtiepie-hw.h:1785
@ TIEPIE_HW_PRODUCTID_WS5
WiFiScope TIEPIE_HW_WS5.
Definition libtiepie-hw.h:1796
@ TIEPIE_HW_PRODUCTID_WS4D
WiFiScope TIEPIE_HW_WS4D.
Definition libtiepie-hw.h:1800
@ TIEPIE_HW_PRODUCTID_HP3
Handyprobe TIEPIE_HW_HP3.
Definition libtiepie-hw.h:1787
@ TIEPIE_HW_PRODUCTID_TP450
TIEPIE_HW_TP450.
Definition libtiepie-hw.h:1788
@ TIEPIE_HW_PRODUCTID_HS6
Handyscope TIEPIE_HW_HS6.
Definition libtiepie-hw.h:1791
@ TIEPIE_HW_PRODUCTID_COMBI
Combined instrument.
Definition libtiepie-hw.h:1784
@ TIEPIE_HW_PRODUCTID_ATS5004DW
TIEPIE_HW_ATS5004DW.
Definition libtiepie-hw.h:1801
@ TIEPIE_HW_PRODUCTID_NONE
Unknown/invalid TIEPIE_HW_ID.
Definition libtiepie-hw.h:1783
@ TIEPIE_HW_PRODUCTID_HS5
Handyscope TIEPIE_HW_HS5.
Definition libtiepie-hw.h:1790
@ TIEPIE_HW_PRODUCTID_WS6
WiFiScope TIEPIE_HW_WS6.
Definition libtiepie-hw.h:1795
@ TIEPIE_HW_PRODUCTID_HS6D
Handyscope TIEPIE_HW_HS6 TIEPIE_HW_DIFF.
Definition libtiepie-hw.h:1792
@ TIEPIE_HW_PRODUCTID_WS6D
WiFiScope TIEPIE_HW_WS6D.
Definition libtiepie-hw.h:1797
@ TIEPIE_HW_PRODUCTID_HS4D
Handyscope TIEPIE_HW_HS4-TIEPIE_HW_DIFF.
Definition libtiepie-hw.h:1789
@ TIEPIE_HW_PRODUCTID_ATS605004D
TIEPIE_HW_ATS605004D.
Definition libtiepie-hw.h:1794
@ TIEPIE_HW_PRODUCTID_ATS605004DW
TIEPIE_HW_ATS605004DW.
Definition libtiepie-hw.h:1799
@ TIEPIE_HW_PRODUCTID_ATS610004DW
TIEPIE_HW_ATS610004DW.
Definition libtiepie-hw.h:1798
@ TIEPIE_HW_PRODUCTID_ATS5004D
TIEPIE_HW_ATS5004D.
Definition libtiepie-hw.h:1803
@ TIEPIE_HW_PRODUCTID_ATS610004D
TIEPIE_HW_ATS610004D.
Definition libtiepie-hw.h:1793
@ TIEPIE_HW_PRODUCTID_ATS5004
TIEPIE_HW_ATS5004.
Definition libtiepie-hw.h:1802
Definition libtiepie-hw.h:1861
uint8_t day
Definition libtiepie-hw.h:1864
uint16_t year
Definition libtiepie-hw.h:1862
uint8_t month
Definition libtiepie-hw.h:1863
Definition libtiepie-hw.h:1868
const char * name
Definition libtiepie-hw.h:1870
const char * name_short
Definition libtiepie-hw.h:1871
tiepie_hw_productid product_id
Definition libtiepie-hw.h:1869
Structure with library version info.
Definition libtiepie-hw.h:1949
uint16_t minor
Minor version number.
Definition libtiepie-hw.h:1951
uint16_t patch
Patch level.
Definition libtiepie-hw.h:1952
uint16_t major
Major version number.
Definition libtiepie-hw.h:1950
uint16_t build
Build number.
Definition libtiepie-hw.h:1953
const char * extra
Additional version text.
Definition libtiepie-hw.h:1954