pub trait Transport {
Show 13 methods
// Required method
fn capabilities(&self) -> Result<Capabilities>;
// Provided methods
fn apply_default_configuration(&self) -> Result<()> { ... }
fn jtag(&self, _opts: &JtagParams) -> Result<Box<dyn JtagChain + '_>> { ... }
fn spi(&self, _instance: &str) -> Result<Rc<dyn Target>> { ... }
fn i2c(&self, _instance: &str) -> Result<Rc<dyn Bus>> { ... }
fn uart(&self, _instance: &str) -> Result<Rc<dyn Uart>> { ... }
fn gpio_pin(&self, _instance: &str) -> Result<Rc<dyn GpioPin>> { ... }
fn gpio_monitoring(&self) -> Result<Rc<dyn GpioMonitoring>> { ... }
fn gpio_bitbanging(&self) -> Result<Rc<dyn GpioBitbanging>> { ... }
fn emulator(&self) -> Result<Rc<dyn Emulator>> { ... }
fn proxy_ops(&self) -> Result<Rc<dyn ProxyOps>> { ... }
fn dispatch(&self, _action: &dyn Any) -> Result<Option<Box<dyn Serialize>>> { ... }
fn maintain_connection(&self) -> Result<Rc<dyn MaintainConnection>> { ... }
}
Expand description
A transport object is a factory for the low-level interfaces provided by a given communications backend.
Required Methods§
Sourcefn capabilities(&self) -> Result<Capabilities>
fn capabilities(&self) -> Result<Capabilities>
Returns a Capabilities
object to check the capabilities of this
transport object.
Provided Methods§
Sourcefn 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.
Sourcefn jtag(&self, _opts: &JtagParams) -> Result<Box<dyn JtagChain + '_>>
fn jtag(&self, _opts: &JtagParams) -> Result<Box<dyn JtagChain + '_>>
Returns a JtagChain
implementation.
Sourcefn gpio_pin(&self, _instance: &str) -> Result<Rc<dyn GpioPin>>
fn gpio_pin(&self, _instance: &str) -> Result<Rc<dyn GpioPin>>
Returns a GpioPin
implementation.
Sourcefn gpio_monitoring(&self) -> Result<Rc<dyn GpioMonitoring>>
fn gpio_monitoring(&self) -> Result<Rc<dyn GpioMonitoring>>
Returns a GpioMonitoring
implementation, for logic analyzer functionality.
Sourcefn 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.
Sourcefn proxy_ops(&self) -> Result<Rc<dyn ProxyOps>>
fn proxy_ops(&self) -> Result<Rc<dyn ProxyOps>>
Methods available only on Proxy implementation.
Sourcefn dispatch(&self, _action: &dyn Any) -> Result<Option<Box<dyn Serialize>>>
fn dispatch(&self, _action: &dyn Any) -> Result<Option<Box<dyn Serialize>>>
Invoke non-standard functionality of some Transport implementations.
Sourcefn 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 optimizations such as keeping USB handles open across function invocations.