1pub const DIGITAL_PORT_SERIAL_LENGTH: u32 = 10;
2pub const DIGITAL_PORT_CALIBRATION_DATE_LENGTH: u32 = 8;
3
4pub type PICO_POINTER = *mut ::std::os::raw::c_void;
5pub type PICO_INFO = u32;
6pub type PICO_STATUS = u32;
7pub const enPicoStringValue_PICO_SV_MEMORY: enPicoStringValue = 0;
8pub const enPicoStringValue_PICO_SV_MEMORY_NO_OF_SEGMENTS: enPicoStringValue = 1;
9pub const enPicoStringValue_PICO_SV_MEMORY_MAX_SAMPLES: enPicoStringValue = 2;
10pub const enPicoStringValue_PICO_SV_NO_OF_CHANNELS: enPicoStringValue = 3;
11pub const enPicoStringValue_PICO_SV_ARRAY_OF_CHANNELS: enPicoStringValue = 4;
12pub const enPicoStringValue_PICO_SV_CHANNEL: enPicoStringValue = 5;
13pub const enPicoStringValue_PICO_SV_CHANNEL_NAME: enPicoStringValue = 6;
14pub const enPicoStringValue_PICO_SV_CHANNEL_RANGE: enPicoStringValue = 7;
15pub const enPicoStringValue_PICO_SV_CHANNEL_COUPLING: enPicoStringValue = 8;
16pub const enPicoStringValue_PICO_SV_CHANNEL_ENABLED: enPicoStringValue = 9;
17pub const enPicoStringValue_PICO_SV_CHANNEL_ANALOGUE_OFFSET: enPicoStringValue = 10;
18pub const enPicoStringValue_PICO_SV_CHANNEL_FILTER: enPicoStringValue = 11;
19pub const enPicoStringValue_PICO_SV_TRIGGER: enPicoStringValue = 12;
20pub const enPicoStringValue_PICO_SV_TRIGGER_AUXIO_OUTPUT_ENABLED: enPicoStringValue = 13;
21pub const enPicoStringValue_PICO_SV_TRIGGER_AUTO_TRIGGER_MICROSECONDS: enPicoStringValue = 14;
22pub const enPicoStringValue_PICO_SV_TRIGGER_PROPERTIES: enPicoStringValue = 15;
23pub const enPicoStringValue_PICO_SV_NO_OF_TRIGGER_PROPERTIES: enPicoStringValue = 16;
24pub const enPicoStringValue_PICO_SV_TRIGGER_PROPERTIES_CHANNEL: enPicoStringValue = 17;
25pub const enPicoStringValue_PICO_SV_TRIGGER_PROPERTIES_THRESHOLD_UPPER: enPicoStringValue = 18;
26pub const enPicoStringValue_PICO_SV_TRIGGER_PROPERTIES_THRESHOLD_UPPER_HYSTERESIS:
27 enPicoStringValue = 19;
28pub const enPicoStringValue_PICO_SV_TRIGGER_PROPERTIES_THRESHOLD_LOWER: enPicoStringValue = 20;
29pub const enPicoStringValue_PICO_SV_TRIGGER_PROPERTIES_THRESHOLD_LOWER_HYSTERESIS:
30 enPicoStringValue = 21;
31pub const enPicoStringValue_PICO_SV_TRIGGER_PROPERTIES_THRESHOLD_MODE: enPicoStringValue = 22;
32pub const enPicoStringValue_PICO_SV_TRIGGER_ARRAY_OF_BLOCK_CONDITIONS: enPicoStringValue = 23;
33pub const enPicoStringValue_PICO_SV_TRIGGER_NO_OF_BLOCK_CONDITIONS: enPicoStringValue = 24;
34pub const enPicoStringValue_PICO_SV_TRIGGER_CONDITIONS: enPicoStringValue = 25;
35pub const enPicoStringValue_PICO_SV_TRIGGER_NO_OF_CONDITIONS: enPicoStringValue = 26;
36pub const enPicoStringValue_PICO_SV_TRIGGER_CONDITION_SOURCE: enPicoStringValue = 27;
37pub const enPicoStringValue_PICO_SV_TRIGGER_CONDITION_STATE: enPicoStringValue = 28;
38pub const enPicoStringValue_PICO_SV_TRIGGER_DIRECTION: enPicoStringValue = 29;
39pub const enPicoStringValue_PICO_SV_TRIGGER_NO_OF_DIRECTIONS: enPicoStringValue = 30;
40pub const enPicoStringValue_PICO_SV_TRIGGER_DIRECTION_CHANNEL: enPicoStringValue = 31;
41pub const enPicoStringValue_PICO_SV_TRIGGER_DIRECTION_DIRECTION: enPicoStringValue = 32;
42pub const enPicoStringValue_PICO_SV_TRIGGER_DELAY: enPicoStringValue = 33;
43pub const enPicoStringValue_PICO_SV_TRIGGER_DELAY_MS: enPicoStringValue = 34;
44pub const enPicoStringValue_PICO_SV_FREQUENCY_COUNTER: enPicoStringValue = 35;
45pub const enPicoStringValue_PICO_SV_FREQUENCY_COUNTER_ENABLED: enPicoStringValue = 36;
46pub const enPicoStringValue_PICO_SV_FREQUENCY_COUNTER_CHANNEL: enPicoStringValue = 37;
47pub const enPicoStringValue_PICO_SV_FREQUENCY_COUNTER_RANGE: enPicoStringValue = 38;
48pub const enPicoStringValue_PICO_SV_FREQUENCY_COUNTER_TRESHOLDMAJOR: enPicoStringValue = 39;
49pub const enPicoStringValue_PICO_SV_FREQUENCY_COUNTER_TRESHOLDMINOR: enPicoStringValue = 40;
50pub const enPicoStringValue_PICO_SV_PULSE_WIDTH_PROPERTIES: enPicoStringValue = 41;
51pub const enPicoStringValue_PICO_SV_PULSE_WIDTH_PROPERTIES_DIRECTION: enPicoStringValue = 42;
52pub const enPicoStringValue_PICO_SV_PULSE_WIDTH_PROPERTIES_LOWER: enPicoStringValue = 43;
53pub const enPicoStringValue_PICO_SV_PULSE_WIDTH_PROPERTIES_UPPER: enPicoStringValue = 44;
54pub const enPicoStringValue_PICO_SV_PULSE_WIDTH_PROPERTIES_TYPE: enPicoStringValue = 45;
55pub const enPicoStringValue_PICO_SV_PULSE_WIDTH_ARRAY_OF_BLOCK_CONDITIONS: enPicoStringValue = 46;
56pub const enPicoStringValue_PICO_SV_PULSE_WIDTH_NO_OF_BLOCK_CONDITIONS: enPicoStringValue = 47;
57pub const enPicoStringValue_PICO_SV_PULSE_WIDTH_CONDITIONS: enPicoStringValue = 48;
58pub const enPicoStringValue_PICO_SV_PULSE_WIDTH_NO_OF_CONDITIONS: enPicoStringValue = 49;
59pub const enPicoStringValue_PICO_SV_PULSE_WIDTH_CONDITIONS_SOURCE: enPicoStringValue = 50;
60pub const enPicoStringValue_PICO_SV_PULSE_WIDTH_CONDITIONS_STATE: enPicoStringValue = 51;
61pub const enPicoStringValue_PICO_SV_SAMPLE_PROPERTIES: enPicoStringValue = 52;
62pub const enPicoStringValue_PICO_SV_SAMPLE_PROPERTIES_PRE_TRIGGER_SAMPLES: enPicoStringValue = 53;
63pub const enPicoStringValue_PICO_SV_SAMPLE_PROPERTIES_POST_TRIGGER_SAMPLES: enPicoStringValue = 54;
64pub const enPicoStringValue_PICO_SV_SAMPLE_PROPERTIES_TIMEBASE: enPicoStringValue = 55;
65pub const enPicoStringValue_PICO_SV_SAMPLE_PROPERTIES_NO_OF_CAPTURES: enPicoStringValue = 56;
66pub const enPicoStringValue_PICO_SV_SAMPLE_PROPERTIES_RESOLUTION: enPicoStringValue = 57;
67pub const enPicoStringValue_PICO_SV_SAMPLE_PROPERTIES_OVERLAPPED: enPicoStringValue = 58;
68pub const enPicoStringValue_PICO_SV_SAMPLE_PROPERTIES_OVERLAPPED_DOWN_SAMPLE_RATIO:
69 enPicoStringValue = 59;
70pub const enPicoStringValue_PICO_SV_SAMPLE_PROPERTIES_OVERLAPPED_DOWN_SAMPLE_RATIO_MODE:
71 enPicoStringValue = 60;
72pub const enPicoStringValue_PICO_SV_SAMPLE_PROPERTIES_OVERLAPPED_REQUERSTED_NO_OF_SAMPLES:
73 enPicoStringValue = 61;
74pub const enPicoStringValue_PICO_SV_SAMPLE_PROPERTIES_OVERLAPPED_SEGMENT_INDEX_FROM:
75 enPicoStringValue = 62;
76pub const enPicoStringValue_PICO_SV_SAMPLE_PROPERTIES_OVERLAPPED_SEGMENT_INDEX_TO:
77 enPicoStringValue = 63;
78pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR: enPicoStringValue = 64;
79pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_BUILT_IN: enPicoStringValue = 65;
80pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_BUILT_IN_WAVE_TYPE: enPicoStringValue = 66;
81pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_BUILT_IN_START_FREQUENCY: enPicoStringValue =
82 67;
83pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_BUILT_IN_STOP_FREQUENCY: enPicoStringValue =
84 68;
85pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_BUILT_IN_INCREMENT: enPicoStringValue = 69;
86pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_BUILT_IN_DWELL_TIME: enPicoStringValue = 70;
87pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_AWG: enPicoStringValue = 71;
88pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_AWG_START_DELTA_PHASE: enPicoStringValue = 72;
89pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_AWG_STOP_DELTA_PHASE: enPicoStringValue = 73;
90pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_AWG_DELTA_PHASE_INCREMENT: enPicoStringValue =
91 74;
92pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_AWG_DWELL_COUNT: enPicoStringValue = 75;
93pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_AWG_INDEX_MODE: enPicoStringValue = 76;
94pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_AWG_WAVEFORM_SIZE: enPicoStringValue = 77;
95pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_ARRAY_OF_AWG_WAVEFORM_VALUES:
96 enPicoStringValue = 78;
97pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_OFFSET_VOLTAGE: enPicoStringValue = 79;
98pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_PK_TO_PK: enPicoStringValue = 80;
99pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_OPERATION: enPicoStringValue = 81;
100pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_SHOTS: enPicoStringValue = 82;
101pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_SWEEPS: enPicoStringValue = 83;
102pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_SWEEP_TYPE: enPicoStringValue = 84;
103pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_TRIGGER_TYPE: enPicoStringValue = 85;
104pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_TRIGGER_SOURCE: enPicoStringValue = 86;
105pub const enPicoStringValue_PICO_SV_SIGNAL_GENERATOR_EXT_IN_THRESHOLD: enPicoStringValue = 87;
106pub const enPicoStringValue_PICO_SV_ETS: enPicoStringValue = 88;
107pub const enPicoStringValue_PICO_SV_ETS_STATE: enPicoStringValue = 89;
108pub const enPicoStringValue_PICO_SV_ETS_CYCLE: enPicoStringValue = 90;
109pub const enPicoStringValue_PICO_SV_ETS_INTERLEAVE: enPicoStringValue = 91;
110pub const enPicoStringValue_PICO_SV_ETS_SAMPLE_TIME_PICOSECONDS: enPicoStringValue = 92;
111pub type enPicoStringValue = ::std::os::raw::c_uint;
112pub use self::enPicoStringValue as PICO_STRING_VALUE;
113pub const enPicoRatioMode_PICO_RATIO_MODE_AGGREGATE: enPicoRatioMode = 1;
114pub const enPicoRatioMode_PICO_RATIO_MODE_DECIMATE: enPicoRatioMode = 2;
115pub const enPicoRatioMode_PICO_RATIO_MODE_AVERAGE: enPicoRatioMode = 4;
116pub const enPicoRatioMode_PICO_RATIO_MODE_DISTRIBUTION: enPicoRatioMode = 8;
117pub const enPicoRatioMode_PICO_RATIO_MODE_SUM: enPicoRatioMode = 16;
118pub const enPicoRatioMode_PICO_RATIO_MODE_TRIGGER_DATA_FOR_TIME_CALCULATION: enPicoRatioMode =
119 268435456;
120pub const enPicoRatioMode_PICO_RATIO_MODE_SEGMENT_HEADER: enPicoRatioMode = 536870912;
121pub const enPicoRatioMode_PICO_RATIO_MODE_TRIGGER: enPicoRatioMode = 1073741824;
122pub const enPicoRatioMode_PICO_RATIO_MODE_RAW: enPicoRatioMode = 2147483648;
123pub type enPicoRatioMode = ::std::os::raw::c_uint;
124pub use self::enPicoRatioMode as PICO_RATIO_MODE;
125pub const enPicoChannel_PICO_CHANNEL_A: enPicoChannel = 0;
126pub const enPicoChannel_PICO_CHANNEL_B: enPicoChannel = 1;
127pub const enPicoChannel_PICO_CHANNEL_C: enPicoChannel = 2;
128pub const enPicoChannel_PICO_CHANNEL_D: enPicoChannel = 3;
129pub const enPicoChannel_PICO_CHANNEL_E: enPicoChannel = 4;
130pub const enPicoChannel_PICO_CHANNEL_F: enPicoChannel = 5;
131pub const enPicoChannel_PICO_CHANNEL_G: enPicoChannel = 6;
132pub const enPicoChannel_PICO_CHANNEL_H: enPicoChannel = 7;
133pub const enPicoChannel_PICO_PORT0: enPicoChannel = 128;
134pub const enPicoChannel_PICO_PORT1: enPicoChannel = 129;
135pub const enPicoChannel_PICO_PORT2: enPicoChannel = 130;
136pub const enPicoChannel_PICO_PORT3: enPicoChannel = 131;
137pub const enPicoChannel_PICO_EXTERNAL: enPicoChannel = 1000;
138pub const enPicoChannel_PICO_TRIGGER_AUX: enPicoChannel = 1001;
139pub const enPicoChannel_PICO_PULSE_WIDTH_SOURCE: enPicoChannel = 268435456;
140pub const enPicoChannel_PICO_DIGITAL_SOURCE: enPicoChannel = 268435457;
141pub type enPicoChannel = ::std::os::raw::c_uint;
142pub use self::enPicoChannel as PICO_CHANNEL;
143pub const enPicoChannelFlags_PICO_CHANNEL_A_FLAGS: enPicoChannelFlags = 1;
144pub const enPicoChannelFlags_PICO_CHANNEL_B_FLAGS: enPicoChannelFlags = 2;
145pub const enPicoChannelFlags_PICO_CHANNEL_C_FLAGS: enPicoChannelFlags = 4;
146pub const enPicoChannelFlags_PICO_CHANNEL_D_FLAGS: enPicoChannelFlags = 8;
147pub const enPicoChannelFlags_PICO_CHANNEL_E_FLAGS: enPicoChannelFlags = 16;
148pub const enPicoChannelFlags_PICO_CHANNEL_F_FLAGS: enPicoChannelFlags = 32;
149pub const enPicoChannelFlags_PICO_CHANNEL_G_FLAGS: enPicoChannelFlags = 64;
150pub const enPicoChannelFlags_PICO_CHANNEL_H_FLAGS: enPicoChannelFlags = 128;
151pub const enPicoChannelFlags_PICO_PORT0_FLAGS: enPicoChannelFlags = 65536;
152pub const enPicoChannelFlags_PICO_PORT1_FLAGS: enPicoChannelFlags = 131072;
153pub const enPicoChannelFlags_PICO_PORT2_FLAGS: enPicoChannelFlags = 262144;
154pub const enPicoChannelFlags_PICO_PORT3_FLAGS: enPicoChannelFlags = 524288;
155pub type enPicoChannelFlags = ::std::os::raw::c_uint;
156pub use self::enPicoChannelFlags as PICO_CHANNEL_FLAGS;
157pub const enPicoPortDigitalChannel_PICO_PORT_DIGITAL_CHANNEL0: enPicoPortDigitalChannel = 0;
158pub const enPicoPortDigitalChannel_PICO_PORT_DIGITAL_CHANNEL1: enPicoPortDigitalChannel = 1;
159pub const enPicoPortDigitalChannel_PICO_PORT_DIGITAL_CHANNEL2: enPicoPortDigitalChannel = 2;
160pub const enPicoPortDigitalChannel_PICO_PORT_DIGITAL_CHANNEL3: enPicoPortDigitalChannel = 3;
161pub const enPicoPortDigitalChannel_PICO_PORT_DIGITAL_CHANNEL4: enPicoPortDigitalChannel = 4;
162pub const enPicoPortDigitalChannel_PICO_PORT_DIGITAL_CHANNEL5: enPicoPortDigitalChannel = 5;
163pub const enPicoPortDigitalChannel_PICO_PORT_DIGITAL_CHANNEL6: enPicoPortDigitalChannel = 6;
164pub const enPicoPortDigitalChannel_PICO_PORT_DIGITAL_CHANNEL7: enPicoPortDigitalChannel = 7;
165pub type enPicoPortDigitalChannel = ::std::os::raw::c_uint;
166pub use self::enPicoPortDigitalChannel as PICO_PORT_DIGITAL_CHANNEL;
167pub const enPicoDataType_PICO_INT8_T: enPicoDataType = 0;
168pub const enPicoDataType_PICO_INT16_T: enPicoDataType = 1;
169pub const enPicoDataType_PICO_INT32_T: enPicoDataType = 2;
170pub const enPicoDataType_PICO_UINT32_T: enPicoDataType = 3;
171pub const enPicoDataType_PICO_INT64_T: enPicoDataType = 4;
172pub type enPicoDataType = ::std::os::raw::c_uint;
173pub use self::enPicoDataType as PICO_DATA_TYPE;
174pub const enPicoCoupling_PICO_AC: enPicoCoupling = 0;
175pub const enPicoCoupling_PICO_DC: enPicoCoupling = 1;
176pub const enPicoCoupling_PICO_DC_50OHM: enPicoCoupling = 50;
177pub type enPicoCoupling = ::std::os::raw::c_uint;
178pub use self::enPicoCoupling as PICO_COUPLING;
179pub const enPicoBandwidthLimiterFlags_PICO_BW_FULL_FLAG: enPicoBandwidthLimiterFlags = 1;
180pub const enPicoBandwidthLimiterFlags_PICO_BW_20KHZ_FLAG: enPicoBandwidthLimiterFlags = 2;
181pub const enPicoBandwidthLimiterFlags_PICO_BW_100KHZ_FLAG: enPicoBandwidthLimiterFlags = 4;
182pub const enPicoBandwidthLimiterFlags_PICO_BW_1MHZ_FLAG: enPicoBandwidthLimiterFlags = 8;
183pub const enPicoBandwidthLimiterFlags_PICO_BW_20MHZ_FLAG: enPicoBandwidthLimiterFlags = 16;
184pub type enPicoBandwidthLimiterFlags = ::std::os::raw::c_uint;
185pub use self::enPicoBandwidthLimiterFlags as PICO_BANDWIDTH_LIMITER_FLAGS;
186pub const enPicoBandwidthLimiter_PICO_BW_FULL: enPicoBandwidthLimiter = 0;
187pub const enPicoBandwidthLimiter_PICO_BW_100KHZ: enPicoBandwidthLimiter = 100000;
188pub const enPicoBandwidthLimiter_PICO_BW_20KHZ: enPicoBandwidthLimiter = 20000;
189pub const enPicoBandwidthLimiter_PICO_BW_1MHZ: enPicoBandwidthLimiter = 1000000;
190pub const enPicoBandwidthLimiter_PICO_BW_20MHZ: enPicoBandwidthLimiter = 20000000;
191pub const enPicoBandwidthLimiter_PICO_BW_25MHZ: enPicoBandwidthLimiter = 25000000;
192pub const enPicoBandwidthLimiter_PICO_BW_50MHZ: enPicoBandwidthLimiter = 50000000;
193pub const enPicoBandwidthLimiter_PICO_BW_200MHZ: enPicoBandwidthLimiter = 200000000;
194pub const enPicoBandwidthLimiter_PICO_BW_250MHZ: enPicoBandwidthLimiter = 250000000;
195pub const enPicoBandwidthLimiter_PICO_BW_500MHZ: enPicoBandwidthLimiter = 500000000;
196pub type enPicoBandwidthLimiter = ::std::os::raw::c_uint;
197pub use self::enPicoBandwidthLimiter as PICO_BANDWIDTH_LIMITER;
198pub const enPicoPulseWidthType_PICO_PW_TYPE_NONE: enPicoPulseWidthType = 0;
199pub const enPicoPulseWidthType_PICO_PW_TYPE_LESS_THAN: enPicoPulseWidthType = 1;
200pub const enPicoPulseWidthType_PICO_PW_TYPE_GREATER_THAN: enPicoPulseWidthType = 2;
201pub const enPicoPulseWidthType_PICO_PW_TYPE_IN_RANGE: enPicoPulseWidthType = 3;
202pub const enPicoPulseWidthType_PICO_PW_TYPE_OUT_OF_RANGE: enPicoPulseWidthType = 4;
203pub type enPicoPulseWidthType = ::std::os::raw::c_uint;
204pub use self::enPicoPulseWidthType as PICO_PULSE_WIDTH_TYPE;
205pub const enPicoSweepType_PICO_UP: enPicoSweepType = 0;
206pub const enPicoSweepType_PICO_DOWN: enPicoSweepType = 1;
207pub const enPicoSweepType_PICO_UPDOWN: enPicoSweepType = 2;
208pub const enPicoSweepType_PICO_DOWNUP: enPicoSweepType = 3;
209pub type enPicoSweepType = ::std::os::raw::c_uint;
210pub use self::enPicoSweepType as PICO_SWEEP_TYPE;
211pub const enPicoWaveType_PICO_SINE: enPicoWaveType = 17;
212pub const enPicoWaveType_PICO_SQUARE: enPicoWaveType = 18;
213pub const enPicoWaveType_PICO_TRIANGLE: enPicoWaveType = 19;
214pub const enPicoWaveType_PICO_RAMP_UP: enPicoWaveType = 20;
215pub const enPicoWaveType_PICO_RAMP_DOWN: enPicoWaveType = 21;
216pub const enPicoWaveType_PICO_SINC: enPicoWaveType = 22;
217pub const enPicoWaveType_PICO_GAUSSIAN: enPicoWaveType = 23;
218pub const enPicoWaveType_PICO_HALF_SINE: enPicoWaveType = 24;
219pub const enPicoWaveType_PICO_DC_VOLTAGE: enPicoWaveType = 1024;
220pub const enPicoWaveType_PICO_PWM: enPicoWaveType = 4096;
221pub const enPicoWaveType_PICO_WHITENOISE: enPicoWaveType = 8193;
222pub const enPicoWaveType_PICO_PRBS: enPicoWaveType = 8194;
223pub const enPicoWaveType_PICO_ARBITRARY: enPicoWaveType = 268435456;
224pub type enPicoWaveType = ::std::os::raw::c_uint;
225pub use self::enPicoWaveType as PICO_WAVE_TYPE;
226pub const enPicoSigGenTrigType_PICO_SIGGEN_RISING: enPicoSigGenTrigType = 0;
227pub const enPicoSigGenTrigType_PICO_SIGGEN_FALLING: enPicoSigGenTrigType = 1;
228pub const enPicoSigGenTrigType_PICO_SIGGEN_GATE_HIGH: enPicoSigGenTrigType = 2;
229pub const enPicoSigGenTrigType_PICO_SIGGEN_GATE_LOW: enPicoSigGenTrigType = 3;
230pub type enPicoSigGenTrigType = ::std::os::raw::c_uint;
231pub use self::enPicoSigGenTrigType as PICO_SIGGEN_TRIG_TYPE;
232pub const enPicoSigGenTrigSource_PICO_SIGGEN_NONE: enPicoSigGenTrigSource = 0;
233pub const enPicoSigGenTrigSource_PICO_SIGGEN_SCOPE_TRIG: enPicoSigGenTrigSource = 1;
234pub const enPicoSigGenTrigSource_PICO_SIGGEN_AUX_IN: enPicoSigGenTrigSource = 2;
235pub const enPicoSigGenTrigSource_PICO_SIGGEN_EXT_IN: enPicoSigGenTrigSource = 3;
236pub const enPicoSigGenTrigSource_PICO_SIGGEN_SOFT_TRIG: enPicoSigGenTrigSource = 4;
237pub const enPicoSigGenTrigSource_PICO_SIGGEN_TRIGGER_RAW: enPicoSigGenTrigSource = 5;
238pub type enPicoSigGenTrigSource = ::std::os::raw::c_uint;
239pub use self::enPicoSigGenTrigSource as PICO_SIGGEN_TRIG_SOURCE;
240pub const enPicoSigGenFilterState_PICO_SIGGEN_FILTER_AUTO: enPicoSigGenFilterState = 0;
241pub const enPicoSigGenFilterState_PICO_SIGGEN_FILTER_OFF: enPicoSigGenFilterState = 1;
242pub const enPicoSigGenFilterState_PICO_SIGGEN_FILTER_ON: enPicoSigGenFilterState = 2;
243pub type enPicoSigGenFilterState = ::std::os::raw::c_uint;
244pub use self::enPicoSigGenFilterState as PICO_SIGGEN_FILTER_STATE;
245pub const enPicoSigGenParameter_PICO_SIGGEN_PARAM_OUTPUT_VOLTS: enPicoSigGenParameter = 0;
246pub const enPicoSigGenParameter_PICO_SIGGEN_PARAM_SAMPLE: enPicoSigGenParameter = 1;
247pub const enPicoSigGenParameter_PICO_SIGGEN_PARAM_BUFFER_LENGTH: enPicoSigGenParameter = 2;
248pub type enPicoSigGenParameter = ::std::os::raw::c_uint;
249pub use self::enPicoSigGenParameter as PICO_SIGGEN_PARAMETER;
250pub const enPicoTimeUnits_PICO_FS: enPicoTimeUnits = 0;
251pub const enPicoTimeUnits_PICO_PS: enPicoTimeUnits = 1;
252pub const enPicoTimeUnits_PICO_NS: enPicoTimeUnits = 2;
253pub const enPicoTimeUnits_PICO_US: enPicoTimeUnits = 3;
254pub const enPicoTimeUnits_PICO_MS: enPicoTimeUnits = 4;
255pub const enPicoTimeUnits_PICO_S: enPicoTimeUnits = 5;
256pub type enPicoTimeUnits = ::std::os::raw::c_uint;
257pub use self::enPicoTimeUnits as PICO_TIME_UNITS;
258pub const enPicoThresholdDirection_PICO_ABOVE: enPicoThresholdDirection = 0;
259pub const enPicoThresholdDirection_PICO_BELOW: enPicoThresholdDirection = 1;
260pub const enPicoThresholdDirection_PICO_RISING: enPicoThresholdDirection = 2;
261pub const enPicoThresholdDirection_PICO_FALLING: enPicoThresholdDirection = 3;
262pub const enPicoThresholdDirection_PICO_RISING_OR_FALLING: enPicoThresholdDirection = 4;
263pub const enPicoThresholdDirection_PICO_ABOVE_LOWER: enPicoThresholdDirection = 5;
264pub const enPicoThresholdDirection_PICO_BELOW_LOWER: enPicoThresholdDirection = 6;
265pub const enPicoThresholdDirection_PICO_RISING_LOWER: enPicoThresholdDirection = 7;
266pub const enPicoThresholdDirection_PICO_FALLING_LOWER: enPicoThresholdDirection = 8;
267pub const enPicoThresholdDirection_PICO_INSIDE: enPicoThresholdDirection = 0;
268pub const enPicoThresholdDirection_PICO_OUTSIDE: enPicoThresholdDirection = 1;
269pub const enPicoThresholdDirection_PICO_ENTER: enPicoThresholdDirection = 2;
270pub const enPicoThresholdDirection_PICO_EXIT: enPicoThresholdDirection = 3;
271pub const enPicoThresholdDirection_PICO_ENTER_OR_EXIT: enPicoThresholdDirection = 4;
272pub const enPicoThresholdDirection_PICO_POSITIVE_RUNT: enPicoThresholdDirection = 9;
273pub const enPicoThresholdDirection_PICO_NEGATIVE_RUNT: enPicoThresholdDirection = 10;
274pub const enPicoThresholdDirection_PICO_LOGIC_LOWER: enPicoThresholdDirection = 1000;
275pub const enPicoThresholdDirection_PICO_LOGIC_UPPER: enPicoThresholdDirection = 1001;
276pub const enPicoThresholdDirection_PICO_NONE: enPicoThresholdDirection = 2;
277pub type enPicoThresholdDirection = ::std::os::raw::c_uint;
278pub use self::enPicoThresholdDirection as PICO_THRESHOLD_DIRECTION;
279pub const enPicoThresholdMode_PICO_LEVEL: enPicoThresholdMode = 0;
280pub const enPicoThresholdMode_PICO_WINDOW: enPicoThresholdMode = 1;
281pub type enPicoThresholdMode = ::std::os::raw::c_uint;
282pub use self::enPicoThresholdMode as PICO_THRESHOLD_MODE;
283pub const enPicoEtsMode_PICO_ETS_OFF: enPicoEtsMode = 0;
284pub const enPicoEtsMode_PICO_ETS_FAST: enPicoEtsMode = 1;
285pub const enPicoEtsMode_PICO_ETS_SLOW: enPicoEtsMode = 2;
286pub type enPicoEtsMode = ::std::os::raw::c_uint;
287pub use self::enPicoEtsMode as PICO_ETS_MODE;
288pub const enPicoIndexMode_PICO_SINGLE: enPicoIndexMode = 0;
289pub const enPicoIndexMode_PICO_DUAL: enPicoIndexMode = 1;
290pub const enPicoIndexMode_PICO_QUAD: enPicoIndexMode = 2;
291pub type enPicoIndexMode = ::std::os::raw::c_uint;
292pub use self::enPicoIndexMode as PICO_INDEX_MODE;
293pub const enPicoAction_PICO_CLEAR_ALL: enPicoAction = 1;
294pub const enPicoAction_PICO_ADD: enPicoAction = 2;
295pub const enPicoAction_PICO_CLEAR_THIS_DATA_BUFFER: enPicoAction = 4096;
296pub const enPicoAction_PICO_CLEAR_WAVEFORM_DATA_BUFFERS: enPicoAction = 8192;
297pub const enPicoAction_PICO_CLEAR_WAVEFORM_READ_DATA_BUFFERS: enPicoAction = 16384;
298pub type enPicoAction = ::std::os::raw::c_uint;
299pub use self::enPicoAction as PICO_ACTION;
300pub const enPicoTriggerState_PICO_CONDITION_DONT_CARE: enPicoTriggerState = 0;
301pub const enPicoTriggerState_PICO_CONDITION_TRUE: enPicoTriggerState = 1;
302pub const enPicoTriggerState_PICO_CONDITION_FALSE: enPicoTriggerState = 2;
303pub type enPicoTriggerState = ::std::os::raw::c_uint;
304pub use self::enPicoTriggerState as PICO_TRIGGER_STATE;
305pub const enPicoDeviceResolution_PICO_DR_8BIT: enPicoDeviceResolution = 0;
306pub const enPicoDeviceResolution_PICO_DR_12BIT: enPicoDeviceResolution = 1;
307pub const enPicoDeviceResolution_PICO_DR_14BIT: enPicoDeviceResolution = 2;
308pub const enPicoDeviceResolution_PICO_DR_15BIT: enPicoDeviceResolution = 3;
309pub const enPicoDeviceResolution_PICO_DR_16BIT: enPicoDeviceResolution = 4;
310pub const enPicoDeviceResolution_PICO_DR_10BIT: enPicoDeviceResolution = 10;
311pub type enPicoDeviceResolution = ::std::os::raw::c_uint;
312pub use self::enPicoDeviceResolution as PICO_DEVICE_RESOLUTION;
313pub const enPicoReadSelection_PICO_READSELECTION_NONE: enPicoReadSelection = 0;
314pub const enPicoReadSelection_PICO_TRIGGER_READ: enPicoReadSelection = 1;
315pub const enPicoReadSelection_PICO_DATA_READ1: enPicoReadSelection = 2;
316pub const enPicoReadSelection_PICO_DATA_READ2: enPicoReadSelection = 3;
317pub const enPicoReadSelection_PICO_DATA_READ3: enPicoReadSelection = 4;
318pub type enPicoReadSelection = ::std::os::raw::c_uint;
319pub use self::enPicoReadSelection as PICO_READ_SELECTION;
320pub const enPicoTrimAction_PICO_OLDEST: enPicoTrimAction = 0;
321pub const enPicoTrimAction_PICO_RECENT: enPicoTrimAction = 1;
322pub type enPicoTrimAction = ::std::os::raw::c_uint;
323pub use self::enPicoTrimAction as PICO_TRIM_ACTION;
324pub const enPicoDigitalPortHysteresis_PICO_VERY_HIGH_400MV: enPicoDigitalPortHysteresis = 0;
325pub const enPicoDigitalPortHysteresis_PICO_HIGH_200MV: enPicoDigitalPortHysteresis = 1;
326pub const enPicoDigitalPortHysteresis_PICO_NORMAL_100MV: enPicoDigitalPortHysteresis = 2;
327pub const enPicoDigitalPortHysteresis_PICO_LOW_50MV: enPicoDigitalPortHysteresis = 3;
328pub type enPicoDigitalPortHysteresis = ::std::os::raw::c_uint;
329pub use self::enPicoDigitalPortHysteresis as PICO_DIGITAL_PORT_HYSTERESIS;
330pub const enPicoDigitalDirection_PICO_DIGITAL_DONT_CARE: enPicoDigitalDirection = 0;
331pub const enPicoDigitalDirection_PICO_DIGITAL_DIRECTION_LOW: enPicoDigitalDirection = 1;
332pub const enPicoDigitalDirection_PICO_DIGITAL_DIRECTION_HIGH: enPicoDigitalDirection = 2;
333pub const enPicoDigitalDirection_PICO_DIGITAL_DIRECTION_RISING: enPicoDigitalDirection = 3;
334pub const enPicoDigitalDirection_PICO_DIGITAL_DIRECTION_FALLING: enPicoDigitalDirection = 4;
335pub const enPicoDigitalDirection_PICO_DIGITAL_DIRECTION_RISING_OR_FALLING: enPicoDigitalDirection =
336 5;
337pub const enPicoDigitalDirection_PICO_DIGITAL_MAX_DIRECTION: enPicoDigitalDirection = 6;
338pub type enPicoDigitalDirection = ::std::os::raw::c_uint;
339pub use self::enPicoDigitalDirection as PICO_DIGITAL_DIRECTION;
340pub const enPicoConditionsInfo_PICO_CLEAR_CONDITIONS: enPicoConditionsInfo = 1;
341pub const enPicoConditionsInfo_PICO_ADD_CONDITION: enPicoConditionsInfo = 2;
342pub type enPicoConditionsInfo = ::std::os::raw::c_uint;
343pub use self::enPicoConditionsInfo as PICO_CONDITIONS_INFO;
344pub const enPicoClockReference_PICO_INTERNAL_REF: enPicoClockReference = 0;
345pub const enPicoClockReference_PICO_EXTERNAL_REF: enPicoClockReference = 1;
346pub type enPicoClockReference = ::std::os::raw::c_uint;
347pub use self::enPicoClockReference as PICO_CLOCK_REFERENCE;
348pub const enPicoTriggerWithinPreTrigger_PICO_DISABLE: enPicoTriggerWithinPreTrigger = 0;
349pub const enPicoTriggerWithinPreTrigger_PICO_ARM: enPicoTriggerWithinPreTrigger = 1;
350pub type enPicoTriggerWithinPreTrigger = ::std::os::raw::c_uint;
351pub use self::enPicoTriggerWithinPreTrigger as PICO_TRIGGER_WITHIN_PRE_TRIGGER;
352pub const tPicoTemperatureReference_PICO_TEMPERATURE_UNINITIALISED: tPicoTemperatureReference = 0;
353pub const tPicoTemperatureReference_PICO_TEMPERATURE_NORMAL: tPicoTemperatureReference = 1;
354pub const tPicoTemperatureReference_PICO_TEMPERATURE_WARNING: tPicoTemperatureReference = 2;
355pub const tPicoTemperatureReference_PICO_TEMPERATURE_CRITICAL: tPicoTemperatureReference = 3;
356pub type tPicoTemperatureReference = ::std::os::raw::c_uint;
357pub use self::tPicoTemperatureReference as PICO_TEMPERATURE_REFERENCE;
358pub const enPicoDigitalPort_PICO_DIGITAL_PORT_NONE: enPicoDigitalPort = 0;
359pub const enPicoDigitalPort_PICO_DIGITAL_PORT_MSO_POD: enPicoDigitalPort = 1000;
360pub const enPicoDigitalPort_PICO_DIGITAL_PORT_UNKNOWN_DEVICE: enPicoDigitalPort = -2;
361pub type enPicoDigitalPort = ::std::os::raw::c_int;
362pub use self::enPicoDigitalPort as PICO_DIGITAL_PORT;
363pub type PicoConnectProbe = i32;
364pub const enPicoConnectProbe_PICO_CONNECT_PROBE_NONE: enPicoConnectProbe = 0;
365pub const enPicoConnectProbe_PICO_CONNECT_PROBE_D9_BNC: enPicoConnectProbe = 4000;
366pub const enPicoConnectProbe_PICO_CONNECT_PROBE_D9_2X_BNC: enPicoConnectProbe = 4001;
367pub const enPicoConnectProbe_PICO_CONNECT_PROBE_DIFFERENTIAL: enPicoConnectProbe = 4002;
368pub const enPicoConnectProbe_PICO_CONNECT_PROBE_CURRENT_CLAMP_200_2KA: enPicoConnectProbe = 4003;
369pub const enPicoConnectProbe_PICO_CONNECT_PROBE_CURRENT_CLAMP_40A: enPicoConnectProbe = 4004;
370pub const enPicoConnectProbe_PICO_CONNECT_PROBE_CAT3_HV_1KV: enPicoConnectProbe = 4005;
371pub const enPicoConnectProbe_PICO_CONNECT_PROBE_CURRENT_CLAMP_2000ARMS: enPicoConnectProbe = 4006;
372pub const enPicoConnectProbe_PICO_BNC_PLUS_PREMIUM_TEST_LEAD_BLUE: enPicoConnectProbe = 4404;
373pub const enPicoConnectProbe_PICO_BNC_PLUS_PREMIUM_TEST_LEAD_RED: enPicoConnectProbe = 4405;
374pub const enPicoConnectProbe_PICO_BNC_PLUS_PREMIUM_TEST_LEAD_GREEN: enPicoConnectProbe = 4406;
375pub const enPicoConnectProbe_PICO_BNC_PLUS_PREMIUM_TEST_LEAD_YELLOW: enPicoConnectProbe = 4407;
376pub const enPicoConnectProbe_PICO_BNC_PLUS_COP_PROBE: enPicoConnectProbe = 4408;
377pub const enPicoConnectProbe_PICO_BNC_PLUS_TEMPERATURE_PROBE: enPicoConnectProbe = 5000;
378pub const enPicoConnectProbe_PICO_BNC_PLUS_100A_CURRENT_CLAMP: enPicoConnectProbe = 5003;
379pub const enPicoConnectProbe_PICO_BNC_PLUS_HT_PICKUP: enPicoConnectProbe = 5005;
380pub const enPicoConnectProbe_PICO_BNC_PLUS_X10_SCOPE_PROBE: enPicoConnectProbe = 5006;
381pub const enPicoConnectProbe_PICO_BNC_PLUS_2000A_CURRENT_CLAMP: enPicoConnectProbe = 5007;
382pub const enPicoConnectProbe_PICO_BNC_PLUS_PRESSURE_SENSOR: enPicoConnectProbe = 5008;
383pub const enPicoConnectProbe_PICO_BNC_PLUS_RESISTANCE_LEAD: enPicoConnectProbe = 5009;
384pub const enPicoConnectProbe_PICO_BNC_PLUS_60A_CURRENT_CLAMP: enPicoConnectProbe = 5010;
385pub const enPicoConnectProbe_PICO_BNC_PLUS_OPTICAL_SENSOR: enPicoConnectProbe = 5011;
386pub const enPicoConnectProbe_PICO_BNC_PLUS_60A_CURRENT_CLAMP_V2: enPicoConnectProbe = 5012;
387pub const enPicoConnectProbe_PICO_PASSIVE_PROBE_X10: enPicoConnectProbe = 6000;
388pub const enPicoConnectProbe_PICO_CONNECT_PROBE_INTELLIGENT: enPicoConnectProbe = -3;
389pub const enPicoConnectProbe_PICO_CONNECT_PROBE_UNKNOWN_PROBE: enPicoConnectProbe = -2;
390pub const enPicoConnectProbe_PICO_CONNECT_PROBE_FAULT_PROBE: enPicoConnectProbe = -1;
391pub type enPicoConnectProbe = ::std::os::raw::c_int;
392pub use self::enPicoConnectProbe as PICO_CONNECT_PROBE;
393pub const enPicoConnectProbeRange_PICO_X1_PROBE_10MV: enPicoConnectProbeRange = 0;
394pub const enPicoConnectProbeRange_PICO_X1_PROBE_20MV: enPicoConnectProbeRange = 1;
395pub const enPicoConnectProbeRange_PICO_X1_PROBE_50MV: enPicoConnectProbeRange = 2;
396pub const enPicoConnectProbeRange_PICO_X1_PROBE_100MV: enPicoConnectProbeRange = 3;
397pub const enPicoConnectProbeRange_PICO_X1_PROBE_200MV: enPicoConnectProbeRange = 4;
398pub const enPicoConnectProbeRange_PICO_X1_PROBE_500MV: enPicoConnectProbeRange = 5;
399pub const enPicoConnectProbeRange_PICO_X1_PROBE_1V: enPicoConnectProbeRange = 6;
400pub const enPicoConnectProbeRange_PICO_X1_PROBE_2V: enPicoConnectProbeRange = 7;
401pub const enPicoConnectProbeRange_PICO_X1_PROBE_5V: enPicoConnectProbeRange = 8;
402pub const enPicoConnectProbeRange_PICO_X1_PROBE_10V: enPicoConnectProbeRange = 9;
403pub const enPicoConnectProbeRange_PICO_X1_PROBE_20V: enPicoConnectProbeRange = 10;
404pub const enPicoConnectProbeRange_PICO_X1_PROBE_50V: enPicoConnectProbeRange = 11;
405pub const enPicoConnectProbeRange_PICO_X1_PROBE_100V: enPicoConnectProbeRange = 12;
406pub const enPicoConnectProbeRange_PICO_X1_PROBE_200V: enPicoConnectProbeRange = 13;
407pub const enPicoConnectProbeRange_PICO_X1_PROBE_RANGES: enPicoConnectProbeRange = 14;
408pub const enPicoConnectProbeRange_PICO_X10_PROBE_100MV: enPicoConnectProbeRange = 32;
409pub const enPicoConnectProbeRange_PICO_X10_PROBE_200MV: enPicoConnectProbeRange = 33;
410pub const enPicoConnectProbeRange_PICO_X10_PROBE_500MV: enPicoConnectProbeRange = 34;
411pub const enPicoConnectProbeRange_PICO_X10_PROBE_1V: enPicoConnectProbeRange = 35;
412pub const enPicoConnectProbeRange_PICO_X10_PROBE_2V: enPicoConnectProbeRange = 36;
413pub const enPicoConnectProbeRange_PICO_X10_PROBE_5V: enPicoConnectProbeRange = 37;
414pub const enPicoConnectProbeRange_PICO_X10_PROBE_10V: enPicoConnectProbeRange = 38;
415pub const enPicoConnectProbeRange_PICO_X10_PROBE_20V: enPicoConnectProbeRange = 39;
416pub const enPicoConnectProbeRange_PICO_X10_PROBE_50V: enPicoConnectProbeRange = 40;
417pub const enPicoConnectProbeRange_PICO_X10_PROBE_100V: enPicoConnectProbeRange = 41;
418pub const enPicoConnectProbeRange_PICO_X10_PROBE_200V: enPicoConnectProbeRange = 42;
419pub const enPicoConnectProbeRange_PICO_X10_PROBE_500V: enPicoConnectProbeRange = 43;
420pub const enPicoConnectProbeRange_PICO_X10_PROBE_RANGES: enPicoConnectProbeRange = 12;
421pub const enPicoConnectProbeRange_PICO_PS4000A_RESISTANCE_315K: enPicoConnectProbeRange = 512;
422pub const enPicoConnectProbeRange_PICO_PS4000A_RESISTANCE_1100K: enPicoConnectProbeRange = 513;
423pub const enPicoConnectProbeRange_PICO_PS4000A_RESISTANCE_10M: enPicoConnectProbeRange = 514;
424pub const enPicoConnectProbeRange_PICO_PS4000A_MAX_RESISTANCE_RANGES: enPicoConnectProbeRange = 3;
425pub const enPicoConnectProbeRange_PICO_PS4000A_RESISTANCE_ADCV_FLAG: enPicoConnectProbeRange =
426 268435456;
427pub const enPicoConnectProbeRange_PICO_CONNECT_PROBE_OFF: enPicoConnectProbeRange = 1024;
428pub const enPicoConnectProbeRange_PICO_D9_BNC_10MV: enPicoConnectProbeRange = 0;
429pub const enPicoConnectProbeRange_PICO_D9_BNC_20MV: enPicoConnectProbeRange = 1;
430pub const enPicoConnectProbeRange_PICO_D9_BNC_50MV: enPicoConnectProbeRange = 2;
431pub const enPicoConnectProbeRange_PICO_D9_BNC_100MV: enPicoConnectProbeRange = 3;
432pub const enPicoConnectProbeRange_PICO_D9_BNC_200MV: enPicoConnectProbeRange = 4;
433pub const enPicoConnectProbeRange_PICO_D9_BNC_500MV: enPicoConnectProbeRange = 5;
434pub const enPicoConnectProbeRange_PICO_D9_BNC_1V: enPicoConnectProbeRange = 6;
435pub const enPicoConnectProbeRange_PICO_D9_BNC_2V: enPicoConnectProbeRange = 7;
436pub const enPicoConnectProbeRange_PICO_D9_BNC_5V: enPicoConnectProbeRange = 8;
437pub const enPicoConnectProbeRange_PICO_D9_BNC_10V: enPicoConnectProbeRange = 9;
438pub const enPicoConnectProbeRange_PICO_D9_BNC_20V: enPicoConnectProbeRange = 10;
439pub const enPicoConnectProbeRange_PICO_D9_BNC_50V: enPicoConnectProbeRange = 11;
440pub const enPicoConnectProbeRange_PICO_D9_BNC_100V: enPicoConnectProbeRange = 12;
441pub const enPicoConnectProbeRange_PICO_D9_BNC_200V: enPicoConnectProbeRange = 13;
442pub const enPicoConnectProbeRange_PICO_MAX_D9_BNC_RANGES: enPicoConnectProbeRange = 14;
443pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_10MV: enPicoConnectProbeRange = 0;
444pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_20MV: enPicoConnectProbeRange = 1;
445pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_50MV: enPicoConnectProbeRange = 2;
446pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_100MV: enPicoConnectProbeRange = 3;
447pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_200MV: enPicoConnectProbeRange = 4;
448pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_500MV: enPicoConnectProbeRange = 5;
449pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_1V: enPicoConnectProbeRange = 6;
450pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_2V: enPicoConnectProbeRange = 7;
451pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_5V: enPicoConnectProbeRange = 8;
452pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_10V: enPicoConnectProbeRange = 9;
453pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_20V: enPicoConnectProbeRange = 10;
454pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_50V: enPicoConnectProbeRange = 11;
455pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_100V: enPicoConnectProbeRange = 12;
456pub const enPicoConnectProbeRange_PICO_D9_2X_BNC_200V: enPicoConnectProbeRange = 13;
457pub const enPicoConnectProbeRange_PICO_MAX_D9_2X_BNC_RANGES: enPicoConnectProbeRange = 14;
458pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_10MV: enPicoConnectProbeRange = 0;
459pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_20MV: enPicoConnectProbeRange = 1;
460pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_50MV: enPicoConnectProbeRange = 2;
461pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_100MV: enPicoConnectProbeRange = 3;
462pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_200MV: enPicoConnectProbeRange = 4;
463pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_500MV: enPicoConnectProbeRange = 5;
464pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_1V: enPicoConnectProbeRange = 6;
465pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_2V: enPicoConnectProbeRange = 7;
466pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_5V: enPicoConnectProbeRange = 8;
467pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_10V: enPicoConnectProbeRange = 9;
468pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_20V: enPicoConnectProbeRange = 10;
469pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_50V: enPicoConnectProbeRange = 11;
470pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_100V: enPicoConnectProbeRange = 12;
471pub const enPicoConnectProbeRange_PICO_DIFFERENTIAL_200V: enPicoConnectProbeRange = 13;
472pub const enPicoConnectProbeRange_PICO_MAX_DIFFERENTIAL_RANGES: enPicoConnectProbeRange = 14;
473pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_200A_2kA_1A: enPicoConnectProbeRange = 4000;
474pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_200A_2kA_2A: enPicoConnectProbeRange = 4001;
475pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_200A_2kA_5A: enPicoConnectProbeRange = 4002;
476pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_200A_2kA_10A: enPicoConnectProbeRange = 4003;
477pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_200A_2kA_20A: enPicoConnectProbeRange = 4004;
478pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_200A_2kA_50A: enPicoConnectProbeRange = 4005;
479pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_200A_2kA_100A: enPicoConnectProbeRange = 4006;
480pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_200A_2kA_200A: enPicoConnectProbeRange = 4007;
481pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_200A_2kA_500A: enPicoConnectProbeRange = 4008;
482pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_200A_2kA_1000A: enPicoConnectProbeRange = 4009;
483pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_200A_2kA_2000A: enPicoConnectProbeRange = 4010;
484pub const enPicoConnectProbeRange_PICO_MAX_CURRENT_CLAMP_200A_2kA_RANGES: enPicoConnectProbeRange =
485 11;
486pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_40A_100mA: enPicoConnectProbeRange = 5000;
487pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_40A_200mA: enPicoConnectProbeRange = 5001;
488pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_40A_500mA: enPicoConnectProbeRange = 5002;
489pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_40A_1A: enPicoConnectProbeRange = 5003;
490pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_40A_2A: enPicoConnectProbeRange = 5004;
491pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_40A_5A: enPicoConnectProbeRange = 5005;
492pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_40A_10A: enPicoConnectProbeRange = 5006;
493pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_40A_20A: enPicoConnectProbeRange = 5007;
494pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_40A_40A: enPicoConnectProbeRange = 5008;
495pub const enPicoConnectProbeRange_PICO_MAX_CURRENT_CLAMP_40A_RANGES: enPicoConnectProbeRange = 9;
496pub const enPicoConnectProbeRange_PICO_1KV_2_5V: enPicoConnectProbeRange = 6003;
497pub const enPicoConnectProbeRange_PICO_1KV_5V: enPicoConnectProbeRange = 6004;
498pub const enPicoConnectProbeRange_PICO_1KV_12_5V: enPicoConnectProbeRange = 6005;
499pub const enPicoConnectProbeRange_PICO_1KV_25V: enPicoConnectProbeRange = 6006;
500pub const enPicoConnectProbeRange_PICO_1KV_50V: enPicoConnectProbeRange = 6007;
501pub const enPicoConnectProbeRange_PICO_1KV_125V: enPicoConnectProbeRange = 6008;
502pub const enPicoConnectProbeRange_PICO_1KV_250V: enPicoConnectProbeRange = 6009;
503pub const enPicoConnectProbeRange_PICO_1KV_500V: enPicoConnectProbeRange = 6010;
504pub const enPicoConnectProbeRange_PICO_1KV_1000V: enPicoConnectProbeRange = 6011;
505pub const enPicoConnectProbeRange_PICO_MAX_1KV_RANGES: enPicoConnectProbeRange = 9;
506pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_2000ARMS_10A: enPicoConnectProbeRange = 6500;
507pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_2000ARMS_20A: enPicoConnectProbeRange = 6501;
508pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_2000ARMS_50A: enPicoConnectProbeRange = 6502;
509pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_2000ARMS_100A: enPicoConnectProbeRange = 6503;
510pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_2000ARMS_200A: enPicoConnectProbeRange = 6504;
511pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_2000ARMS_500A: enPicoConnectProbeRange = 6505;
512pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_2000ARMS_1000A: enPicoConnectProbeRange = 6506;
513pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_2000ARMS_2000A: enPicoConnectProbeRange = 6507;
514pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_2000ARMS_5000A: enPicoConnectProbeRange = 6508;
515pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_2000ARMS_RANGES: enPicoConnectProbeRange = 9;
516pub const enPicoConnectProbeRange_PICO_RESISTANCE_LEAD_NEG5_TO_20OHM: enPicoConnectProbeRange =
517 7000;
518pub const enPicoConnectProbeRange_PICO_RESISTANCE_LEAD_NEG50_TO_200OHM: enPicoConnectProbeRange =
519 7001;
520pub const enPicoConnectProbeRange_PICO_RESISTANCE_LEAD_NEG500_TO_2KOHM: enPicoConnectProbeRange =
521 7002;
522pub const enPicoConnectProbeRange_PICO_RESISTANCE_LEAD_NEG5K_TO_20KOHM: enPicoConnectProbeRange =
523 7003;
524pub const enPicoConnectProbeRange_PICO_RESISTANCE_LEAD_NEG50K_TO_LEAD_200KOHM:
525 enPicoConnectProbeRange = 7004;
526pub const enPicoConnectProbeRange_PICO_RESISTANCE_LEAD_NEG500K_TO_LEAD_2MOHM:
527 enPicoConnectProbeRange = 7005;
528pub const enPicoConnectProbeRange_PICO_RESISTANCE_LEAD_DIODE_TEST: enPicoConnectProbeRange = 7006;
529pub const enPicoConnectProbeRange_PICO_MAX_RESISTANCE_LEAD_RANGES: enPicoConnectProbeRange = 6;
530pub const enPicoConnectProbeRange_PICO_HT_NEG3_TO_5KV: enPicoConnectProbeRange = 8950;
531pub const enPicoConnectProbeRange_PICO_HT_NEG3_TO_10KV: enPicoConnectProbeRange = 8951;
532pub const enPicoConnectProbeRange_PICO_HT_NEG5_TO_20KV: enPicoConnectProbeRange = 8952;
533pub const enPicoConnectProbeRange_PICO_HT_NEG5_TO_50KV: enPicoConnectProbeRange = 8953;
534pub const enPicoConnectProbeRange_PICO_HT_NEG5_TO_100KV: enPicoConnectProbeRange = 8954;
535pub const enPicoConnectProbeRange_PICO_HT_NEG3_TO_5KV_INVERTED: enPicoConnectProbeRange = 8955;
536pub const enPicoConnectProbeRange_PICO_HT_NEG3_TO_10KV_INVERTED: enPicoConnectProbeRange = 8956;
537pub const enPicoConnectProbeRange_PICO_HT_NEG5_TO_20KV_INVERTED: enPicoConnectProbeRange = 8957;
538pub const enPicoConnectProbeRange_PICO_HT_NEG5_TO_50KV_INVERTED: enPicoConnectProbeRange = 8958;
539pub const enPicoConnectProbeRange_PICO_HT_NEG5_TO_100KV_INVERTED: enPicoConnectProbeRange = 8959;
540pub const enPicoConnectProbeRange_PICO_MAX_HT_RANGES: enPicoConnectProbeRange = 10;
541pub const enPicoConnectProbeRange_PICO_TEMPERATURE_NEG50_TO_150DEGC: enPicoConnectProbeRange = 9000;
542pub const enPicoConnectProbeRange_PICO_PRESSURE_SENSOR_NEG100000_TO_150000_PASCALS:
543 enPicoConnectProbeRange = 9100;
544pub const enPicoConnectProbeRange_PICO_PRESSURE_SENSOR_NEG100000_TO_400000_PASCALS:
545 enPicoConnectProbeRange = 9101;
546pub const enPicoConnectProbeRange_PICO_PRESSURE_SENSOR_NEG200000_TO_800000_PASCALS:
547 enPicoConnectProbeRange = 9102;
548pub const enPicoConnectProbeRange_PICO_PRESSURE_SENSOR_NEG400000_TO_1600000_PASCALS:
549 enPicoConnectProbeRange = 9103;
550pub const enPicoConnectProbeRange_PICO_PRESSURE_SENSOR_NEG400000_TO_3400000_PASCALS:
551 enPicoConnectProbeRange = 9104;
552pub const enPicoConnectProbeRange_PICO_PRESSURE_SENSOR_NEG150000_TO_1350000_PASCALS:
553 enPicoConnectProbeRange = 9105;
554pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_100A_2_5A: enPicoConnectProbeRange = 10000;
555pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_100A_5A: enPicoConnectProbeRange = 10001;
556pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_100A_10A: enPicoConnectProbeRange = 10002;
557pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_100A_25A: enPicoConnectProbeRange = 10003;
558pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_100A_50A: enPicoConnectProbeRange = 10004;
559pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_100A_100A: enPicoConnectProbeRange = 10005;
560pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_2A: enPicoConnectProbeRange = 10500;
561pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_5A: enPicoConnectProbeRange = 10501;
562pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_10A: enPicoConnectProbeRange = 10502;
563pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_20A: enPicoConnectProbeRange = 10503;
564pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_50A: enPicoConnectProbeRange = 10504;
565pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_60A: enPicoConnectProbeRange = 10505;
566pub const enPicoConnectProbeRange_PICO_OPTICAL_SENSOR_10V: enPicoConnectProbeRange = 10550;
567pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_V2_0_5A: enPicoConnectProbeRange = 10600;
568pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_V2_1A: enPicoConnectProbeRange = 10601;
569pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_V2_2A: enPicoConnectProbeRange = 10602;
570pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_V2_5A: enPicoConnectProbeRange = 10603;
571pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_V2_10A: enPicoConnectProbeRange = 10604;
572pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_V2_20A: enPicoConnectProbeRange = 10605;
573pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_V2_50A: enPicoConnectProbeRange = 10606;
574pub const enPicoConnectProbeRange_PICO_CURRENT_CLAMP_60A_V2_60A: enPicoConnectProbeRange = 10607;
575pub type enPicoConnectProbeRange = ::std::os::raw::c_uint;
576pub use self::enPicoConnectProbeRange as PICO_CONNECT_PROBE_RANGE;
577#[repr(C, packed)]
578#[derive(Debug, Copy, Clone)]
579pub struct tPicoTriggerInfo {
580 pub status: PICO_STATUS,
581 pub segmentIndex: u64,
582 pub triggerIndex: u64,
583 pub triggerTime: f64,
584 pub timeUnits: PICO_TIME_UNITS,
585 pub missedTriggers: u64,
586 pub timeStampCounter: u64,
587}
588
589pub type PICO_TRIGGER_INFO = tPicoTriggerInfo;
590#[repr(C, packed)]
591#[derive(Debug, Copy, Clone)]
592pub struct tPicoTriggerChannelProperties {
593 pub thresholdUpper: i16,
594 pub thresholdUpperHysteresis: u16,
595 pub thresholdLower: i16,
596 pub thresholdLowerHysteresis: u16,
597 pub channel: PICO_CHANNEL,
598}
599
600pub type PICO_TRIGGER_CHANNEL_PROPERTIES = tPicoTriggerChannelProperties;
601#[repr(C, packed)]
602#[derive(Debug, Copy, Clone)]
603pub struct tPicoCondition {
604 pub source: PICO_CHANNEL,
605 pub condition: PICO_TRIGGER_STATE,
606}
607
608pub type PICO_CONDITION = tPicoCondition;
609#[repr(C, packed)]
610#[derive(Debug, Copy, Clone)]
611pub struct tPicoDirection {
612 pub channel: PICO_CHANNEL,
613 pub direction: PICO_THRESHOLD_DIRECTION,
614 pub thresholdMode: PICO_THRESHOLD_MODE,
615}
616pub type PICO_DIRECTION = tPicoDirection;
617#[repr(C, packed)]
618#[derive(Debug, Copy, Clone)]
619pub struct tPicoUserProbeInteractions {
620 pub connected_: u16,
621 pub channel_: PICO_CHANNEL,
622 pub enabled_: u16,
623 pub probeName_: PicoConnectProbe,
624 pub requiresPower_: u8,
625 pub isPowered_: u8,
626 pub status_: PICO_STATUS,
627 pub probeOff_: PICO_CONNECT_PROBE_RANGE,
628 pub rangeFirst_: PICO_CONNECT_PROBE_RANGE,
629 pub rangeLast_: PICO_CONNECT_PROBE_RANGE,
630 pub rangeCurrent_: PICO_CONNECT_PROBE_RANGE,
631 pub couplingFirst_: PICO_COUPLING,
632 pub couplingLast_: PICO_COUPLING,
633 pub couplingCurrent_: PICO_COUPLING,
634 pub filterFlags_: PICO_BANDWIDTH_LIMITER_FLAGS,
635 pub filterCurrent_: PICO_BANDWIDTH_LIMITER_FLAGS,
636 pub defaultFilter_: PICO_BANDWIDTH_LIMITER,
637}
638
639pub type PICO_USER_PROBE_INTERACTIONS = tPicoUserProbeInteractions;
640#[repr(C, packed)]
641#[derive(Debug, Copy, Clone)]
642pub struct tPicoDataBuffers {
643 pub channel_: PICO_CHANNEL,
644 pub waveform_: u64,
645 pub downSampleRatioMode_: PICO_RATIO_MODE,
646 pub read_: PICO_READ_SELECTION,
647 pub bufferMax_: PICO_POINTER,
648 pub bufferMin_: PICO_POINTER,
649 pub dataType_: PICO_DATA_TYPE,
650 pub nDistributionPoints_: u32,
651}
652pub type PICO_DATA_BUFFERS = tPicoDataBuffers;
653#[repr(C, packed)]
654#[derive(Debug, Copy, Clone)]
655pub struct tPicoStreamingDataInfo {
656 pub channel_: PICO_CHANNEL,
657 pub mode_: PICO_RATIO_MODE,
658 pub type_: PICO_DATA_TYPE,
659 pub noOfSamples_: i32,
660 pub bufferIndex_: u64,
661 pub startIndex_: i32,
662 pub overflow_: i16,
663}
664pub type PICO_STREAMING_DATA_INFO = tPicoStreamingDataInfo;
665#[repr(C, packed)]
666#[derive(Debug, Copy, Clone)]
667pub struct tPicoStreamingDataTriggerInfo {
668 pub triggerAt_: u64,
669 pub triggered_: i16,
670 pub autoStop_: i16,
671}
672
673pub type PICO_STREAMING_DATA_TRIGGER_INFO = tPicoStreamingDataTriggerInfo;
674#[repr(C, packed)]
675#[derive(Debug, Copy, Clone)]
676pub struct tPicoScalingFactors {
677 pub channel: PICO_CHANNEL,
678 pub range: PICO_CONNECT_PROBE_RANGE,
679 pub offset: i16,
680 pub scalingFactor: f64,
681}
682
683pub type PICO_SCALING_FACTORS_VALUES = tPicoScalingFactors;
684#[repr(C, packed)]
685#[derive(Debug, Copy, Clone)]
686pub struct tProbeApp {
687 pub id_: i32,
688 pub appMajorVersion_: i32,
689 pub appMinorVersion_: i32,
690}
691
692pub type PROBE_APP = tProbeApp;
693#[repr(C, packed)]
694#[derive(Debug, Copy, Clone)]
695pub struct tDigitalChannelDirections {
696 pub channel: PICO_PORT_DIGITAL_CHANNEL,
697 pub direction: PICO_DIGITAL_DIRECTION,
698}
699
700pub type PICO_DIGITAL_CHANNEL_DIRECTIONS = tDigitalChannelDirections;
701#[repr(C, packed)]
702#[derive(Debug, Copy, Clone)]
703pub struct tPicoDigitalPortInteractions {
704 pub connected_: u16,
705 pub channel_: PICO_CHANNEL,
706 pub digitalPortName_: PICO_DIGITAL_PORT,
707 pub status_: PICO_STATUS,
708 pub serial_: [i8; 10usize],
709 pub calibrationDate_: [i8; 8usize],
710}
711
712pub type PICO_DIGITAL_PORT_INTERACTIONS = tPicoDigitalPortInteractions;
713#[repr(C, packed)]
714#[derive(Debug, Copy, Clone)]
715pub struct tPicoChannelOvervoltageTripped {
716 pub channel_: PICO_CHANNEL,
717 pub tripped_: u8,
718}
719
720pub type PICO_CHANNEL_OVERVOLTAGE_TRIPPED = tPicoChannelOvervoltageTripped;
721pub type PicoUpdateFirmwareProgress =
722 ::std::option::Option<extern "C" fn(handle: i16, progress: u16)>;
723pub type PicoProbeInteractions = ::std::option::Option<
724 extern "C" fn(
725 handle: i16,
726 status: PICO_STATUS,
727 probes: *mut PICO_USER_PROBE_INTERACTIONS,
728 nProbes: u32,
729 ),
730>;
731pub type PicoDataReadyUsingReads = ::std::option::Option<
732 extern "C" fn(
733 handle: i16,
734 read: PICO_READ_SELECTION,
735 status: PICO_STATUS,
736 fromSegmentIndex: u64,
737 toSegmentIndex: u64,
738 pParameter: PICO_POINTER,
739 ),
740>;
741pub type PicoExternalReferenceInteractions = ::std::option::Option<
742 extern "C" fn(handle: i16, status: PICO_STATUS, reference: PICO_CLOCK_REFERENCE),
743>;
744pub type PicoAWGOverrangeInteractions =
745 ::std::option::Option<extern "C" fn(handle: i16, status: PICO_STATUS)>;
746pub type PicoTemperatureSensorInteractions = ::std::option::Option<
747 extern "C" fn(handle: i16, temperatureStatus: PICO_TEMPERATURE_REFERENCE),
748>;
749#[repr(C, packed)]
750#[derive(Debug, Copy, Clone)]
751pub struct tPicoVersion {
752 pub major_: i16,
753 pub minor_: i16,
754 pub revision_: i16,
755 pub build_: i16,
756}
757
758pub type PICO_VERSION = tPicoVersion;
759pub type ps6000aBlockReady = ::std::option::Option<
760 extern "C" fn(handle: i16, status: PICO_STATUS, pParameter: PICO_POINTER),
761>;
762pub type ps6000aStreamingReady = ::std::option::Option<
763 extern "C" fn(
764 handle: i16,
765 noOfSamples: i64,
766 bufferIndex: u64,
767 startIndex: u32,
768 overflow: i16,
769 triggerAt: u32,
770 triggered: i16,
771 autoStop: i16,
772 pParameter: PICO_POINTER,
773 ),
774>;
775pub type ps6000aDataReady = ::std::option::Option<
776 extern "C" fn(
777 handle: i16,
778 status: PICO_STATUS,
779 noOfSamples: u64,
780 overflow: i16,
781 pParameter: PICO_POINTER,
782 ),
783>;
784pub type ps6000aProbeInteractions = ::std::option::Option<
785 extern "C" fn(
786 handle: i16,
787 status: PICO_STATUS,
788 probes: *mut PICO_USER_PROBE_INTERACTIONS,
789 nProbes: u32,
790 ),
791>;
792
793extern crate libloading;
794pub struct PS6000ALoader {
795 __library: ::libloading::Library,
796 pub ps6000aApplyFix: Result<unsafe extern "C" fn(u32, u16), ::libloading::Error>,
797 pub ps6000aOpenUnit: Result<
798 unsafe extern "C" fn(
799 handle: *mut i16,
800 serial: *mut i8,
801 resolution: PICO_DEVICE_RESOLUTION,
802 ) -> PICO_STATUS,
803 ::libloading::Error,
804 >,
805 pub ps6000aOpenUnitAsync: Result<
806 unsafe extern "C" fn(
807 status: *mut i16,
808 serial: *mut i8,
809 resolution: PICO_DEVICE_RESOLUTION,
810 ) -> PICO_STATUS,
811 ::libloading::Error,
812 >,
813 pub ps6000aOpenUnitProgress: Result<
814 unsafe extern "C" fn(
815 handle: *mut i16,
816 progressPercent: *mut i16,
817 complete: *mut i16,
818 ) -> PICO_STATUS,
819 ::libloading::Error,
820 >,
821 pub ps6000aGetUnitInfo: Result<
822 unsafe extern "C" fn(
823 handle: i16,
824 string: *mut i8,
825 stringLength: i16,
826 requiredSize: *mut i16,
827 info: PICO_INFO,
828 ) -> PICO_STATUS,
829 ::libloading::Error,
830 >,
831 pub ps6000aCloseUnit:
832 Result<unsafe extern "C" fn(handle: i16) -> PICO_STATUS, ::libloading::Error>,
833 pub ps6000aFlashLed:
834 Result<unsafe extern "C" fn(handle: i16, start: i16) -> PICO_STATUS, ::libloading::Error>,
835 pub ps6000aMemorySegments: Result<
836 unsafe extern "C" fn(handle: i16, nSegments: u64, nMaxSamples: *mut u64) -> PICO_STATUS,
837 ::libloading::Error,
838 >,
839 pub ps6000aMemorySegmentsBySamples: Result<
840 unsafe extern "C" fn(handle: i16, nSamples: u64, nMaxSegments: *mut u64) -> PICO_STATUS,
841 ::libloading::Error,
842 >,
843 pub ps6000aGetMaximumAvailableMemory: Result<
844 unsafe extern "C" fn(
845 handle: i16,
846 nMaxSamples: *mut u64,
847 resolution: PICO_DEVICE_RESOLUTION,
848 ) -> PICO_STATUS,
849 ::libloading::Error,
850 >,
851 pub ps6000aQueryMaxSegmentsBySamples: Result<
852 unsafe extern "C" fn(
853 handle: i16,
854 nSamples: u64,
855 nChannelEnabled: u32,
856 nMaxSegments: *mut u64,
857 resolution: PICO_DEVICE_RESOLUTION,
858 ) -> PICO_STATUS,
859 ::libloading::Error,
860 >,
861 pub ps6000aSetChannelOn: Result<
862 unsafe extern "C" fn(
863 handle: i16,
864 channel: PICO_CHANNEL,
865 coupling: PICO_COUPLING,
866 range: PICO_CONNECT_PROBE_RANGE,
867 analogueOffset: f64,
868 bandwidth: PICO_BANDWIDTH_LIMITER,
869 ) -> PICO_STATUS,
870 ::libloading::Error,
871 >,
872 pub ps6000aSetChannelOff: Result<
873 unsafe extern "C" fn(handle: i16, channel: PICO_CHANNEL) -> PICO_STATUS,
874 ::libloading::Error,
875 >,
876 pub ps6000aSetDigitalPortOn: Result<
877 unsafe extern "C" fn(
878 handle: i16,
879 port: PICO_CHANNEL,
880 logicThresholdLevel: *mut i16,
881 logicThresholdLevelLength: i16,
882 hysteresis: PICO_DIGITAL_PORT_HYSTERESIS,
883 ) -> PICO_STATUS,
884 ::libloading::Error,
885 >,
886 pub ps6000aSetDigitalPortOff: Result<
887 unsafe extern "C" fn(handle: i16, port: PICO_CHANNEL) -> PICO_STATUS,
888 ::libloading::Error,
889 >,
890 pub ps6000aGetTimebase: Result<
891 unsafe extern "C" fn(
892 handle: i16,
893 timebase: u32,
894 noSamples: u64,
895 timeIntervalNanoseconds: *mut f64,
896 maxSamples: *mut u64,
897 segmentIndex: u64,
898 ) -> PICO_STATUS,
899 ::libloading::Error,
900 >,
901 pub ps6000aSigGenWaveform: Result<
902 unsafe extern "C" fn(
903 handle: i16,
904 waveType: PICO_WAVE_TYPE,
905 buffer: *mut i16,
906 bufferLength: u64,
907 ) -> PICO_STATUS,
908 ::libloading::Error,
909 >,
910 pub ps6000aSigGenRange: Result<
911 unsafe extern "C" fn(handle: i16, peakToPeakVolts: f64, offsetVolts: f64) -> PICO_STATUS,
912 ::libloading::Error,
913 >,
914 pub ps6000aSigGenWaveformDutyCycle: Result<
915 unsafe extern "C" fn(handle: i16, dutyCyclePercent: f64) -> PICO_STATUS,
916 ::libloading::Error,
917 >,
918 pub ps6000aSigGenTrigger: Result<
919 unsafe extern "C" fn(
920 handle: i16,
921 triggerType: PICO_SIGGEN_TRIG_TYPE,
922 triggerSource: PICO_SIGGEN_TRIG_SOURCE,
923 cycles: u64,
924 autoTriggerPicoSeconds: u64,
925 ) -> PICO_STATUS,
926 ::libloading::Error,
927 >,
928 pub ps6000aSigGenFilter: Result<
929 unsafe extern "C" fn(handle: i16, filterState: PICO_SIGGEN_FILTER_STATE) -> PICO_STATUS,
930 ::libloading::Error,
931 >,
932 pub ps6000aSigGenFrequency: Result<
933 unsafe extern "C" fn(handle: i16, frequencyHz: f64) -> PICO_STATUS,
934 ::libloading::Error,
935 >,
936 pub ps6000aSigGenFrequencySweep: Result<
937 unsafe extern "C" fn(
938 handle: i16,
939 stopFrequencyHz: f64,
940 frequencyIncrement: f64,
941 dwellTimeSeconds: f64,
942 sweepType: PICO_SWEEP_TYPE,
943 ) -> PICO_STATUS,
944 ::libloading::Error,
945 >,
946 pub ps6000aSigGenPhase: Result<
947 unsafe extern "C" fn(handle: i16, deltaPhase: u64) -> PICO_STATUS,
948 ::libloading::Error,
949 >,
950 pub ps6000aSigGenPhaseSweep: Result<
951 unsafe extern "C" fn(
952 handle: i16,
953 stopDeltaPhase: u64,
954 deltaPhaseIncrement: u64,
955 dwellCount: u64,
956 sweepType: PICO_SWEEP_TYPE,
957 ) -> PICO_STATUS,
958 ::libloading::Error,
959 >,
960 pub ps6000aSigGenClockManual: Result<
961 unsafe extern "C" fn(
962 handle: i16,
963 dacClockFrequency: f64,
964 prescaleRatio: u64,
965 ) -> PICO_STATUS,
966 ::libloading::Error,
967 >,
968 pub ps6000aSigGenSoftwareTriggerControl: Result<
969 unsafe extern "C" fn(handle: i16, triggerState: PICO_SIGGEN_TRIG_TYPE) -> PICO_STATUS,
970 ::libloading::Error,
971 >,
972 pub ps6000aSigGenApply: Result<
973 unsafe extern "C" fn(
974 handle: i16,
975 sigGenEnabled: i16,
976 sweepEnabled: i16,
977 triggerEnabled: i16,
978 automaticClockOptimisationEnabled: i16,
979 overrideAutomaticClockAndPrescale: i16,
980 frequency: *mut f64,
981 stopFrequency: *mut f64,
982 frequencyIncrement: *mut f64,
983 dwellTime: *mut f64,
984 ) -> PICO_STATUS,
985 ::libloading::Error,
986 >,
987 pub ps6000aSigGenLimits: Result<
988 unsafe extern "C" fn(
989 handle: i16,
990 parameter: PICO_SIGGEN_PARAMETER,
991 minimumPermissibleValue: *mut f64,
992 maximumPermissibleValue: *mut f64,
993 step: *mut f64,
994 ) -> PICO_STATUS,
995 ::libloading::Error,
996 >,
997 pub ps6000aSigGenFrequencyLimits: Result<
998 unsafe extern "C" fn(
999 handle: i16,
1000 waveType: PICO_WAVE_TYPE,
1001 numSamples: *mut u64,
1002 startFrequency: *mut f64,
1003 sweepEnabled: i16,
1004 manualDacClockFrequency: *mut f64,
1005 manualPrescaleRatio: *mut u64,
1006 maxStopFrequencyOut: *mut f64,
1007 minFrequencyStepOut: *mut f64,
1008 maxFrequencyStepOut: *mut f64,
1009 minDwellTimeOut: *mut f64,
1010 maxDwellTimeOut: *mut f64,
1011 ) -> PICO_STATUS,
1012 ::libloading::Error,
1013 >,
1014 pub ps6000aSigGenPause:
1015 Result<unsafe extern "C" fn(handle: i16) -> PICO_STATUS, ::libloading::Error>,
1016 pub ps6000aSigGenRestart:
1017 Result<unsafe extern "C" fn(handle: i16) -> PICO_STATUS, ::libloading::Error>,
1018 pub ps6000aSetSimpleTrigger: Result<
1019 unsafe extern "C" fn(
1020 handle: i16,
1021 enable: i16,
1022 source: PICO_CHANNEL,
1023 threshold: i16,
1024 direction: PICO_THRESHOLD_DIRECTION,
1025 delay: u64,
1026 autoTriggerMicroSeconds: u32,
1027 ) -> PICO_STATUS,
1028 ::libloading::Error,
1029 >,
1030 pub ps6000aTriggerWithinPreTriggerSamples: Result<
1031 unsafe extern "C" fn(handle: i16, state: PICO_TRIGGER_WITHIN_PRE_TRIGGER) -> PICO_STATUS,
1032 ::libloading::Error,
1033 >,
1034 pub ps6000aSetTriggerChannelProperties: Result<
1035 unsafe extern "C" fn(
1036 handle: i16,
1037 channelProperties: *mut PICO_TRIGGER_CHANNEL_PROPERTIES,
1038 nChannelProperties: i16,
1039 auxOutputEnable: i16,
1040 autoTriggerMicroSeconds: u32,
1041 ) -> PICO_STATUS,
1042 ::libloading::Error,
1043 >,
1044 pub ps6000aSetTriggerChannelConditions: Result<
1045 unsafe extern "C" fn(
1046 handle: i16,
1047 conditions: *mut PICO_CONDITION,
1048 nConditions: i16,
1049 action: PICO_ACTION,
1050 ) -> PICO_STATUS,
1051 ::libloading::Error,
1052 >,
1053 pub ps6000aSetTriggerChannelDirections: Result<
1054 unsafe extern "C" fn(
1055 handle: i16,
1056 directions: *mut PICO_DIRECTION,
1057 nDirections: i16,
1058 ) -> PICO_STATUS,
1059 ::libloading::Error,
1060 >,
1061 pub ps6000aSetTriggerDelay:
1062 Result<unsafe extern "C" fn(handle: i16, delay: u64) -> PICO_STATUS, ::libloading::Error>,
1063 pub ps6000aSetPulseWidthQualifierProperties: Result<
1064 unsafe extern "C" fn(
1065 handle: i16,
1066 lower: u32,
1067 upper: u32,
1068 type_: PICO_PULSE_WIDTH_TYPE,
1069 ) -> PICO_STATUS,
1070 ::libloading::Error,
1071 >,
1072 pub ps6000aSetPulseWidthQualifierConditions: Result<
1073 unsafe extern "C" fn(
1074 handle: i16,
1075 conditions: *mut PICO_CONDITION,
1076 nConditions: i16,
1077 action: PICO_ACTION,
1078 ) -> PICO_STATUS,
1079 ::libloading::Error,
1080 >,
1081 pub ps6000aSetPulseWidthQualifierDirections: Result<
1082 unsafe extern "C" fn(
1083 handle: i16,
1084 directions: *mut PICO_DIRECTION,
1085 nDirections: i16,
1086 ) -> PICO_STATUS,
1087 ::libloading::Error,
1088 >,
1089 pub ps6000aSetTriggerDigitalPortProperties: Result<
1090 unsafe extern "C" fn(
1091 handle: i16,
1092 port: PICO_CHANNEL,
1093 directions: *mut PICO_DIGITAL_CHANNEL_DIRECTIONS,
1094 nDirections: i16,
1095 ) -> PICO_STATUS,
1096 ::libloading::Error,
1097 >,
1098 pub ps6000aSetPulseWidthDigitalPortProperties: Result<
1099 unsafe extern "C" fn(
1100 handle: i16,
1101 port: PICO_CHANNEL,
1102 directions: *mut PICO_DIGITAL_CHANNEL_DIRECTIONS,
1103 nDirections: i16,
1104 ) -> PICO_STATUS,
1105 ::libloading::Error,
1106 >,
1107 pub ps6000aGetTriggerTimeOffset: Result<
1108 unsafe extern "C" fn(
1109 handle: i16,
1110 time: *mut i64,
1111 timeUnits: *mut PICO_TIME_UNITS,
1112 segmentIndex: u64,
1113 ) -> PICO_STATUS,
1114 ::libloading::Error,
1115 >,
1116 pub ps6000aGetValuesTriggerTimeOffsetBulk: Result<
1117 unsafe extern "C" fn(
1118 handle: i16,
1119 times: *mut i64,
1120 timeUnits: *mut PICO_TIME_UNITS,
1121 fromSegmentIndex: u64,
1122 toSegmentIndex: u64,
1123 ) -> PICO_STATUS,
1124 ::libloading::Error,
1125 >,
1126 pub ps6000aSetDataBuffer: Result<
1127 unsafe extern "C" fn(
1128 handle: i16,
1129 channel: PICO_CHANNEL,
1130 buffer: PICO_POINTER,
1131 nSamples: i32,
1132 dataType: PICO_DATA_TYPE,
1133 waveform: u64,
1134 downSampleRatioMode: PICO_RATIO_MODE,
1135 action: PICO_ACTION,
1136 ) -> PICO_STATUS,
1137 ::libloading::Error,
1138 >,
1139 pub ps6000aSetDataBuffers: Result<
1140 unsafe extern "C" fn(
1141 handle: i16,
1142 channel: PICO_CHANNEL,
1143 bufferMax: PICO_POINTER,
1144 bufferMin: PICO_POINTER,
1145 nSamples: i32,
1146 dataType: PICO_DATA_TYPE,
1147 waveform: u64,
1148 downSampleRatioMode: PICO_RATIO_MODE,
1149 action: PICO_ACTION,
1150 ) -> PICO_STATUS,
1151 ::libloading::Error,
1152 >,
1153 pub ps6000aRunBlock: Result<
1154 unsafe extern "C" fn(
1155 handle: i16,
1156 noOfPreTriggerSamples: u64,
1157 noOfPostTriggerSamples: u64,
1158 timebase: u32,
1159 timeIndisposedMs: *mut f64,
1160 segmentIndex: u64,
1161 lpReady: ps6000aBlockReady,
1162 pParameter: PICO_POINTER,
1163 ) -> PICO_STATUS,
1164 ::libloading::Error,
1165 >,
1166 pub ps6000aIsReady: Result<
1167 unsafe extern "C" fn(handle: i16, ready: *mut i16) -> PICO_STATUS,
1168 ::libloading::Error,
1169 >,
1170 pub ps6000aRunStreaming: Result<
1171 unsafe extern "C" fn(
1172 handle: i16,
1173 sampleInterval: *mut f64,
1174 sampleIntervalTimeUnits: PICO_TIME_UNITS,
1175 maxPreTriggerSamples: u64,
1176 maxPostPreTriggerSamples: u64,
1177 autoStop: i16,
1178 downSampleRatio: u64,
1179 downSampleRatioMode: PICO_RATIO_MODE,
1180 ) -> PICO_STATUS,
1181 ::libloading::Error,
1182 >,
1183 pub ps6000aGetStreamingLatestValues: Result<
1184 unsafe extern "C" fn(
1185 handle: i16,
1186 streamingDataInfo: *mut PICO_STREAMING_DATA_INFO,
1187 nStreamingDataInfos: u64,
1188 triggerInfo: *mut PICO_STREAMING_DATA_TRIGGER_INFO,
1189 ) -> PICO_STATUS,
1190 ::libloading::Error,
1191 >,
1192 pub ps6000aNoOfStreamingValues: Result<
1193 unsafe extern "C" fn(handle: i16, noOfValues: *mut u64) -> PICO_STATUS,
1194 ::libloading::Error,
1195 >,
1196 pub ps6000aGetValues: Result<
1197 unsafe extern "C" fn(
1198 handle: i16,
1199 startIndex: u64,
1200 noOfSamples: *mut u64,
1201 downSampleRatio: u64,
1202 downSampleRatioMode: PICO_RATIO_MODE,
1203 segmentIndex: u64,
1204 overflow: *mut i16,
1205 ) -> PICO_STATUS,
1206 ::libloading::Error,
1207 >,
1208 pub ps6000aGetValuesBulk: Result<
1209 unsafe extern "C" fn(
1210 handle: i16,
1211 startIndex: u64,
1212 noOfSamples: *mut u64,
1213 fromSegmentIndex: u64,
1214 toSegmentIndex: u64,
1215 downSampleRatio: u64,
1216 downSampleRatioMode: PICO_RATIO_MODE,
1217 overflow: *mut i16,
1218 ) -> PICO_STATUS,
1219 ::libloading::Error,
1220 >,
1221 pub ps6000aGetValuesAsync: Result<
1222 unsafe extern "C" fn(
1223 handle: i16,
1224 startIndex: u64,
1225 noOfSamples: u64,
1226 downSampleRatio: u64,
1227 downSampleRatioMode: PICO_RATIO_MODE,
1228 segmentIndex: u64,
1229 lpDataReady: PICO_POINTER,
1230 pParameter: PICO_POINTER,
1231 ) -> PICO_STATUS,
1232 ::libloading::Error,
1233 >,
1234 pub ps6000aGetValuesBulkAsync: Result<
1235 unsafe extern "C" fn(
1236 handle: i16,
1237 startIndex: u64,
1238 noOfSamples: u64,
1239 fromSegmentIndex: u64,
1240 toSegmentIndex: u64,
1241 downSampleRatio: u64,
1242 downSampleRatioMode: PICO_RATIO_MODE,
1243 lpDataReady: PICO_POINTER,
1244 pParameter: PICO_POINTER,
1245 ) -> PICO_STATUS,
1246 ::libloading::Error,
1247 >,
1248 pub ps6000aGetValuesOverlapped: Result<
1249 unsafe extern "C" fn(
1250 handle: i16,
1251 startIndex: u64,
1252 noOfSamples: *mut u64,
1253 downSampleRatio: u64,
1254 downSampleRatioMode: PICO_RATIO_MODE,
1255 fromSegmentIndex: u64,
1256 toSegmentIndex: u64,
1257 overflow: *mut i16,
1258 ) -> PICO_STATUS,
1259 ::libloading::Error,
1260 >,
1261 pub ps6000aStopUsingGetValuesOverlapped:
1262 Result<unsafe extern "C" fn(handle: i16) -> PICO_STATUS, ::libloading::Error>,
1263 pub ps6000aGetNoOfCaptures: Result<
1264 unsafe extern "C" fn(handle: i16, nCaptures: *mut u64) -> PICO_STATUS,
1265 ::libloading::Error,
1266 >,
1267 pub ps6000aGetNoOfProcessedCaptures: Result<
1268 unsafe extern "C" fn(handle: i16, nProcessedCaptures: *mut u64) -> PICO_STATUS,
1269 ::libloading::Error,
1270 >,
1271 pub ps6000aStop: Result<unsafe extern "C" fn(handle: i16) -> PICO_STATUS, ::libloading::Error>,
1272 pub ps6000aSetNoOfCaptures: Result<
1273 unsafe extern "C" fn(handle: i16, nCaptures: u64) -> PICO_STATUS,
1274 ::libloading::Error,
1275 >,
1276 pub ps6000aGetTriggerInfo: Result<
1277 unsafe extern "C" fn(
1278 handle: i16,
1279 triggerInfo: *mut PICO_TRIGGER_INFO,
1280 firstSegmentIndex: u64,
1281 segmentCount: u64,
1282 ) -> PICO_STATUS,
1283 ::libloading::Error,
1284 >,
1285 pub ps6000aEnumerateUnits: Result<
1286 unsafe extern "C" fn(count: *mut i16, serials: *mut i8, serialLth: *mut i16) -> PICO_STATUS,
1287 ::libloading::Error,
1288 >,
1289 pub ps6000aPingUnit:
1290 Result<unsafe extern "C" fn(handle: i16) -> PICO_STATUS, ::libloading::Error>,
1291 pub ps6000aGetAnalogueOffsetLimits: Result<
1292 unsafe extern "C" fn(
1293 handle: i16,
1294 range: PICO_CONNECT_PROBE_RANGE,
1295 coupling: PICO_COUPLING,
1296 maximumVoltage: *mut f64,
1297 minimumVoltage: *mut f64,
1298 ) -> PICO_STATUS,
1299 ::libloading::Error,
1300 >,
1301 pub ps6000aGetMinimumTimebaseStateless: Result<
1302 unsafe extern "C" fn(
1303 handle: i16,
1304 enabledChannelFlags: PICO_CHANNEL_FLAGS,
1305 timebase: *mut u32,
1306 timeInterval: *mut f64,
1307 resolution: PICO_DEVICE_RESOLUTION,
1308 ) -> PICO_STATUS,
1309 ::libloading::Error,
1310 >,
1311 pub ps6000aNearestSampleIntervalStateless: Result<
1312 unsafe extern "C" fn(
1313 handle: i16,
1314 enabledChannelFlags: PICO_CHANNEL_FLAGS,
1315 timeIntervalRequested: f64,
1316 resolution: PICO_DEVICE_RESOLUTION,
1317 timebase: *mut u32,
1318 timeIntervalAvailable: *mut f64,
1319 ) -> PICO_STATUS,
1320 ::libloading::Error,
1321 >,
1322 pub ps6000aChannelCombinationsStateless: Result<
1323 unsafe extern "C" fn(
1324 handle: i16,
1325 channelFlagsCombinations: *mut PICO_CHANNEL_FLAGS,
1326 nChannelCombinations: *mut u32,
1327 resolution: PICO_DEVICE_RESOLUTION,
1328 timebase: u32,
1329 ) -> PICO_STATUS,
1330 ::libloading::Error,
1331 >,
1332 pub ps6000aSetDeviceResolution: Result<
1333 unsafe extern "C" fn(handle: i16, resolution: PICO_DEVICE_RESOLUTION) -> PICO_STATUS,
1334 ::libloading::Error,
1335 >,
1336 pub ps6000aGetDeviceResolution: Result<
1337 unsafe extern "C" fn(handle: i16, resolution: *mut PICO_DEVICE_RESOLUTION) -> PICO_STATUS,
1338 ::libloading::Error,
1339 >,
1340 pub ps6000aQueryOutputEdgeDetect: Result<
1341 unsafe extern "C" fn(handle: i16, state: *mut i16) -> PICO_STATUS,
1342 ::libloading::Error,
1343 >,
1344 pub ps6000aSetOutputEdgeDetect:
1345 Result<unsafe extern "C" fn(handle: i16, state: i16) -> PICO_STATUS, ::libloading::Error>,
1346 pub ps6000aGetScalingValues: Result<
1347 unsafe extern "C" fn(
1348 handle: i16,
1349 scalingValues: *mut PICO_SCALING_FACTORS_VALUES,
1350 nChannels: i16,
1351 ) -> PICO_STATUS,
1352 ::libloading::Error,
1353 >,
1354 pub ps6000aGetAdcLimits: Result<
1355 unsafe extern "C" fn(
1356 handle: i16,
1357 resolution: PICO_DEVICE_RESOLUTION,
1358 minValue: *mut i16,
1359 maxValue: *mut i16,
1360 ) -> PICO_STATUS,
1361 ::libloading::Error,
1362 >,
1363 pub ps6000aCheckForUpdate: Result<
1364 unsafe extern "C" fn(
1365 handle: i16,
1366 current: *mut PICO_VERSION,
1367 update: *mut PICO_VERSION,
1368 updateRequired: *mut u16,
1369 ) -> PICO_STATUS,
1370 ::libloading::Error,
1371 >,
1372 pub ps6000aStartFirmwareUpdate: Result<
1373 unsafe extern "C" fn(handle: i16, progress: PicoUpdateFirmwareProgress) -> PICO_STATUS,
1374 ::libloading::Error,
1375 >,
1376 pub ps6000aResetChannelsAndReportAllChannelsOvervoltageTripStatus: Result<
1377 unsafe extern "C" fn(
1378 handle: i16,
1379 allChannelsTrippedStatus: *mut PICO_CHANNEL_OVERVOLTAGE_TRIPPED,
1380 nChannelTrippedStatus: u8,
1381 ) -> PICO_STATUS,
1382 ::libloading::Error,
1383 >,
1384 pub ps6000aReportAllChannelsOvervoltageTripStatus: Result<
1385 unsafe extern "C" fn(
1386 handle: i16,
1387 allChannelsTrippedStatus: *mut PICO_CHANNEL_OVERVOLTAGE_TRIPPED,
1388 nChannelTrippedStatus: u8,
1389 ) -> PICO_STATUS,
1390 ::libloading::Error,
1391 >,
1392}
1393impl PS6000ALoader {
1394 pub unsafe fn new<P>(path: P) -> Result<Self, ::libloading::Error>
1395 where
1396 P: AsRef<::std::ffi::OsStr>,
1397 {
1398 let __library = ::libloading::Library::new(path)?;
1399 let ps6000aApplyFix = __library.get(b"ps6000aApplyFix\0").map(|sym| *sym);
1400 let ps6000aOpenUnit = __library.get(b"ps6000aOpenUnit\0").map(|sym| *sym);
1401 let ps6000aOpenUnitAsync = __library.get(b"ps6000aOpenUnitAsync\0").map(|sym| *sym);
1402 let ps6000aOpenUnitProgress = __library.get(b"ps6000aOpenUnitProgress\0").map(|sym| *sym);
1403 let ps6000aGetUnitInfo = __library.get(b"ps6000aGetUnitInfo\0").map(|sym| *sym);
1404 let ps6000aCloseUnit = __library.get(b"ps6000aCloseUnit\0").map(|sym| *sym);
1405 let ps6000aFlashLed = __library.get(b"ps6000aFlashLed\0").map(|sym| *sym);
1406 let ps6000aMemorySegments = __library.get(b"ps6000aMemorySegments\0").map(|sym| *sym);
1407 let ps6000aMemorySegmentsBySamples = __library
1408 .get(b"ps6000aMemorySegmentsBySamples\0")
1409 .map(|sym| *sym);
1410 let ps6000aGetMaximumAvailableMemory = __library
1411 .get(b"ps6000aGetMaximumAvailableMemory\0")
1412 .map(|sym| *sym);
1413 let ps6000aQueryMaxSegmentsBySamples = __library
1414 .get(b"ps6000aQueryMaxSegmentsBySamples\0")
1415 .map(|sym| *sym);
1416 let ps6000aSetChannelOn = __library.get(b"ps6000aSetChannelOn\0").map(|sym| *sym);
1417 let ps6000aSetChannelOff = __library.get(b"ps6000aSetChannelOff\0").map(|sym| *sym);
1418 let ps6000aSetDigitalPortOn = __library.get(b"ps6000aSetDigitalPortOn\0").map(|sym| *sym);
1419 let ps6000aSetDigitalPortOff = __library.get(b"ps6000aSetDigitalPortOff\0").map(|sym| *sym);
1420 let ps6000aGetTimebase = __library.get(b"ps6000aGetTimebase\0").map(|sym| *sym);
1421 let ps6000aSigGenWaveform = __library.get(b"ps6000aSigGenWaveform\0").map(|sym| *sym);
1422 let ps6000aSigGenRange = __library.get(b"ps6000aSigGenRange\0").map(|sym| *sym);
1423 let ps6000aSigGenWaveformDutyCycle = __library
1424 .get(b"ps6000aSigGenWaveformDutyCycle\0")
1425 .map(|sym| *sym);
1426 let ps6000aSigGenTrigger = __library.get(b"ps6000aSigGenTrigger\0").map(|sym| *sym);
1427 let ps6000aSigGenFilter = __library.get(b"ps6000aSigGenFilter\0").map(|sym| *sym);
1428 let ps6000aSigGenFrequency = __library.get(b"ps6000aSigGenFrequency\0").map(|sym| *sym);
1429 let ps6000aSigGenFrequencySweep = __library
1430 .get(b"ps6000aSigGenFrequencySweep\0")
1431 .map(|sym| *sym);
1432 let ps6000aSigGenPhase = __library.get(b"ps6000aSigGenPhase\0").map(|sym| *sym);
1433 let ps6000aSigGenPhaseSweep = __library.get(b"ps6000aSigGenPhaseSweep\0").map(|sym| *sym);
1434 let ps6000aSigGenClockManual = __library.get(b"ps6000aSigGenClockManual\0").map(|sym| *sym);
1435 let ps6000aSigGenSoftwareTriggerControl = __library
1436 .get(b"ps6000aSigGenSoftwareTriggerControl\0")
1437 .map(|sym| *sym);
1438 let ps6000aSigGenApply = __library.get(b"ps6000aSigGenApply\0").map(|sym| *sym);
1439 let ps6000aSigGenLimits = __library.get(b"ps6000aSigGenLimits\0").map(|sym| *sym);
1440 let ps6000aSigGenFrequencyLimits = __library
1441 .get(b"ps6000aSigGenFrequencyLimits\0")
1442 .map(|sym| *sym);
1443 let ps6000aSigGenPause = __library.get(b"ps6000aSigGenPause\0").map(|sym| *sym);
1444 let ps6000aSigGenRestart = __library.get(b"ps6000aSigGenRestart\0").map(|sym| *sym);
1445 let ps6000aSetSimpleTrigger = __library.get(b"ps6000aSetSimpleTrigger\0").map(|sym| *sym);
1446 let ps6000aTriggerWithinPreTriggerSamples = __library
1447 .get(b"ps6000aTriggerWithinPreTriggerSamples\0")
1448 .map(|sym| *sym);
1449 let ps6000aSetTriggerChannelProperties = __library
1450 .get(b"ps6000aSetTriggerChannelProperties\0")
1451 .map(|sym| *sym);
1452 let ps6000aSetTriggerChannelConditions = __library
1453 .get(b"ps6000aSetTriggerChannelConditions\0")
1454 .map(|sym| *sym);
1455 let ps6000aSetTriggerChannelDirections = __library
1456 .get(b"ps6000aSetTriggerChannelDirections\0")
1457 .map(|sym| *sym);
1458 let ps6000aSetTriggerDelay = __library.get(b"ps6000aSetTriggerDelay\0").map(|sym| *sym);
1459 let ps6000aSetPulseWidthQualifierProperties = __library
1460 .get(b"ps6000aSetPulseWidthQualifierProperties\0")
1461 .map(|sym| *sym);
1462 let ps6000aSetPulseWidthQualifierConditions = __library
1463 .get(b"ps6000aSetPulseWidthQualifierConditions\0")
1464 .map(|sym| *sym);
1465 let ps6000aSetPulseWidthQualifierDirections = __library
1466 .get(b"ps6000aSetPulseWidthQualifierDirections\0")
1467 .map(|sym| *sym);
1468 let ps6000aSetTriggerDigitalPortProperties = __library
1469 .get(b"ps6000aSetTriggerDigitalPortProperties\0")
1470 .map(|sym| *sym);
1471 let ps6000aSetPulseWidthDigitalPortProperties = __library
1472 .get(b"ps6000aSetPulseWidthDigitalPortProperties\0")
1473 .map(|sym| *sym);
1474 let ps6000aGetTriggerTimeOffset = __library
1475 .get(b"ps6000aGetTriggerTimeOffset\0")
1476 .map(|sym| *sym);
1477 let ps6000aGetValuesTriggerTimeOffsetBulk = __library
1478 .get(b"ps6000aGetValuesTriggerTimeOffsetBulk\0")
1479 .map(|sym| *sym);
1480 let ps6000aSetDataBuffer = __library.get(b"ps6000aSetDataBuffer\0").map(|sym| *sym);
1481 let ps6000aSetDataBuffers = __library.get(b"ps6000aSetDataBuffers\0").map(|sym| *sym);
1482 let ps6000aRunBlock = __library.get(b"ps6000aRunBlock\0").map(|sym| *sym);
1483 let ps6000aIsReady = __library.get(b"ps6000aIsReady\0").map(|sym| *sym);
1484 let ps6000aRunStreaming = __library.get(b"ps6000aRunStreaming\0").map(|sym| *sym);
1485 let ps6000aGetStreamingLatestValues = __library
1486 .get(b"ps6000aGetStreamingLatestValues\0")
1487 .map(|sym| *sym);
1488 let ps6000aNoOfStreamingValues = __library
1489 .get(b"ps6000aNoOfStreamingValues\0")
1490 .map(|sym| *sym);
1491 let ps6000aGetValues = __library.get(b"ps6000aGetValues\0").map(|sym| *sym);
1492 let ps6000aGetValuesBulk = __library.get(b"ps6000aGetValuesBulk\0").map(|sym| *sym);
1493 let ps6000aGetValuesAsync = __library.get(b"ps6000aGetValuesAsync\0").map(|sym| *sym);
1494 let ps6000aGetValuesBulkAsync = __library
1495 .get(b"ps6000aGetValuesBulkAsync\0")
1496 .map(|sym| *sym);
1497 let ps6000aGetValuesOverlapped = __library
1498 .get(b"ps6000aGetValuesOverlapped\0")
1499 .map(|sym| *sym);
1500 let ps6000aStopUsingGetValuesOverlapped = __library
1501 .get(b"ps6000aStopUsingGetValuesOverlapped\0")
1502 .map(|sym| *sym);
1503 let ps6000aGetNoOfCaptures = __library.get(b"ps6000aGetNoOfCaptures\0").map(|sym| *sym);
1504 let ps6000aGetNoOfProcessedCaptures = __library
1505 .get(b"ps6000aGetNoOfProcessedCaptures\0")
1506 .map(|sym| *sym);
1507 let ps6000aStop = __library.get(b"ps6000aStop\0").map(|sym| *sym);
1508 let ps6000aSetNoOfCaptures = __library.get(b"ps6000aSetNoOfCaptures\0").map(|sym| *sym);
1509 let ps6000aGetTriggerInfo = __library.get(b"ps6000aGetTriggerInfo\0").map(|sym| *sym);
1510 let ps6000aEnumerateUnits = __library.get(b"ps6000aEnumerateUnits\0").map(|sym| *sym);
1511 let ps6000aPingUnit = __library.get(b"ps6000aPingUnit\0").map(|sym| *sym);
1512 let ps6000aGetAnalogueOffsetLimits = __library
1513 .get(b"ps6000aGetAnalogueOffsetLimits\0")
1514 .map(|sym| *sym);
1515 let ps6000aGetMinimumTimebaseStateless = __library
1516 .get(b"ps6000aGetMinimumTimebaseStateless\0")
1517 .map(|sym| *sym);
1518 let ps6000aNearestSampleIntervalStateless = __library
1519 .get(b"ps6000aNearestSampleIntervalStateless\0")
1520 .map(|sym| *sym);
1521 let ps6000aChannelCombinationsStateless = __library
1522 .get(b"ps6000aChannelCombinationsStateless\0")
1523 .map(|sym| *sym);
1524 let ps6000aSetDeviceResolution = __library
1525 .get(b"ps6000aSetDeviceResolution\0")
1526 .map(|sym| *sym);
1527 let ps6000aGetDeviceResolution = __library
1528 .get(b"ps6000aGetDeviceResolution\0")
1529 .map(|sym| *sym);
1530 let ps6000aQueryOutputEdgeDetect = __library
1531 .get(b"ps6000aQueryOutputEdgeDetect\0")
1532 .map(|sym| *sym);
1533 let ps6000aSetOutputEdgeDetect = __library
1534 .get(b"ps6000aSetOutputEdgeDetect\0")
1535 .map(|sym| *sym);
1536 let ps6000aGetScalingValues = __library.get(b"ps6000aGetScalingValues\0").map(|sym| *sym);
1537 let ps6000aGetAdcLimits = __library.get(b"ps6000aGetAdcLimits\0").map(|sym| *sym);
1538 let ps6000aCheckForUpdate = __library.get(b"ps6000aCheckForUpdate\0").map(|sym| *sym);
1539 let ps6000aStartFirmwareUpdate = __library
1540 .get(b"ps6000aStartFirmwareUpdate\0")
1541 .map(|sym| *sym);
1542 let ps6000aResetChannelsAndReportAllChannelsOvervoltageTripStatus = __library
1543 .get(b"ps6000aResetChannelsAndReportAllChannelsOvervoltageTripStatus\0")
1544 .map(|sym| *sym);
1545 let ps6000aReportAllChannelsOvervoltageTripStatus = __library
1546 .get(b"ps6000aReportAllChannelsOvervoltageTripStatus\0")
1547 .map(|sym| *sym);
1548 Ok(PS6000ALoader {
1549 __library,
1550 ps6000aApplyFix,
1551 ps6000aOpenUnit,
1552 ps6000aOpenUnitAsync,
1553 ps6000aOpenUnitProgress,
1554 ps6000aGetUnitInfo,
1555 ps6000aCloseUnit,
1556 ps6000aFlashLed,
1557 ps6000aMemorySegments,
1558 ps6000aMemorySegmentsBySamples,
1559 ps6000aGetMaximumAvailableMemory,
1560 ps6000aQueryMaxSegmentsBySamples,
1561 ps6000aSetChannelOn,
1562 ps6000aSetChannelOff,
1563 ps6000aSetDigitalPortOn,
1564 ps6000aSetDigitalPortOff,
1565 ps6000aGetTimebase,
1566 ps6000aSigGenWaveform,
1567 ps6000aSigGenRange,
1568 ps6000aSigGenWaveformDutyCycle,
1569 ps6000aSigGenTrigger,
1570 ps6000aSigGenFilter,
1571 ps6000aSigGenFrequency,
1572 ps6000aSigGenFrequencySweep,
1573 ps6000aSigGenPhase,
1574 ps6000aSigGenPhaseSweep,
1575 ps6000aSigGenClockManual,
1576 ps6000aSigGenSoftwareTriggerControl,
1577 ps6000aSigGenApply,
1578 ps6000aSigGenLimits,
1579 ps6000aSigGenFrequencyLimits,
1580 ps6000aSigGenPause,
1581 ps6000aSigGenRestart,
1582 ps6000aSetSimpleTrigger,
1583 ps6000aTriggerWithinPreTriggerSamples,
1584 ps6000aSetTriggerChannelProperties,
1585 ps6000aSetTriggerChannelConditions,
1586 ps6000aSetTriggerChannelDirections,
1587 ps6000aSetTriggerDelay,
1588 ps6000aSetPulseWidthQualifierProperties,
1589 ps6000aSetPulseWidthQualifierConditions,
1590 ps6000aSetPulseWidthQualifierDirections,
1591 ps6000aSetTriggerDigitalPortProperties,
1592 ps6000aSetPulseWidthDigitalPortProperties,
1593 ps6000aGetTriggerTimeOffset,
1594 ps6000aGetValuesTriggerTimeOffsetBulk,
1595 ps6000aSetDataBuffer,
1596 ps6000aSetDataBuffers,
1597 ps6000aRunBlock,
1598 ps6000aIsReady,
1599 ps6000aRunStreaming,
1600 ps6000aGetStreamingLatestValues,
1601 ps6000aNoOfStreamingValues,
1602 ps6000aGetValues,
1603 ps6000aGetValuesBulk,
1604 ps6000aGetValuesAsync,
1605 ps6000aGetValuesBulkAsync,
1606 ps6000aGetValuesOverlapped,
1607 ps6000aStopUsingGetValuesOverlapped,
1608 ps6000aGetNoOfCaptures,
1609 ps6000aGetNoOfProcessedCaptures,
1610 ps6000aStop,
1611 ps6000aSetNoOfCaptures,
1612 ps6000aGetTriggerInfo,
1613 ps6000aEnumerateUnits,
1614 ps6000aPingUnit,
1615 ps6000aGetAnalogueOffsetLimits,
1616 ps6000aGetMinimumTimebaseStateless,
1617 ps6000aNearestSampleIntervalStateless,
1618 ps6000aChannelCombinationsStateless,
1619 ps6000aSetDeviceResolution,
1620 ps6000aGetDeviceResolution,
1621 ps6000aQueryOutputEdgeDetect,
1622 ps6000aSetOutputEdgeDetect,
1623 ps6000aGetScalingValues,
1624 ps6000aGetAdcLimits,
1625 ps6000aCheckForUpdate,
1626 ps6000aStartFirmwareUpdate,
1627 ps6000aResetChannelsAndReportAllChannelsOvervoltageTripStatus,
1628 ps6000aReportAllChannelsOvervoltageTripStatus,
1629 })
1630 }
1631 pub unsafe fn ps6000aApplyFix(&self, a: u32, b: u16) {
1632 let sym = self
1633 .ps6000aApplyFix
1634 .as_ref()
1635 .expect("Expected function, got error.");
1636 (sym)(a, b)
1637 }
1638 pub unsafe fn ps6000aOpenUnit(
1639 &self,
1640 handle: *mut i16,
1641 serial: *mut i8,
1642 resolution: PICO_DEVICE_RESOLUTION,
1643 ) -> PICO_STATUS {
1644 let sym = self
1645 .ps6000aOpenUnit
1646 .as_ref()
1647 .expect("Expected function, got error.");
1648 (sym)(handle, serial, resolution)
1649 }
1650 pub unsafe fn ps6000aOpenUnitAsync(
1651 &self,
1652 status: *mut i16,
1653 serial: *mut i8,
1654 resolution: PICO_DEVICE_RESOLUTION,
1655 ) -> PICO_STATUS {
1656 let sym = self
1657 .ps6000aOpenUnitAsync
1658 .as_ref()
1659 .expect("Expected function, got error.");
1660 (sym)(status, serial, resolution)
1661 }
1662 pub unsafe fn ps6000aOpenUnitProgress(
1663 &self,
1664 handle: *mut i16,
1665 progressPercent: *mut i16,
1666 complete: *mut i16,
1667 ) -> PICO_STATUS {
1668 let sym = self
1669 .ps6000aOpenUnitProgress
1670 .as_ref()
1671 .expect("Expected function, got error.");
1672 (sym)(handle, progressPercent, complete)
1673 }
1674 pub unsafe fn ps6000aGetUnitInfo(
1675 &self,
1676 handle: i16,
1677 string: *mut i8,
1678 stringLength: i16,
1679 requiredSize: *mut i16,
1680 info: PICO_INFO,
1681 ) -> PICO_STATUS {
1682 let sym = self
1683 .ps6000aGetUnitInfo
1684 .as_ref()
1685 .expect("Expected function, got error.");
1686 (sym)(handle, string, stringLength, requiredSize, info)
1687 }
1688 pub unsafe fn ps6000aCloseUnit(&self, handle: i16) -> PICO_STATUS {
1689 let sym = self
1690 .ps6000aCloseUnit
1691 .as_ref()
1692 .expect("Expected function, got error.");
1693 (sym)(handle)
1694 }
1695 pub unsafe fn ps6000aFlashLed(&self, handle: i16, start: i16) -> PICO_STATUS {
1696 let sym = self
1697 .ps6000aFlashLed
1698 .as_ref()
1699 .expect("Expected function, got error.");
1700 (sym)(handle, start)
1701 }
1702 pub unsafe fn ps6000aMemorySegments(
1703 &self,
1704 handle: i16,
1705 nSegments: u64,
1706 nMaxSamples: *mut u64,
1707 ) -> PICO_STATUS {
1708 let sym = self
1709 .ps6000aMemorySegments
1710 .as_ref()
1711 .expect("Expected function, got error.");
1712 (sym)(handle, nSegments, nMaxSamples)
1713 }
1714 pub unsafe fn ps6000aMemorySegmentsBySamples(
1715 &self,
1716 handle: i16,
1717 nSamples: u64,
1718 nMaxSegments: *mut u64,
1719 ) -> PICO_STATUS {
1720 let sym = self
1721 .ps6000aMemorySegmentsBySamples
1722 .as_ref()
1723 .expect("Expected function, got error.");
1724 (sym)(handle, nSamples, nMaxSegments)
1725 }
1726 pub unsafe fn ps6000aGetMaximumAvailableMemory(
1727 &self,
1728 handle: i16,
1729 nMaxSamples: *mut u64,
1730 resolution: PICO_DEVICE_RESOLUTION,
1731 ) -> PICO_STATUS {
1732 let sym = self
1733 .ps6000aGetMaximumAvailableMemory
1734 .as_ref()
1735 .expect("Expected function, got error.");
1736 (sym)(handle, nMaxSamples, resolution)
1737 }
1738 pub unsafe fn ps6000aQueryMaxSegmentsBySamples(
1739 &self,
1740 handle: i16,
1741 nSamples: u64,
1742 nChannelEnabled: u32,
1743 nMaxSegments: *mut u64,
1744 resolution: PICO_DEVICE_RESOLUTION,
1745 ) -> PICO_STATUS {
1746 let sym = self
1747 .ps6000aQueryMaxSegmentsBySamples
1748 .as_ref()
1749 .expect("Expected function, got error.");
1750 (sym)(handle, nSamples, nChannelEnabled, nMaxSegments, resolution)
1751 }
1752 pub unsafe fn ps6000aSetChannelOn(
1753 &self,
1754 handle: i16,
1755 channel: PICO_CHANNEL,
1756 coupling: PICO_COUPLING,
1757 range: PICO_CONNECT_PROBE_RANGE,
1758 analogueOffset: f64,
1759 bandwidth: PICO_BANDWIDTH_LIMITER,
1760 ) -> PICO_STATUS {
1761 let sym = self
1762 .ps6000aSetChannelOn
1763 .as_ref()
1764 .expect("Expected function, got error.");
1765 (sym)(handle, channel, coupling, range, analogueOffset, bandwidth)
1766 }
1767 pub unsafe fn ps6000aSetChannelOff(&self, handle: i16, channel: PICO_CHANNEL) -> PICO_STATUS {
1768 let sym = self
1769 .ps6000aSetChannelOff
1770 .as_ref()
1771 .expect("Expected function, got error.");
1772 (sym)(handle, channel)
1773 }
1774 pub unsafe fn ps6000aSetDigitalPortOn(
1775 &self,
1776 handle: i16,
1777 port: PICO_CHANNEL,
1778 logicThresholdLevel: *mut i16,
1779 logicThresholdLevelLength: i16,
1780 hysteresis: PICO_DIGITAL_PORT_HYSTERESIS,
1781 ) -> PICO_STATUS {
1782 let sym = self
1783 .ps6000aSetDigitalPortOn
1784 .as_ref()
1785 .expect("Expected function, got error.");
1786 (sym)(
1787 handle,
1788 port,
1789 logicThresholdLevel,
1790 logicThresholdLevelLength,
1791 hysteresis,
1792 )
1793 }
1794 pub unsafe fn ps6000aSetDigitalPortOff(&self, handle: i16, port: PICO_CHANNEL) -> PICO_STATUS {
1795 let sym = self
1796 .ps6000aSetDigitalPortOff
1797 .as_ref()
1798 .expect("Expected function, got error.");
1799 (sym)(handle, port)
1800 }
1801 pub unsafe fn ps6000aGetTimebase(
1802 &self,
1803 handle: i16,
1804 timebase: u32,
1805 noSamples: u64,
1806 timeIntervalNanoseconds: *mut f64,
1807 maxSamples: *mut u64,
1808 segmentIndex: u64,
1809 ) -> PICO_STATUS {
1810 let sym = self
1811 .ps6000aGetTimebase
1812 .as_ref()
1813 .expect("Expected function, got error.");
1814 (sym)(
1815 handle,
1816 timebase,
1817 noSamples,
1818 timeIntervalNanoseconds,
1819 maxSamples,
1820 segmentIndex,
1821 )
1822 }
1823 pub unsafe fn ps6000aSigGenWaveform(
1824 &self,
1825 handle: i16,
1826 waveType: PICO_WAVE_TYPE,
1827 buffer: *mut i16,
1828 bufferLength: u64,
1829 ) -> PICO_STATUS {
1830 let sym = self
1831 .ps6000aSigGenWaveform
1832 .as_ref()
1833 .expect("Expected function, got error.");
1834 (sym)(handle, waveType, buffer, bufferLength)
1835 }
1836 pub unsafe fn ps6000aSigGenRange(
1837 &self,
1838 handle: i16,
1839 peakToPeakVolts: f64,
1840 offsetVolts: f64,
1841 ) -> PICO_STATUS {
1842 let sym = self
1843 .ps6000aSigGenRange
1844 .as_ref()
1845 .expect("Expected function, got error.");
1846 (sym)(handle, peakToPeakVolts, offsetVolts)
1847 }
1848 pub unsafe fn ps6000aSigGenWaveformDutyCycle(
1849 &self,
1850 handle: i16,
1851 dutyCyclePercent: f64,
1852 ) -> PICO_STATUS {
1853 let sym = self
1854 .ps6000aSigGenWaveformDutyCycle
1855 .as_ref()
1856 .expect("Expected function, got error.");
1857 (sym)(handle, dutyCyclePercent)
1858 }
1859 pub unsafe fn ps6000aSigGenTrigger(
1860 &self,
1861 handle: i16,
1862 triggerType: PICO_SIGGEN_TRIG_TYPE,
1863 triggerSource: PICO_SIGGEN_TRIG_SOURCE,
1864 cycles: u64,
1865 autoTriggerPicoSeconds: u64,
1866 ) -> PICO_STATUS {
1867 let sym = self
1868 .ps6000aSigGenTrigger
1869 .as_ref()
1870 .expect("Expected function, got error.");
1871 (sym)(
1872 handle,
1873 triggerType,
1874 triggerSource,
1875 cycles,
1876 autoTriggerPicoSeconds,
1877 )
1878 }
1879 pub unsafe fn ps6000aSigGenFilter(
1880 &self,
1881 handle: i16,
1882 filterState: PICO_SIGGEN_FILTER_STATE,
1883 ) -> PICO_STATUS {
1884 let sym = self
1885 .ps6000aSigGenFilter
1886 .as_ref()
1887 .expect("Expected function, got error.");
1888 (sym)(handle, filterState)
1889 }
1890 pub unsafe fn ps6000aSigGenFrequency(&self, handle: i16, frequencyHz: f64) -> PICO_STATUS {
1891 let sym = self
1892 .ps6000aSigGenFrequency
1893 .as_ref()
1894 .expect("Expected function, got error.");
1895 (sym)(handle, frequencyHz)
1896 }
1897 pub unsafe fn ps6000aSigGenFrequencySweep(
1898 &self,
1899 handle: i16,
1900 stopFrequencyHz: f64,
1901 frequencyIncrement: f64,
1902 dwellTimeSeconds: f64,
1903 sweepType: PICO_SWEEP_TYPE,
1904 ) -> PICO_STATUS {
1905 let sym = self
1906 .ps6000aSigGenFrequencySweep
1907 .as_ref()
1908 .expect("Expected function, got error.");
1909 (sym)(
1910 handle,
1911 stopFrequencyHz,
1912 frequencyIncrement,
1913 dwellTimeSeconds,
1914 sweepType,
1915 )
1916 }
1917 pub unsafe fn ps6000aSigGenPhase(&self, handle: i16, deltaPhase: u64) -> PICO_STATUS {
1918 let sym = self
1919 .ps6000aSigGenPhase
1920 .as_ref()
1921 .expect("Expected function, got error.");
1922 (sym)(handle, deltaPhase)
1923 }
1924 pub unsafe fn ps6000aSigGenPhaseSweep(
1925 &self,
1926 handle: i16,
1927 stopDeltaPhase: u64,
1928 deltaPhaseIncrement: u64,
1929 dwellCount: u64,
1930 sweepType: PICO_SWEEP_TYPE,
1931 ) -> PICO_STATUS {
1932 let sym = self
1933 .ps6000aSigGenPhaseSweep
1934 .as_ref()
1935 .expect("Expected function, got error.");
1936 (sym)(
1937 handle,
1938 stopDeltaPhase,
1939 deltaPhaseIncrement,
1940 dwellCount,
1941 sweepType,
1942 )
1943 }
1944 pub unsafe fn ps6000aSigGenClockManual(
1945 &self,
1946 handle: i16,
1947 dacClockFrequency: f64,
1948 prescaleRatio: u64,
1949 ) -> PICO_STATUS {
1950 let sym = self
1951 .ps6000aSigGenClockManual
1952 .as_ref()
1953 .expect("Expected function, got error.");
1954 (sym)(handle, dacClockFrequency, prescaleRatio)
1955 }
1956 pub unsafe fn ps6000aSigGenSoftwareTriggerControl(
1957 &self,
1958 handle: i16,
1959 triggerState: PICO_SIGGEN_TRIG_TYPE,
1960 ) -> PICO_STATUS {
1961 let sym = self
1962 .ps6000aSigGenSoftwareTriggerControl
1963 .as_ref()
1964 .expect("Expected function, got error.");
1965 (sym)(handle, triggerState)
1966 }
1967 pub unsafe fn ps6000aSigGenApply(
1968 &self,
1969 handle: i16,
1970 sigGenEnabled: i16,
1971 sweepEnabled: i16,
1972 triggerEnabled: i16,
1973 automaticClockOptimisationEnabled: i16,
1974 overrideAutomaticClockAndPrescale: i16,
1975 frequency: *mut f64,
1976 stopFrequency: *mut f64,
1977 frequencyIncrement: *mut f64,
1978 dwellTime: *mut f64,
1979 ) -> PICO_STATUS {
1980 let sym = self
1981 .ps6000aSigGenApply
1982 .as_ref()
1983 .expect("Expected function, got error.");
1984 (sym)(
1985 handle,
1986 sigGenEnabled,
1987 sweepEnabled,
1988 triggerEnabled,
1989 automaticClockOptimisationEnabled,
1990 overrideAutomaticClockAndPrescale,
1991 frequency,
1992 stopFrequency,
1993 frequencyIncrement,
1994 dwellTime,
1995 )
1996 }
1997 pub unsafe fn ps6000aSigGenLimits(
1998 &self,
1999 handle: i16,
2000 parameter: PICO_SIGGEN_PARAMETER,
2001 minimumPermissibleValue: *mut f64,
2002 maximumPermissibleValue: *mut f64,
2003 step: *mut f64,
2004 ) -> PICO_STATUS {
2005 let sym = self
2006 .ps6000aSigGenLimits
2007 .as_ref()
2008 .expect("Expected function, got error.");
2009 (sym)(
2010 handle,
2011 parameter,
2012 minimumPermissibleValue,
2013 maximumPermissibleValue,
2014 step,
2015 )
2016 }
2017 pub unsafe fn ps6000aSigGenFrequencyLimits(
2018 &self,
2019 handle: i16,
2020 waveType: PICO_WAVE_TYPE,
2021 numSamples: *mut u64,
2022 startFrequency: *mut f64,
2023 sweepEnabled: i16,
2024 manualDacClockFrequency: *mut f64,
2025 manualPrescaleRatio: *mut u64,
2026 maxStopFrequencyOut: *mut f64,
2027 minFrequencyStepOut: *mut f64,
2028 maxFrequencyStepOut: *mut f64,
2029 minDwellTimeOut: *mut f64,
2030 maxDwellTimeOut: *mut f64,
2031 ) -> PICO_STATUS {
2032 let sym = self
2033 .ps6000aSigGenFrequencyLimits
2034 .as_ref()
2035 .expect("Expected function, got error.");
2036 (sym)(
2037 handle,
2038 waveType,
2039 numSamples,
2040 startFrequency,
2041 sweepEnabled,
2042 manualDacClockFrequency,
2043 manualPrescaleRatio,
2044 maxStopFrequencyOut,
2045 minFrequencyStepOut,
2046 maxFrequencyStepOut,
2047 minDwellTimeOut,
2048 maxDwellTimeOut,
2049 )
2050 }
2051 pub unsafe fn ps6000aSigGenPause(&self, handle: i16) -> PICO_STATUS {
2052 let sym = self
2053 .ps6000aSigGenPause
2054 .as_ref()
2055 .expect("Expected function, got error.");
2056 (sym)(handle)
2057 }
2058 pub unsafe fn ps6000aSigGenRestart(&self, handle: i16) -> PICO_STATUS {
2059 let sym = self
2060 .ps6000aSigGenRestart
2061 .as_ref()
2062 .expect("Expected function, got error.");
2063 (sym)(handle)
2064 }
2065 pub unsafe fn ps6000aSetSimpleTrigger(
2066 &self,
2067 handle: i16,
2068 enable: i16,
2069 source: PICO_CHANNEL,
2070 threshold: i16,
2071 direction: PICO_THRESHOLD_DIRECTION,
2072 delay: u64,
2073 autoTriggerMicroSeconds: u32,
2074 ) -> PICO_STATUS {
2075 let sym = self
2076 .ps6000aSetSimpleTrigger
2077 .as_ref()
2078 .expect("Expected function, got error.");
2079 (sym)(
2080 handle,
2081 enable,
2082 source,
2083 threshold,
2084 direction,
2085 delay,
2086 autoTriggerMicroSeconds,
2087 )
2088 }
2089 pub unsafe fn ps6000aTriggerWithinPreTriggerSamples(
2090 &self,
2091 handle: i16,
2092 state: PICO_TRIGGER_WITHIN_PRE_TRIGGER,
2093 ) -> PICO_STATUS {
2094 let sym = self
2095 .ps6000aTriggerWithinPreTriggerSamples
2096 .as_ref()
2097 .expect("Expected function, got error.");
2098 (sym)(handle, state)
2099 }
2100 pub unsafe fn ps6000aSetTriggerChannelProperties(
2101 &self,
2102 handle: i16,
2103 channelProperties: *mut PICO_TRIGGER_CHANNEL_PROPERTIES,
2104 nChannelProperties: i16,
2105 auxOutputEnable: i16,
2106 autoTriggerMicroSeconds: u32,
2107 ) -> PICO_STATUS {
2108 let sym = self
2109 .ps6000aSetTriggerChannelProperties
2110 .as_ref()
2111 .expect("Expected function, got error.");
2112 (sym)(
2113 handle,
2114 channelProperties,
2115 nChannelProperties,
2116 auxOutputEnable,
2117 autoTriggerMicroSeconds,
2118 )
2119 }
2120 pub unsafe fn ps6000aSetTriggerChannelConditions(
2121 &self,
2122 handle: i16,
2123 conditions: *mut PICO_CONDITION,
2124 nConditions: i16,
2125 action: PICO_ACTION,
2126 ) -> PICO_STATUS {
2127 let sym = self
2128 .ps6000aSetTriggerChannelConditions
2129 .as_ref()
2130 .expect("Expected function, got error.");
2131 (sym)(handle, conditions, nConditions, action)
2132 }
2133 pub unsafe fn ps6000aSetTriggerChannelDirections(
2134 &self,
2135 handle: i16,
2136 directions: *mut PICO_DIRECTION,
2137 nDirections: i16,
2138 ) -> PICO_STATUS {
2139 let sym = self
2140 .ps6000aSetTriggerChannelDirections
2141 .as_ref()
2142 .expect("Expected function, got error.");
2143 (sym)(handle, directions, nDirections)
2144 }
2145 pub unsafe fn ps6000aSetTriggerDelay(&self, handle: i16, delay: u64) -> PICO_STATUS {
2146 let sym = self
2147 .ps6000aSetTriggerDelay
2148 .as_ref()
2149 .expect("Expected function, got error.");
2150 (sym)(handle, delay)
2151 }
2152 pub unsafe fn ps6000aSetPulseWidthQualifierProperties(
2153 &self,
2154 handle: i16,
2155 lower: u32,
2156 upper: u32,
2157 type_: PICO_PULSE_WIDTH_TYPE,
2158 ) -> PICO_STATUS {
2159 let sym = self
2160 .ps6000aSetPulseWidthQualifierProperties
2161 .as_ref()
2162 .expect("Expected function, got error.");
2163 (sym)(handle, lower, upper, type_)
2164 }
2165 pub unsafe fn ps6000aSetPulseWidthQualifierConditions(
2166 &self,
2167 handle: i16,
2168 conditions: *mut PICO_CONDITION,
2169 nConditions: i16,
2170 action: PICO_ACTION,
2171 ) -> PICO_STATUS {
2172 let sym = self
2173 .ps6000aSetPulseWidthQualifierConditions
2174 .as_ref()
2175 .expect("Expected function, got error.");
2176 (sym)(handle, conditions, nConditions, action)
2177 }
2178 pub unsafe fn ps6000aSetPulseWidthQualifierDirections(
2179 &self,
2180 handle: i16,
2181 directions: *mut PICO_DIRECTION,
2182 nDirections: i16,
2183 ) -> PICO_STATUS {
2184 let sym = self
2185 .ps6000aSetPulseWidthQualifierDirections
2186 .as_ref()
2187 .expect("Expected function, got error.");
2188 (sym)(handle, directions, nDirections)
2189 }
2190 pub unsafe fn ps6000aSetTriggerDigitalPortProperties(
2191 &self,
2192 handle: i16,
2193 port: PICO_CHANNEL,
2194 directions: *mut PICO_DIGITAL_CHANNEL_DIRECTIONS,
2195 nDirections: i16,
2196 ) -> PICO_STATUS {
2197 let sym = self
2198 .ps6000aSetTriggerDigitalPortProperties
2199 .as_ref()
2200 .expect("Expected function, got error.");
2201 (sym)(handle, port, directions, nDirections)
2202 }
2203 pub unsafe fn ps6000aSetPulseWidthDigitalPortProperties(
2204 &self,
2205 handle: i16,
2206 port: PICO_CHANNEL,
2207 directions: *mut PICO_DIGITAL_CHANNEL_DIRECTIONS,
2208 nDirections: i16,
2209 ) -> PICO_STATUS {
2210 let sym = self
2211 .ps6000aSetPulseWidthDigitalPortProperties
2212 .as_ref()
2213 .expect("Expected function, got error.");
2214 (sym)(handle, port, directions, nDirections)
2215 }
2216 pub unsafe fn ps6000aGetTriggerTimeOffset(
2217 &self,
2218 handle: i16,
2219 time: *mut i64,
2220 timeUnits: *mut PICO_TIME_UNITS,
2221 segmentIndex: u64,
2222 ) -> PICO_STATUS {
2223 let sym = self
2224 .ps6000aGetTriggerTimeOffset
2225 .as_ref()
2226 .expect("Expected function, got error.");
2227 (sym)(handle, time, timeUnits, segmentIndex)
2228 }
2229 pub unsafe fn ps6000aGetValuesTriggerTimeOffsetBulk(
2230 &self,
2231 handle: i16,
2232 times: *mut i64,
2233 timeUnits: *mut PICO_TIME_UNITS,
2234 fromSegmentIndex: u64,
2235 toSegmentIndex: u64,
2236 ) -> PICO_STATUS {
2237 let sym = self
2238 .ps6000aGetValuesTriggerTimeOffsetBulk
2239 .as_ref()
2240 .expect("Expected function, got error.");
2241 (sym)(handle, times, timeUnits, fromSegmentIndex, toSegmentIndex)
2242 }
2243 pub unsafe fn ps6000aSetDataBuffer(
2244 &self,
2245 handle: i16,
2246 channel: PICO_CHANNEL,
2247 buffer: PICO_POINTER,
2248 nSamples: i32,
2249 dataType: PICO_DATA_TYPE,
2250 waveform: u64,
2251 downSampleRatioMode: PICO_RATIO_MODE,
2252 action: PICO_ACTION,
2253 ) -> PICO_STATUS {
2254 let sym = self
2255 .ps6000aSetDataBuffer
2256 .as_ref()
2257 .expect("Expected function, got error.");
2258 (sym)(
2259 handle,
2260 channel,
2261 buffer,
2262 nSamples,
2263 dataType,
2264 waveform,
2265 downSampleRatioMode,
2266 action,
2267 )
2268 }
2269 pub unsafe fn ps6000aSetDataBuffers(
2270 &self,
2271 handle: i16,
2272 channel: PICO_CHANNEL,
2273 bufferMax: PICO_POINTER,
2274 bufferMin: PICO_POINTER,
2275 nSamples: i32,
2276 dataType: PICO_DATA_TYPE,
2277 waveform: u64,
2278 downSampleRatioMode: PICO_RATIO_MODE,
2279 action: PICO_ACTION,
2280 ) -> PICO_STATUS {
2281 let sym = self
2282 .ps6000aSetDataBuffers
2283 .as_ref()
2284 .expect("Expected function, got error.");
2285 (sym)(
2286 handle,
2287 channel,
2288 bufferMax,
2289 bufferMin,
2290 nSamples,
2291 dataType,
2292 waveform,
2293 downSampleRatioMode,
2294 action,
2295 )
2296 }
2297 pub unsafe fn ps6000aRunBlock(
2298 &self,
2299 handle: i16,
2300 noOfPreTriggerSamples: u64,
2301 noOfPostTriggerSamples: u64,
2302 timebase: u32,
2303 timeIndisposedMs: *mut f64,
2304 segmentIndex: u64,
2305 lpReady: ps6000aBlockReady,
2306 pParameter: PICO_POINTER,
2307 ) -> PICO_STATUS {
2308 let sym = self
2309 .ps6000aRunBlock
2310 .as_ref()
2311 .expect("Expected function, got error.");
2312 (sym)(
2313 handle,
2314 noOfPreTriggerSamples,
2315 noOfPostTriggerSamples,
2316 timebase,
2317 timeIndisposedMs,
2318 segmentIndex,
2319 lpReady,
2320 pParameter,
2321 )
2322 }
2323 pub unsafe fn ps6000aIsReady(&self, handle: i16, ready: *mut i16) -> PICO_STATUS {
2324 let sym = self
2325 .ps6000aIsReady
2326 .as_ref()
2327 .expect("Expected function, got error.");
2328 (sym)(handle, ready)
2329 }
2330 pub unsafe fn ps6000aRunStreaming(
2331 &self,
2332 handle: i16,
2333 sampleInterval: *mut f64,
2334 sampleIntervalTimeUnits: PICO_TIME_UNITS,
2335 maxPreTriggerSamples: u64,
2336 maxPostPreTriggerSamples: u64,
2337 autoStop: i16,
2338 downSampleRatio: u64,
2339 downSampleRatioMode: PICO_RATIO_MODE,
2340 ) -> PICO_STATUS {
2341 let sym = self
2342 .ps6000aRunStreaming
2343 .as_ref()
2344 .expect("Expected function, got error.");
2345 (sym)(
2346 handle,
2347 sampleInterval,
2348 sampleIntervalTimeUnits,
2349 maxPreTriggerSamples,
2350 maxPostPreTriggerSamples,
2351 autoStop,
2352 downSampleRatio,
2353 downSampleRatioMode,
2354 )
2355 }
2356 pub unsafe fn ps6000aGetStreamingLatestValues(
2357 &self,
2358 handle: i16,
2359 streamingDataInfo: *mut PICO_STREAMING_DATA_INFO,
2360 nStreamingDataInfos: u64,
2361 triggerInfo: *mut PICO_STREAMING_DATA_TRIGGER_INFO,
2362 ) -> PICO_STATUS {
2363 let sym = self
2364 .ps6000aGetStreamingLatestValues
2365 .as_ref()
2366 .expect("Expected function, got error.");
2367 (sym)(handle, streamingDataInfo, nStreamingDataInfos, triggerInfo)
2368 }
2369 pub unsafe fn ps6000aNoOfStreamingValues(
2370 &self,
2371 handle: i16,
2372 noOfValues: *mut u64,
2373 ) -> PICO_STATUS {
2374 let sym = self
2375 .ps6000aNoOfStreamingValues
2376 .as_ref()
2377 .expect("Expected function, got error.");
2378 (sym)(handle, noOfValues)
2379 }
2380 pub unsafe fn ps6000aGetValues(
2381 &self,
2382 handle: i16,
2383 startIndex: u64,
2384 noOfSamples: *mut u64,
2385 downSampleRatio: u64,
2386 downSampleRatioMode: PICO_RATIO_MODE,
2387 segmentIndex: u64,
2388 overflow: *mut i16,
2389 ) -> PICO_STATUS {
2390 let sym = self
2391 .ps6000aGetValues
2392 .as_ref()
2393 .expect("Expected function, got error.");
2394 (sym)(
2395 handle,
2396 startIndex,
2397 noOfSamples,
2398 downSampleRatio,
2399 downSampleRatioMode,
2400 segmentIndex,
2401 overflow,
2402 )
2403 }
2404 pub unsafe fn ps6000aGetValuesBulk(
2405 &self,
2406 handle: i16,
2407 startIndex: u64,
2408 noOfSamples: *mut u64,
2409 fromSegmentIndex: u64,
2410 toSegmentIndex: u64,
2411 downSampleRatio: u64,
2412 downSampleRatioMode: PICO_RATIO_MODE,
2413 overflow: *mut i16,
2414 ) -> PICO_STATUS {
2415 let sym = self
2416 .ps6000aGetValuesBulk
2417 .as_ref()
2418 .expect("Expected function, got error.");
2419 (sym)(
2420 handle,
2421 startIndex,
2422 noOfSamples,
2423 fromSegmentIndex,
2424 toSegmentIndex,
2425 downSampleRatio,
2426 downSampleRatioMode,
2427 overflow,
2428 )
2429 }
2430 pub unsafe fn ps6000aGetValuesAsync(
2431 &self,
2432 handle: i16,
2433 startIndex: u64,
2434 noOfSamples: u64,
2435 downSampleRatio: u64,
2436 downSampleRatioMode: PICO_RATIO_MODE,
2437 segmentIndex: u64,
2438 lpDataReady: PICO_POINTER,
2439 pParameter: PICO_POINTER,
2440 ) -> PICO_STATUS {
2441 let sym = self
2442 .ps6000aGetValuesAsync
2443 .as_ref()
2444 .expect("Expected function, got error.");
2445 (sym)(
2446 handle,
2447 startIndex,
2448 noOfSamples,
2449 downSampleRatio,
2450 downSampleRatioMode,
2451 segmentIndex,
2452 lpDataReady,
2453 pParameter,
2454 )
2455 }
2456 pub unsafe fn ps6000aGetValuesBulkAsync(
2457 &self,
2458 handle: i16,
2459 startIndex: u64,
2460 noOfSamples: u64,
2461 fromSegmentIndex: u64,
2462 toSegmentIndex: u64,
2463 downSampleRatio: u64,
2464 downSampleRatioMode: PICO_RATIO_MODE,
2465 lpDataReady: PICO_POINTER,
2466 pParameter: PICO_POINTER,
2467 ) -> PICO_STATUS {
2468 let sym = self
2469 .ps6000aGetValuesBulkAsync
2470 .as_ref()
2471 .expect("Expected function, got error.");
2472 (sym)(
2473 handle,
2474 startIndex,
2475 noOfSamples,
2476 fromSegmentIndex,
2477 toSegmentIndex,
2478 downSampleRatio,
2479 downSampleRatioMode,
2480 lpDataReady,
2481 pParameter,
2482 )
2483 }
2484 pub unsafe fn ps6000aGetValuesOverlapped(
2485 &self,
2486 handle: i16,
2487 startIndex: u64,
2488 noOfSamples: *mut u64,
2489 downSampleRatio: u64,
2490 downSampleRatioMode: PICO_RATIO_MODE,
2491 fromSegmentIndex: u64,
2492 toSegmentIndex: u64,
2493 overflow: *mut i16,
2494 ) -> PICO_STATUS {
2495 let sym = self
2496 .ps6000aGetValuesOverlapped
2497 .as_ref()
2498 .expect("Expected function, got error.");
2499 (sym)(
2500 handle,
2501 startIndex,
2502 noOfSamples,
2503 downSampleRatio,
2504 downSampleRatioMode,
2505 fromSegmentIndex,
2506 toSegmentIndex,
2507 overflow,
2508 )
2509 }
2510 pub unsafe fn ps6000aStopUsingGetValuesOverlapped(&self, handle: i16) -> PICO_STATUS {
2511 let sym = self
2512 .ps6000aStopUsingGetValuesOverlapped
2513 .as_ref()
2514 .expect("Expected function, got error.");
2515 (sym)(handle)
2516 }
2517 pub unsafe fn ps6000aGetNoOfCaptures(&self, handle: i16, nCaptures: *mut u64) -> PICO_STATUS {
2518 let sym = self
2519 .ps6000aGetNoOfCaptures
2520 .as_ref()
2521 .expect("Expected function, got error.");
2522 (sym)(handle, nCaptures)
2523 }
2524 pub unsafe fn ps6000aGetNoOfProcessedCaptures(
2525 &self,
2526 handle: i16,
2527 nProcessedCaptures: *mut u64,
2528 ) -> PICO_STATUS {
2529 let sym = self
2530 .ps6000aGetNoOfProcessedCaptures
2531 .as_ref()
2532 .expect("Expected function, got error.");
2533 (sym)(handle, nProcessedCaptures)
2534 }
2535 pub unsafe fn ps6000aStop(&self, handle: i16) -> PICO_STATUS {
2536 let sym = self
2537 .ps6000aStop
2538 .as_ref()
2539 .expect("Expected function, got error.");
2540 (sym)(handle)
2541 }
2542 pub unsafe fn ps6000aSetNoOfCaptures(&self, handle: i16, nCaptures: u64) -> PICO_STATUS {
2543 let sym = self
2544 .ps6000aSetNoOfCaptures
2545 .as_ref()
2546 .expect("Expected function, got error.");
2547 (sym)(handle, nCaptures)
2548 }
2549 pub unsafe fn ps6000aGetTriggerInfo(
2550 &self,
2551 handle: i16,
2552 triggerInfo: *mut PICO_TRIGGER_INFO,
2553 firstSegmentIndex: u64,
2554 segmentCount: u64,
2555 ) -> PICO_STATUS {
2556 let sym = self
2557 .ps6000aGetTriggerInfo
2558 .as_ref()
2559 .expect("Expected function, got error.");
2560 (sym)(handle, triggerInfo, firstSegmentIndex, segmentCount)
2561 }
2562 pub unsafe fn ps6000aEnumerateUnits(
2563 &self,
2564 count: *mut i16,
2565 serials: *mut i8,
2566 serialLth: *mut i16,
2567 ) -> PICO_STATUS {
2568 let sym = self
2569 .ps6000aEnumerateUnits
2570 .as_ref()
2571 .expect("Expected function, got error.");
2572 (sym)(count, serials, serialLth)
2573 }
2574 pub unsafe fn ps6000aPingUnit(&self, handle: i16) -> PICO_STATUS {
2575 let sym = self
2576 .ps6000aPingUnit
2577 .as_ref()
2578 .expect("Expected function, got error.");
2579 (sym)(handle)
2580 }
2581 pub unsafe fn ps6000aGetAnalogueOffsetLimits(
2582 &self,
2583 handle: i16,
2584 range: PICO_CONNECT_PROBE_RANGE,
2585 coupling: PICO_COUPLING,
2586 maximumVoltage: *mut f64,
2587 minimumVoltage: *mut f64,
2588 ) -> PICO_STATUS {
2589 let sym = self
2590 .ps6000aGetAnalogueOffsetLimits
2591 .as_ref()
2592 .expect("Expected function, got error.");
2593 (sym)(handle, range, coupling, maximumVoltage, minimumVoltage)
2594 }
2595 pub unsafe fn ps6000aGetMinimumTimebaseStateless(
2596 &self,
2597 handle: i16,
2598 enabledChannelFlags: PICO_CHANNEL_FLAGS,
2599 timebase: *mut u32,
2600 timeInterval: *mut f64,
2601 resolution: PICO_DEVICE_RESOLUTION,
2602 ) -> PICO_STATUS {
2603 let sym = self
2604 .ps6000aGetMinimumTimebaseStateless
2605 .as_ref()
2606 .expect("Expected function, got error.");
2607 (sym)(
2608 handle,
2609 enabledChannelFlags,
2610 timebase,
2611 timeInterval,
2612 resolution,
2613 )
2614 }
2615 pub unsafe fn ps6000aNearestSampleIntervalStateless(
2616 &self,
2617 handle: i16,
2618 enabledChannelFlags: PICO_CHANNEL_FLAGS,
2619 timeIntervalRequested: f64,
2620 resolution: PICO_DEVICE_RESOLUTION,
2621 timebase: *mut u32,
2622 timeIntervalAvailable: *mut f64,
2623 ) -> PICO_STATUS {
2624 let sym = self
2625 .ps6000aNearestSampleIntervalStateless
2626 .as_ref()
2627 .expect("Expected function, got error.");
2628 (sym)(
2629 handle,
2630 enabledChannelFlags,
2631 timeIntervalRequested,
2632 resolution,
2633 timebase,
2634 timeIntervalAvailable,
2635 )
2636 }
2637 pub unsafe fn ps6000aChannelCombinationsStateless(
2638 &self,
2639 handle: i16,
2640 channelFlagsCombinations: *mut PICO_CHANNEL_FLAGS,
2641 nChannelCombinations: *mut u32,
2642 resolution: PICO_DEVICE_RESOLUTION,
2643 timebase: u32,
2644 ) -> PICO_STATUS {
2645 let sym = self
2646 .ps6000aChannelCombinationsStateless
2647 .as_ref()
2648 .expect("Expected function, got error.");
2649 (sym)(
2650 handle,
2651 channelFlagsCombinations,
2652 nChannelCombinations,
2653 resolution,
2654 timebase,
2655 )
2656 }
2657 pub unsafe fn ps6000aSetDeviceResolution(
2658 &self,
2659 handle: i16,
2660 resolution: PICO_DEVICE_RESOLUTION,
2661 ) -> PICO_STATUS {
2662 let sym = self
2663 .ps6000aSetDeviceResolution
2664 .as_ref()
2665 .expect("Expected function, got error.");
2666 (sym)(handle, resolution)
2667 }
2668 pub unsafe fn ps6000aGetDeviceResolution(
2669 &self,
2670 handle: i16,
2671 resolution: *mut PICO_DEVICE_RESOLUTION,
2672 ) -> PICO_STATUS {
2673 let sym = self
2674 .ps6000aGetDeviceResolution
2675 .as_ref()
2676 .expect("Expected function, got error.");
2677 (sym)(handle, resolution)
2678 }
2679 pub unsafe fn ps6000aQueryOutputEdgeDetect(&self, handle: i16, state: *mut i16) -> PICO_STATUS {
2680 let sym = self
2681 .ps6000aQueryOutputEdgeDetect
2682 .as_ref()
2683 .expect("Expected function, got error.");
2684 (sym)(handle, state)
2685 }
2686 pub unsafe fn ps6000aSetOutputEdgeDetect(&self, handle: i16, state: i16) -> PICO_STATUS {
2687 let sym = self
2688 .ps6000aSetOutputEdgeDetect
2689 .as_ref()
2690 .expect("Expected function, got error.");
2691 (sym)(handle, state)
2692 }
2693 pub unsafe fn ps6000aGetScalingValues(
2694 &self,
2695 handle: i16,
2696 scalingValues: *mut PICO_SCALING_FACTORS_VALUES,
2697 nChannels: i16,
2698 ) -> PICO_STATUS {
2699 let sym = self
2700 .ps6000aGetScalingValues
2701 .as_ref()
2702 .expect("Expected function, got error.");
2703 (sym)(handle, scalingValues, nChannels)
2704 }
2705 pub unsafe fn ps6000aGetAdcLimits(
2706 &self,
2707 handle: i16,
2708 resolution: PICO_DEVICE_RESOLUTION,
2709 minValue: *mut i16,
2710 maxValue: *mut i16,
2711 ) -> PICO_STATUS {
2712 let sym = self
2713 .ps6000aGetAdcLimits
2714 .as_ref()
2715 .expect("Expected function, got error.");
2716 (sym)(handle, resolution, minValue, maxValue)
2717 }
2718 pub unsafe fn ps6000aCheckForUpdate(
2719 &self,
2720 handle: i16,
2721 current: *mut PICO_VERSION,
2722 update: *mut PICO_VERSION,
2723 updateRequired: *mut u16,
2724 ) -> PICO_STATUS {
2725 let sym = self
2726 .ps6000aCheckForUpdate
2727 .as_ref()
2728 .expect("Expected function, got error.");
2729 (sym)(handle, current, update, updateRequired)
2730 }
2731 pub unsafe fn ps6000aStartFirmwareUpdate(
2732 &self,
2733 handle: i16,
2734 progress: PicoUpdateFirmwareProgress,
2735 ) -> PICO_STATUS {
2736 let sym = self
2737 .ps6000aStartFirmwareUpdate
2738 .as_ref()
2739 .expect("Expected function, got error.");
2740 (sym)(handle, progress)
2741 }
2742 pub unsafe fn ps6000aResetChannelsAndReportAllChannelsOvervoltageTripStatus(
2743 &self,
2744 handle: i16,
2745 allChannelsTrippedStatus: *mut PICO_CHANNEL_OVERVOLTAGE_TRIPPED,
2746 nChannelTrippedStatus: u8,
2747 ) -> PICO_STATUS {
2748 let sym = self
2749 .ps6000aResetChannelsAndReportAllChannelsOvervoltageTripStatus
2750 .as_ref()
2751 .expect("Expected function, got error.");
2752 (sym)(handle, allChannelsTrippedStatus, nChannelTrippedStatus)
2753 }
2754 pub unsafe fn ps6000aReportAllChannelsOvervoltageTripStatus(
2755 &self,
2756 handle: i16,
2757 allChannelsTrippedStatus: *mut PICO_CHANNEL_OVERVOLTAGE_TRIPPED,
2758 nChannelTrippedStatus: u8,
2759 ) -> PICO_STATUS {
2760 let sym = self
2761 .ps6000aReportAllChannelsOvervoltageTripStatus
2762 .as_ref()
2763 .expect("Expected function, got error.");
2764 (sym)(handle, allChannelsTrippedStatus, nChannelTrippedStatus)
2765 }
2766}