chunk_diff/frame/
changed.rs1use crate::util::{chunk::Chunk, rect::Rect};
2use serde::{Deserialize, Serialize};
3
4#[derive(Serialize, Deserialize, Debug)]
5pub struct Changed {
6 chunk: Chunk,
7 data: Vec<Vec<u8>>,
8}
9
10impl Changed {
11 pub fn new(chunk: Chunk, data: Vec<Vec<u8>>) -> Self {
12 Self { chunk, data }
13 }
14
15 pub fn chunk(&self) -> &Chunk {
16 &self.chunk
17 }
18
19 pub fn data(&self) -> &Vec<Vec<u8>> {
20 &self.data
21 }
22
23 pub fn apply(&self, data: &mut [u8], full: &Rect) {
24 self.chunk.apply(data, &self.data, full);
25 }
26}