diff options
-rw-r--r-- | graphics/src/layer.rs | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/graphics/src/layer.rs b/graphics/src/layer.rs deleted file mode 100644 index 5b8aacab..00000000 --- a/graphics/src/layer.rs +++ /dev/null @@ -1,47 +0,0 @@ -pub trait Layer { - type Cache; - - fn new() -> Self; - - fn clear(&mut self); -} - -pub struct Recorder<T: Layer> { - layers: Vec<T>, - caches: Vec<T::Cache>, - stack: Vec<Kind>, - current: usize, -} - -enum Kind { - Fresh(usize), - Cache(usize), -} - -impl<T: Layer> Recorder<T> { - pub fn new() -> Self { - Self { - layers: vec![Layer::new()], - caches: Vec::new(), - stack: Vec::new(), - current: 0, - } - } - - pub fn fill_quad(&mut self) {} - - pub fn push_cache(&mut self, cache: T::Cache) { - self.caches.push(cache); - } - - pub fn clear(&mut self) { - self.caches.clear(); - self.stack.clear(); - - for mut layer in self.layers { - layer.clear(); - } - - self.current = 0; - } -} |