#[derive(Default, Debug, Clone)]
pub struct PieceWork {
pub index: u32,
pub hash: Vec<u8>,
pub length: u32,
pub data: Vec<u8>,
pub requests: u32,
pub requested: u32,
pub downloaded: u32,
}
#[derive(Default, Debug, Clone)]
pub struct PieceResult {
pub index: u32,
pub length: u32,
pub data: Vec<u8>,
}
impl PieceWork {
pub fn new(index: u32, hash: Vec<u8>, length: u32) -> PieceWork {
PieceWork {
index,
hash,
length,
data: vec![0; length as usize],
requests: 0,
requested: 0,
downloaded: 0,
}
}
}
impl PieceResult {
pub fn new(index: u32, length: u32, data: Vec<u8>) -> PieceResult {
PieceResult {
index,
length,
data,
}
}
}