pub struct PINE<T: Read + Write> { /* private fields */ }Implementations§
Source§impl<T: Read + Write> PINE<T>
impl<T: Read + Write> PINE<T>
pub fn from_stream(stream: T) -> Self
pub fn into_inner(self) -> T
pub fn send_raw(&mut self, buffer: &[u8]) -> PINEResult<Vec<u8>>
Sourcepub fn send(&mut self, batch: &mut PINEBatch) -> PINEResult<Vec<PINEResponse>>
pub fn send(&mut self, batch: &mut PINEBatch) -> PINEResult<Vec<PINEResponse>>
Examples found in repository?
examples/game_info.rs (line 14)
3fn main() {
4 // Connect to PINE using the default slot for PCSX2 (28011)
5 let mut pine = PINE::connect("pcsx2", 28011, true).expect("Failed to connect to PCSX2");
6
7 // Create batch command
8 let mut batch = PINEBatch::new();
9 batch.add(PINECommand::MsgTitle);
10 batch.add(PINECommand::MsgGameVersion);
11 batch.add(PINECommand::MsgRead32 { mem: 0x003667DC });
12
13 // Send batch
14 let res = pine.send(&mut batch).expect("Failed to send PINE batch");
15 println!("{res:?}");
16 // Example response:
17 // [
18 // ResTitle { title: "Klonoa 2 - Lunatea's Veil" },
19 // ResGameVersion { version: "1.00" },
20 // ResRead32 { val: 3566512 }
21 // ]
22}Source§impl PINE<UnixStream>
impl PINE<UnixStream>
pub fn connect_unix(target: &str, slot: u16, auto: bool) -> PINEResult<Self>
Sourcepub fn connect(target: &str, slot: u16, auto: bool) -> PINEResult<Self>
pub fn connect(target: &str, slot: u16, auto: bool) -> PINEResult<Self>
Examples found in repository?
examples/game_info.rs (line 5)
3fn main() {
4 // Connect to PINE using the default slot for PCSX2 (28011)
5 let mut pine = PINE::connect("pcsx2", 28011, true).expect("Failed to connect to PCSX2");
6
7 // Create batch command
8 let mut batch = PINEBatch::new();
9 batch.add(PINECommand::MsgTitle);
10 batch.add(PINECommand::MsgGameVersion);
11 batch.add(PINECommand::MsgRead32 { mem: 0x003667DC });
12
13 // Send batch
14 let res = pine.send(&mut batch).expect("Failed to send PINE batch");
15 println!("{res:?}");
16 // Example response:
17 // [
18 // ResTitle { title: "Klonoa 2 - Lunatea's Veil" },
19 // ResGameVersion { version: "1.00" },
20 // ResRead32 { val: 3566512 }
21 // ]
22}Source§impl PINE<TcpStream>
impl PINE<TcpStream>
pub fn connect_tcp(addr: Ipv4Addr, slot: u16) -> PINEResult<Self>
Auto Trait Implementations§
impl<T> !Freeze for PINE<T>
impl<T> RefUnwindSafe for PINE<T>where
T: RefUnwindSafe,
impl<T> Send for PINE<T>where
T: Send,
impl<T> Sync for PINE<T>where
T: Sync,
impl<T> Unpin for PINE<T>where
T: Unpin,
impl<T> UnwindSafe for PINE<T>where
T: UnwindSafe,
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