close enough to your requirements.
handle: the handle of the required oscilloscope
timebase: a code between 0 and the maximum timebase
(depending on the oscilloscope). Timebase 0 is the fastest timebase.
Each successive timebase has twice the sampling interval of the
previous one.
no_of_samples: the number of samples that you require. The
function uses this value to calculate the most suitable time unit to
use.
time_interval: on exit, this location will contain the time
interval, in nanoseconds, between readings at the selected
timebase. If time_interval is NULL, the function will write
nothing.
time_units: on exit, this location will contain an enumerated type
indicating the most suitable unit for expressing sample times. You
should pass this value to ps2000_get_times_and_values. If
time_units is null, the function will write nothing.
oversample: the amount of oversample required. For example, an
oversample of 4 results in a time_interval 4 times larger and a
max_samples 4 times smaller. At the same time it increases the
effective resolution by one bit. See Oversampling for more details.
max_samples: on exit, the maximum number of samples available.
The scope allocates a certain amount of memory for internal
overheads and this may vary depending on the number of channels
enabled, the timebase chosen and the oversample multiplier
selected. If max_samples is NULL, the function will write nothing.