use psrdada::prelude::*;
fn main() {
let in_key = 0xB0BA;
let out_key = 0xCAFE;
let mut in_client = HduClient::connect(in_key).unwrap();
let mut out_client = HduClient::connect(out_key).unwrap();
let (_, mut in_data) = in_client.split();
let (_, mut out_data) = out_client.split();
let mut in_data_rdr = in_data.reader().unwrap();
let mut out_data_wdr = out_data.writer().unwrap();
while let Some(mut read_block) = in_data_rdr.next() {
if let Some(mut write_block) = out_data_wdr.next() {
let read_bytes = read_block.block();
let write_bytes = write_block.block();
write_bytes.iter_mut().zip(read_bytes).for_each(|(x, y)| {
*x = *y * 2;
});
} else {
println!("Errored on getting the next write block, perhaps that buffer was destroyed?");
break;
}
}
}