summaryrefslogtreecommitdiffstats
path: root/wgpu/src/image.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2023-03-07 03:47:49 +0100
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2023-03-07 03:47:49 +0100
commit3a26baa564524b0f25c5cb180b592c8b004b68a9 (patch)
treec6a51e9116e7f29552130778fe071efa9b1d1262 /wgpu/src/image.rs
parent9b4bcd287a7f4822314e158990d1dc023d5aab51 (diff)
downloadiced-3a26baa564524b0f25c5cb180b592c8b004b68a9.tar.gz
iced-3a26baa564524b0f25c5cb180b592c8b004b68a9.tar.bz2
iced-3a26baa564524b0f25c5cb180b592c8b004b68a9.zip
Remove `image` abstractions in `iced_graphics`
Diffstat (limited to 'wgpu/src/image.rs')
-rw-r--r--wgpu/src/image.rs39
1 files changed, 17 insertions, 22 deletions
diff --git a/wgpu/src/image.rs b/wgpu/src/image.rs
index 5eaa9a86..4163e338 100644
--- a/wgpu/src/image.rs
+++ b/wgpu/src/image.rs
@@ -1,5 +1,11 @@
mod atlas;
+#[cfg(feature = "image")]
+mod raster;
+
+#[cfg(feature = "svg")]
+mod vector;
+
use atlas::Atlas;
use crate::core::{Rectangle, Size};
@@ -7,12 +13,6 @@ use crate::graphics::Transformation;
use crate::layer;
use crate::Buffer;
-#[cfg(feature = "image")]
-use crate::graphics::image::raster;
-
-#[cfg(feature = "svg")]
-use crate::graphics::image::vector;
-
use std::cell::RefCell;
use std::mem;
@@ -30,9 +30,9 @@ use tracing::info_span;
#[derive(Debug)]
pub struct Pipeline {
#[cfg(feature = "image")]
- raster_cache: RefCell<raster::Cache<Atlas>>,
+ raster_cache: RefCell<raster::Cache>,
#[cfg(feature = "svg")]
- vector_cache: RefCell<vector::Cache<Atlas>>,
+ vector_cache: RefCell<vector::Cache>,
pipeline: wgpu::RenderPipeline,
vertices: wgpu::Buffer,
@@ -368,8 +368,10 @@ impl Pipeline {
#[cfg(feature = "image")]
layer::Image::Raster { handle, bounds } => {
if let Some(atlas_entry) = raster_cache.upload(
+ device,
+ queue,
+ encoder,
handle,
- &mut (device, queue, encoder),
&mut self.texture_atlas,
) {
add_instances(
@@ -392,11 +394,13 @@ impl Pipeline {
let size = [bounds.width, bounds.height];
if let Some(atlas_entry) = vector_cache.upload(
+ device,
+ queue,
+ encoder,
handle,
*color,
size,
_scale,
- &mut (device, queue, encoder),
&mut self.texture_atlas,
) {
add_instances(
@@ -477,21 +481,12 @@ impl Pipeline {
}
}
- pub fn end_frame(
- &mut self,
- device: &wgpu::Device,
- queue: &wgpu::Queue,
- encoder: &mut wgpu::CommandEncoder,
- ) {
+ pub fn end_frame(&mut self) {
#[cfg(feature = "image")]
- self.raster_cache
- .borrow_mut()
- .trim(&mut self.texture_atlas, &mut (device, queue, encoder));
+ self.raster_cache.borrow_mut().trim(&mut self.texture_atlas);
#[cfg(feature = "svg")]
- self.vector_cache
- .borrow_mut()
- .trim(&mut self.texture_atlas, &mut (device, queue, encoder));
+ self.vector_cache.borrow_mut().trim(&mut self.texture_atlas);
self.prepare_layer = 0;
}