-struct HAMShuffler16 {
- lastframe: Option<NAVideoBufferRef<u16>>,
-}
-
-impl HAMShuffler16 {
- fn clear(&mut self) { self.lastframe = None; }
- fn add_frame(&mut self, buf: NAVideoBufferRef<u16>) {
- self.lastframe = Some(buf);
- }
- fn clone_ref(&mut self) -> Option<NAVideoBufferRef<u16>> {
- if let Some(ref mut frm) = self.lastframe {
- let newfrm = frm.copy_buffer();
- *frm = newfrm.clone().into_ref();
- Some(newfrm.into_ref())
- } else {
- None
- }
- }
- fn get_output_frame(&mut self) -> Option<NAVideoBufferRef<u16>> {
- match self.lastframe {
- Some(ref frm) => Some(frm.clone()),
- None => None,
- }
- }
-}
-
-impl Default for HAMShuffler16 {
- fn default() -> Self { Self { lastframe: None } }
-}
-