pub struct PS5000Loader {Show 47 fields
pub ps5000ApplyFix: Result<unsafe extern "C" fn(u32, u16), Error>,
pub ps5000OpenUnit: Result<unsafe extern "C" fn(*mut i16) -> u32, Error>,
pub ps5000OpenUnitAsync: Result<unsafe extern "C" fn(*mut i16) -> u32, Error>,
pub ps5000OpenUnitProgress: Result<unsafe extern "C" fn(*mut i16, *mut i16, *mut i16) -> u32, Error>,
pub ps5000GetUnitInfo: Result<unsafe extern "C" fn(i16, *mut i8, i16, *mut i16, u32) -> u32, Error>,
pub ps5000FlashLed: Result<unsafe extern "C" fn(i16, i16) -> u32, Error>,
pub ps5000IsLedFlashing: Result<unsafe extern "C" fn(i16, *mut i16) -> u32, Error>,
pub ps5000CloseUnit: Result<unsafe extern "C" fn(i16) -> u32, Error>,
pub ps5000MemorySegments: Result<unsafe extern "C" fn(i16, u16, *mut i32) -> u32, Error>,
pub ps5000SetChannel: Result<unsafe extern "C" fn(i16, u32, i16, i16, u32) -> u32, Error>,
pub ps5000GetTimebase: Result<unsafe extern "C" fn(i16, u32, i32, *mut i32, i16, *mut i32, u16) -> u32, Error>,
pub ps5000GetTimebase2: Result<unsafe extern "C" fn(i16, u32, i32, *mut f32, i16, *mut i32, u16) -> u32, Error>,
pub ps5000SetSigGenArbitrary: Result<unsafe extern "C" fn(i16, i32, u32, u32, u32, u32, u32, *mut i16, i32, u32, i16, u32, u32, u32, u32, u32, i16) -> u32, Error>,
pub ps5000SetSigGenBuiltIn: Result<unsafe extern "C" fn(i16, i32, u32, i16, f32, f32, f32, f32, u32, i16, u32, u32, u32, u32, i16) -> u32, Error>,
pub ps5000SetSigGenBuiltInV2: Result<unsafe extern "C" fn(i16, i32, u32, i16, f64, f64, f64, f64, u32, i16, u32, u32, u32, u32, i16) -> u32, Error>,
pub ps5000SigGenFrequencyToPhase: Result<unsafe extern "C" fn(i16, f64, u32, u32, *mut u32) -> u32, Error>,
pub ps5000SigGenArbitraryMinMaxValues: Result<unsafe extern "C" fn(i16, *mut i16, *mut i16, *mut u32, *mut u32) -> u32, Error>,
pub ps5000SigGenSoftwareControl: Result<unsafe extern "C" fn(i16, i16) -> u32, Error>,
pub ps5000SetEts: Result<unsafe extern "C" fn(i16, u32, i16, i16, *mut i32) -> u32, Error>,
pub ps5000SetTriggerChannelProperties: Result<unsafe extern "C" fn(i16, *mut tTriggerChannelProperties, i16, i16, i32) -> u32, Error>,
pub ps5000SetTriggerChannelConditions: Result<unsafe extern "C" fn(i16, *mut tTriggerConditions, i16) -> u32, Error>,
pub ps5000SetTriggerChannelDirections: Result<unsafe extern "C" fn(i16, u32, u32, u32, u32, u32, u32) -> u32, Error>,
pub ps5000SetSimpleTrigger: Result<unsafe extern "C" fn(i16, i16, u32, i16, u32, u32, i16) -> u32, Error>,
pub ps5000SetTriggerDelay: Result<unsafe extern "C" fn(i16, u32) -> u32, Error>,
pub ps5000SetPulseWidthQualifier: Result<unsafe extern "C" fn(i16, *mut tPwqConditions, i16, u32, u32, u32, u32) -> u32, Error>,
pub ps5000IsTriggerOrPulseWidthQualifierEnabled: Result<unsafe extern "C" fn(i16, *mut i16, *mut i16) -> u32, Error>,
pub ps5000GetTriggerTimeOffset: Result<unsafe extern "C" fn(i16, *mut u32, *mut u32, *mut u32, u16) -> u32, Error>,
pub ps5000GetTriggerTimeOffset64: Result<unsafe extern "C" fn(i16, *mut i64, *mut u32, u16) -> u32, Error>,
pub ps5000GetValuesTriggerTimeOffsetBulk: Result<unsafe extern "C" fn(i16, *mut u32, *mut u32, *mut u32, u16, u16) -> u32, Error>,
pub ps5000GetValuesTriggerTimeOffsetBulk64: Result<unsafe extern "C" fn(i16, *mut i64, *mut u32, u16, u16) -> u32, Error>,
pub ps5000SetDataBuffers: Result<unsafe extern "C" fn(i16, u32, *mut i16, *mut i16, i32) -> u32, Error>,
pub ps5000SetDataBuffer: Result<unsafe extern "C" fn(i16, u32, *mut i16, i32) -> u32, Error>,
pub ps5000SetDataBufferBulk: Result<unsafe extern "C" fn(i16, u32, *mut i16, i32, u16) -> u32, Error>,
pub ps5000SetEtsTimeBuffer: Result<unsafe extern "C" fn(i16, *mut i64, i32) -> u32, Error>,
pub ps5000SetEtsTimeBuffers: Result<unsafe extern "C" fn(i16, *mut u32, *mut u32, i32) -> u32, Error>,
pub ps5000IsReady: Result<unsafe extern "C" fn(i16, *mut i16) -> u32, Error>,
pub ps5000RunBlock: Result<unsafe extern "C" fn(i16, i32, i32, u32, i16, *mut i32, u16, Option<extern "C" fn(i16, u32, *mut c_void)>, *mut c_void) -> u32, Error>,
pub ps5000RunStreaming: Result<unsafe extern "C" fn(i16, *mut u32, u32, u32, u32, i16, u32, u32) -> u32, Error>,
pub ps5000GetStreamingLatestValues: Result<unsafe extern "C" fn(i16, Option<extern "C" fn(i16, i32, u32, i16, u32, i16, i16, *mut c_void)>, *mut c_void) -> u32, Error>,
pub ps5000NoOfStreamingValues: Result<unsafe extern "C" fn(i16, *mut u32) -> u32, Error>,
pub ps5000GetMaxDownSampleRatio: Result<unsafe extern "C" fn(i16, u32, *mut u32, i16, u16) -> u32, Error>,
pub ps5000GetValues: Result<unsafe extern "C" fn(i16, u32, *mut u32, u32, i16, u16, *mut i16) -> u32, Error>,
pub ps5000GetValuesBulk: Result<unsafe extern "C" fn(i16, *mut u32, u16, u16, *mut i16) -> u32, Error>,
pub ps5000GetValuesAsync: Result<unsafe extern "C" fn(i16, u32, u32, u32, i16, u16, *mut c_void, *mut c_void) -> u32, Error>,
pub ps5000Stop: Result<unsafe extern "C" fn(i16) -> u32, Error>,
pub ps5000PingUnit: Result<unsafe extern "C" fn(i16) -> u32, Error>,
pub ps5000SetNoOfCaptures: Result<unsafe extern "C" fn(i16, u16) -> u32, Error>,
/* private fields */
}
Fields§
§ps5000ApplyFix: Result<unsafe extern "C" fn(u32, u16), Error>
§ps5000OpenUnit: Result<unsafe extern "C" fn(*mut i16) -> u32, Error>
§ps5000OpenUnitAsync: Result<unsafe extern "C" fn(*mut i16) -> u32, Error>
§ps5000OpenUnitProgress: Result<unsafe extern "C" fn(*mut i16, *mut i16, *mut i16) -> u32, Error>
§ps5000GetUnitInfo: Result<unsafe extern "C" fn(i16, *mut i8, i16, *mut i16, u32) -> u32, Error>
§ps5000FlashLed: Result<unsafe extern "C" fn(i16, i16) -> u32, Error>
§ps5000IsLedFlashing: Result<unsafe extern "C" fn(i16, *mut i16) -> u32, Error>
§ps5000CloseUnit: Result<unsafe extern "C" fn(i16) -> u32, Error>
§ps5000MemorySegments: Result<unsafe extern "C" fn(i16, u16, *mut i32) -> u32, Error>
§ps5000SetChannel: Result<unsafe extern "C" fn(i16, u32, i16, i16, u32) -> u32, Error>
§ps5000GetTimebase: Result<unsafe extern "C" fn(i16, u32, i32, *mut i32, i16, *mut i32, u16) -> u32, Error>
§ps5000GetTimebase2: Result<unsafe extern "C" fn(i16, u32, i32, *mut f32, i16, *mut i32, u16) -> u32, Error>
§ps5000SetSigGenArbitrary: Result<unsafe extern "C" fn(i16, i32, u32, u32, u32, u32, u32, *mut i16, i32, u32, i16, u32, u32, u32, u32, u32, i16) -> u32, Error>
§ps5000SetSigGenBuiltIn: Result<unsafe extern "C" fn(i16, i32, u32, i16, f32, f32, f32, f32, u32, i16, u32, u32, u32, u32, i16) -> u32, Error>
§ps5000SetSigGenBuiltInV2: Result<unsafe extern "C" fn(i16, i32, u32, i16, f64, f64, f64, f64, u32, i16, u32, u32, u32, u32, i16) -> u32, Error>
§ps5000SigGenFrequencyToPhase: Result<unsafe extern "C" fn(i16, f64, u32, u32, *mut u32) -> u32, Error>
§ps5000SigGenArbitraryMinMaxValues: Result<unsafe extern "C" fn(i16, *mut i16, *mut i16, *mut u32, *mut u32) -> u32, Error>
§ps5000SigGenSoftwareControl: Result<unsafe extern "C" fn(i16, i16) -> u32, Error>
§ps5000SetEts: Result<unsafe extern "C" fn(i16, u32, i16, i16, *mut i32) -> u32, Error>
§ps5000SetTriggerChannelProperties: Result<unsafe extern "C" fn(i16, *mut tTriggerChannelProperties, i16, i16, i32) -> u32, Error>
§ps5000SetTriggerChannelConditions: Result<unsafe extern "C" fn(i16, *mut tTriggerConditions, i16) -> u32, Error>
§ps5000SetTriggerChannelDirections: Result<unsafe extern "C" fn(i16, u32, u32, u32, u32, u32, u32) -> u32, Error>
§ps5000SetSimpleTrigger: Result<unsafe extern "C" fn(i16, i16, u32, i16, u32, u32, i16) -> u32, Error>
§ps5000SetTriggerDelay: Result<unsafe extern "C" fn(i16, u32) -> u32, Error>
§ps5000SetPulseWidthQualifier: Result<unsafe extern "C" fn(i16, *mut tPwqConditions, i16, u32, u32, u32, u32) -> u32, Error>
§ps5000IsTriggerOrPulseWidthQualifierEnabled: Result<unsafe extern "C" fn(i16, *mut i16, *mut i16) -> u32, Error>
§ps5000GetTriggerTimeOffset: Result<unsafe extern "C" fn(i16, *mut u32, *mut u32, *mut u32, u16) -> u32, Error>
§ps5000GetTriggerTimeOffset64: Result<unsafe extern "C" fn(i16, *mut i64, *mut u32, u16) -> u32, Error>
§ps5000GetValuesTriggerTimeOffsetBulk: Result<unsafe extern "C" fn(i16, *mut u32, *mut u32, *mut u32, u16, u16) -> u32, Error>
§ps5000GetValuesTriggerTimeOffsetBulk64: Result<unsafe extern "C" fn(i16, *mut i64, *mut u32, u16, u16) -> u32, Error>
§ps5000SetDataBuffers: Result<unsafe extern "C" fn(i16, u32, *mut i16, *mut i16, i32) -> u32, Error>
§ps5000SetDataBuffer: Result<unsafe extern "C" fn(i16, u32, *mut i16, i32) -> u32, Error>
§ps5000SetDataBufferBulk: Result<unsafe extern "C" fn(i16, u32, *mut i16, i32, u16) -> u32, Error>
§ps5000SetEtsTimeBuffer: Result<unsafe extern "C" fn(i16, *mut i64, i32) -> u32, Error>
§ps5000SetEtsTimeBuffers: Result<unsafe extern "C" fn(i16, *mut u32, *mut u32, i32) -> u32, Error>
§ps5000IsReady: Result<unsafe extern "C" fn(i16, *mut i16) -> u32, Error>
§ps5000RunBlock: Result<unsafe extern "C" fn(i16, i32, i32, u32, i16, *mut i32, u16, Option<extern "C" fn(i16, u32, *mut c_void)>, *mut c_void) -> u32, Error>
§ps5000RunStreaming: Result<unsafe extern "C" fn(i16, *mut u32, u32, u32, u32, i16, u32, u32) -> u32, Error>
§ps5000GetStreamingLatestValues: Result<unsafe extern "C" fn(i16, Option<extern "C" fn(i16, i32, u32, i16, u32, i16, i16, *mut c_void)>, *mut c_void) -> u32, Error>
§ps5000NoOfStreamingValues: Result<unsafe extern "C" fn(i16, *mut u32) -> u32, Error>
§ps5000GetMaxDownSampleRatio: Result<unsafe extern "C" fn(i16, u32, *mut u32, i16, u16) -> u32, Error>
§ps5000GetValues: Result<unsafe extern "C" fn(i16, u32, *mut u32, u32, i16, u16, *mut i16) -> u32, Error>
§ps5000GetValuesBulk: Result<unsafe extern "C" fn(i16, *mut u32, u16, u16, *mut i16) -> u32, Error>
§ps5000GetValuesAsync: Result<unsafe extern "C" fn(i16, u32, u32, u32, i16, u16, *mut c_void, *mut c_void) -> u32, Error>
§ps5000Stop: Result<unsafe extern "C" fn(i16) -> u32, Error>
§ps5000PingUnit: Result<unsafe extern "C" fn(i16) -> u32, Error>
§ps5000SetNoOfCaptures: Result<unsafe extern "C" fn(i16, u16) -> u32, Error>
Implementations§
Source§impl PS5000Loader
impl PS5000Loader
pub unsafe fn new<P>(path: P) -> Result<PS5000Loader, Error>
pub unsafe fn ps5000ApplyFix(&self, a: u32, b: u16)
pub unsafe fn ps5000OpenUnit(&self, handle: *mut i16) -> u32
pub unsafe fn ps5000OpenUnitAsync(&self, status: *mut i16) -> u32
pub unsafe fn ps5000OpenUnitProgress( &self, handle: *mut i16, progressPercent: *mut i16, complete: *mut i16, ) -> u32
pub unsafe fn ps5000GetUnitInfo( &self, handle: i16, string: *mut i8, stringLength: i16, requiredSize: *mut i16, info: u32, ) -> u32
pub unsafe fn ps5000FlashLed(&self, handle: i16, start: i16) -> u32
pub unsafe fn ps5000IsLedFlashing(&self, handle: i16, status: *mut i16) -> u32
pub unsafe fn ps5000CloseUnit(&self, handle: i16) -> u32
pub unsafe fn ps5000MemorySegments( &self, handle: i16, nSegments: u16, nMaxSamples: *mut i32, ) -> u32
pub unsafe fn ps5000SetChannel( &self, handle: i16, channel: u32, enabled: i16, dc: i16, range: u32, ) -> u32
pub unsafe fn ps5000GetTimebase( &self, handle: i16, timebase: u32, noSamples: i32, timeIntervalNanoseconds: *mut i32, oversample: i16, maxSamples: *mut i32, segmentIndex: u16, ) -> u32
pub unsafe fn ps5000GetTimebase2( &self, handle: i16, timebase: u32, noSamples: i32, timeIntervalNanoseconds: *mut f32, oversample: i16, maxSamples: *mut i32, segmentIndex: u16, ) -> u32
pub unsafe fn ps5000SetSigGenArbitrary( &self, handle: i16, offsetVoltage: i32, pkToPk: u32, startDeltaPhase: u32, stopDeltaPhase: u32, deltaPhaseIncrement: u32, dwellCount: u32, arbitraryWaveform: *mut i16, arbitraryWaveformSize: i32, sweepType: u32, whiteNoise: i16, indexMode: u32, shots: u32, sweeps: u32, triggerType: u32, triggerSource: u32, extInThreshold: i16, ) -> u32
pub unsafe fn ps5000SetSigGenBuiltIn( &self, handle: i16, offsetVoltage: i32, pkToPk: u32, waveType: i16, startFrequency: f32, stopFrequency: f32, increment: f32, dwellTime: f32, sweepType: u32, whiteNoise: i16, shots: u32, sweeps: u32, triggerType: u32, triggerSource: u32, extInThreshold: i16, ) -> u32
pub unsafe fn ps5000SetSigGenBuiltInV2( &self, handle: i16, offsetVoltage: i32, pkToPk: u32, waveType: i16, startFrequency: f64, stopFrequency: f64, increment: f64, dwellTime: f64, sweepType: u32, whiteNoise: i16, shots: u32, sweeps: u32, triggerType: u32, triggerSource: u32, extInThreshold: i16, ) -> u32
pub unsafe fn ps5000SigGenFrequencyToPhase( &self, handle: i16, frequency: f64, indexMode: u32, bufferLength: u32, phase: *mut u32, ) -> u32
pub unsafe fn ps5000SigGenArbitraryMinMaxValues( &self, handle: i16, minArbitraryWaveformValue: *mut i16, maxArbitraryWaveformValue: *mut i16, minArbitraryWaveformSize: *mut u32, maxArbitraryWaveformSize: *mut u32, ) -> u32
pub unsafe fn ps5000SigGenSoftwareControl(&self, handle: i16, state: i16) -> u32
pub unsafe fn ps5000SetEts( &self, handle: i16, mode: u32, etsCycles: i16, etsInterleave: i16, sampleTimePicoseconds: *mut i32, ) -> u32
pub unsafe fn ps5000SetTriggerChannelProperties( &self, handle: i16, channelProperties: *mut tTriggerChannelProperties, nChannelProperties: i16, auxOutputEnable: i16, autoTriggerMilliseconds: i32, ) -> u32
pub unsafe fn ps5000SetTriggerChannelConditions( &self, handle: i16, conditions: *mut tTriggerConditions, nConditions: i16, ) -> u32
pub unsafe fn ps5000SetTriggerChannelDirections( &self, handle: i16, channelA: u32, channelB: u32, channelC: u32, channelD: u32, ext: u32, aux: u32, ) -> u32
pub unsafe fn ps5000SetSimpleTrigger( &self, handle: i16, enable: i16, source: u32, threshold: i16, direction: u32, delay: u32, autoTrigger_ms: i16, ) -> u32
pub unsafe fn ps5000SetTriggerDelay(&self, handle: i16, delay: u32) -> u32
pub unsafe fn ps5000SetPulseWidthQualifier( &self, handle: i16, conditions: *mut tPwqConditions, nConditions: i16, direction: u32, lower: u32, upper: u32, type_: u32, ) -> u32
pub unsafe fn ps5000IsTriggerOrPulseWidthQualifierEnabled( &self, handle: i16, triggerEnabled: *mut i16, pulseWidthQualifierEnabled: *mut i16, ) -> u32
pub unsafe fn ps5000GetTriggerTimeOffset( &self, handle: i16, timeUpper: *mut u32, timeLower: *mut u32, timeUnits: *mut u32, segmentIndex: u16, ) -> u32
pub unsafe fn ps5000GetTriggerTimeOffset64( &self, handle: i16, time: *mut i64, timeUnits: *mut u32, segmentIndex: u16, ) -> u32
pub unsafe fn ps5000GetValuesTriggerTimeOffsetBulk( &self, handle: i16, timesUpper: *mut u32, timesLower: *mut u32, timeUnits: *mut u32, fromSegmentIndex: u16, toSegmentIndex: u16, ) -> u32
pub unsafe fn ps5000GetValuesTriggerTimeOffsetBulk64( &self, handle: i16, times: *mut i64, timeUnits: *mut u32, fromSegmentIndex: u16, toSegmentIndex: u16, ) -> u32
pub unsafe fn ps5000SetDataBuffers( &self, handle: i16, channel: u32, bufferMax: *mut i16, bufferMin: *mut i16, bufferLth: i32, ) -> u32
pub unsafe fn ps5000SetDataBuffer( &self, handle: i16, channel: u32, buffer: *mut i16, bufferLth: i32, ) -> u32
pub unsafe fn ps5000SetDataBufferBulk( &self, handle: i16, channel: u32, buffer: *mut i16, bufferLth: i32, waveform: u16, ) -> u32
pub unsafe fn ps5000SetEtsTimeBuffer( &self, handle: i16, buffer: *mut i64, bufferLth: i32, ) -> u32
pub unsafe fn ps5000SetEtsTimeBuffers( &self, handle: i16, timeUpper: *mut u32, timeLower: *mut u32, bufferLth: i32, ) -> u32
pub unsafe fn ps5000IsReady(&self, handle: i16, ready: *mut i16) -> u32
pub unsafe fn ps5000RunBlock( &self, handle: i16, noOfPreTriggerSamples: i32, noOfPostTriggerSamples: i32, timebase: u32, oversample: i16, timeIndisposedMs: *mut i32, segmentIndex: u16, lpReady: Option<extern "C" fn(i16, u32, *mut c_void)>, pParameter: *mut c_void, ) -> u32
pub unsafe fn ps5000RunStreaming( &self, handle: i16, sampleInterval: *mut u32, sampleIntervalTimeUnits: u32, maxPreTriggerSamples: u32, maxPostPreTriggerSamples: u32, autoStop: i16, downSampleRatio: u32, overviewBufferSize: u32, ) -> u32
pub unsafe fn ps5000GetStreamingLatestValues( &self, handle: i16, lpPs5000Ready: Option<extern "C" fn(i16, i32, u32, i16, u32, i16, i16, *mut c_void)>, pParameter: *mut c_void, ) -> u32
pub unsafe fn ps5000NoOfStreamingValues( &self, handle: i16, noOfValues: *mut u32, ) -> u32
pub unsafe fn ps5000GetMaxDownSampleRatio( &self, handle: i16, noOfUnaggreatedSamples: u32, maxDownSampleRatio: *mut u32, downSampleRatioMode: i16, segmentIndex: u16, ) -> u32
pub unsafe fn ps5000GetValues( &self, handle: i16, startIndex: u32, noOfSamples: *mut u32, downSampleRatio: u32, downSampleRatioMode: i16, segmentIndex: u16, overflow: *mut i16, ) -> u32
pub unsafe fn ps5000GetValuesBulk( &self, handle: i16, noOfSamples: *mut u32, fromSegmentIndex: u16, toSegmentIndex: u16, overflow: *mut i16, ) -> u32
pub unsafe fn ps5000GetValuesAsync( &self, handle: i16, startIndex: u32, noOfSamples: u32, downSampleRatio: u32, downSampleRatioMode: i16, segmentIndex: u16, lpDataReady: *mut c_void, pParameter: *mut c_void, ) -> u32
pub unsafe fn ps5000Stop(&self, handle: i16) -> u32
pub unsafe fn ps5000PingUnit(&self, handle: i16) -> u32
pub unsafe fn ps5000SetNoOfCaptures(&self, handle: i16, nCaptures: u16) -> u32
Auto Trait Implementations§
impl Freeze for PS5000Loader
impl !RefUnwindSafe for PS5000Loader
impl Send for PS5000Loader
impl Sync for PS5000Loader
impl Unpin for PS5000Loader
impl !UnwindSafe for PS5000Loader
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more