mem_rs/process/
read_write.rs1use crate::prelude::{BaseReadWrite, Process, ReadWrite};
18
19impl BaseReadWrite for Process
20{
21 fn read_memory_rel(&self, offset: Option<usize>, buffer: &mut [u8]) -> bool
22 {
23 let mut address = self.get_main_module().base_address;
24 if offset.is_some()
25 {
26 address += offset.unwrap();
27 }
28 return self.read_with_handle(self.process_data.borrow().handle, self.get_memory_type(), address, buffer);
29 }
30
31 fn write_memory_rel(&self, offset: Option<usize>, buffer: &[u8]) -> bool
32 {
33 let mut address = self.get_main_module().base_address;
34 if offset.is_some()
35 {
36 address += offset.unwrap();
37 }
38 return self.write_with_handle(self.process_data.borrow().handle, self.get_memory_type(), address, buffer);
39 }
40
41 fn read_memory_abs(&self, address: usize, buffer: &mut [u8]) -> bool
42 {
43 return self.read_with_handle(self.process_data.borrow().handle, self.get_memory_type(), address, buffer);
44 }
45
46 fn write_memory_abs(&self, address: usize, buffer: &[u8]) -> bool
47 {
48 return self.write_with_handle(self.process_data.borrow().handle, self.get_memory_type(), address, buffer);
49 }
50}
51
52impl ReadWrite for Process{}