pub struct ChipWhisperer<B: Board> { /* private fields */ }
Implementations§
Trait Implementations§
Source§impl<B: Board + 'static> Transport for ChipWhisperer<B>
impl<B: Board + 'static> Transport for ChipWhisperer<B>
Source§fn capabilities(&self) -> Result<Capabilities>
fn capabilities(&self) -> Result<Capabilities>
Returns a
Capabilities
object to check the capabilities of this
transport object.Source§fn gpio_pin(&self, pinname: &str) -> Result<Rc<dyn GpioPin>>
fn gpio_pin(&self, pinname: &str) -> Result<Rc<dyn GpioPin>>
Returns a
GpioPin
implementation.Source§fn dispatch(&self, action: &dyn Any) -> Result<Option<Box<dyn Annotate>>>
fn dispatch(&self, action: &dyn Any) -> Result<Option<Box<dyn Annotate>>>
Invoke non-standard functionality of some Transport implementations.
Source§fn apply_default_configuration(&self) -> Result<()>
fn apply_default_configuration(&self) -> Result<()>
Resets the transport to power-on condition. That is, pin/uart/spi configuration reverts
to default, ongoing operations are cancelled, etc.
Source§fn jtag(&self, _opts: &JtagParams) -> Result<Box<dyn JtagChain + '_>>
fn jtag(&self, _opts: &JtagParams) -> Result<Box<dyn JtagChain + '_>>
Returns a
JtagChain
implementation.Source§fn gpio_monitoring(&self) -> Result<Rc<dyn GpioMonitoring>>
fn gpio_monitoring(&self) -> Result<Rc<dyn GpioMonitoring>>
Returns a
GpioMonitoring
implementation, for logic analyzer functionality.Source§fn gpio_bitbanging(&self) -> Result<Rc<dyn GpioBitbanging>>
fn gpio_bitbanging(&self) -> Result<Rc<dyn GpioBitbanging>>
Returns a
GpioBitbanging
implementation, for timed and synchronized manipulation of
multiple GPIO pins.Source§fn proxy_ops(&self) -> Result<Rc<dyn ProxyOps>>
fn proxy_ops(&self) -> Result<Rc<dyn ProxyOps>>
Methods available only on Proxy implementation.
Source§fn maintain_connection(&self) -> Result<Rc<dyn MaintainConnection>>
fn maintain_connection(&self) -> Result<Rc<dyn MaintainConnection>>
As long as the returned
MaintainConnection
object is kept by the caller, this driver may
assume that no other opentitantool
processes attempt to access the same debugger device.
This allows for optimzations such as keeping USB handles open across function invocations.Source§fn nonblocking_help(&self) -> Result<Rc<dyn NonblockingHelp>>
fn nonblocking_help(&self) -> Result<Rc<dyn NonblockingHelp>>
Before nonblocking operations can be used on
Uart
or other traits, this
NonblockingHelp
object must be invoked, in order to get the Transport
implementation a
chance to register its internal event sources with the main event loop.Auto Trait Implementations§
impl<B> !Freeze for ChipWhisperer<B>
impl<B> !RefUnwindSafe for ChipWhisperer<B>
impl<B> !Send for ChipWhisperer<B>
impl<B> !Sync for ChipWhisperer<B>
impl<B> Unpin for ChipWhisperer<B>
impl<B> !UnwindSafe for ChipWhisperer<B>
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