pub mod cache;
pub mod compile;
pub mod config;
pub mod diag;
pub mod effects;
pub mod error;
pub mod filters;
pub mod gpu;
pub mod renderer;
pub mod schedule;
pub(crate) mod text;
pub use cache::{
AtlasBudget, AtlasRegion, CachedRamp, GradientCache, GradientTextureLayout, ImageResidency,
ImageSkip, ImageUpload, ResidentImage,
};
pub use compile::blur_rrect::{encode_blurred_rounded_rect, inflated_bounds};
pub use compile::paint::{
BrushEncoding, ImageEncoding, LutRequest, encode_brush, encode_image, encode_image_brush,
encode_image_command,
};
pub use compile::{CompiledFrame, DepthCounter, EngineDraw, SceneCompiler};
pub use diag::{EngineSpan, FrameTimestamps};
pub use effects::ShaderQuadPass;
pub use error::EngineError;
pub use gpu::{
ATLAS_FORMAT, AtlasArray, DepthAttachment, DepthTexture, EnginePipeline, EngineShaderModule,
EngineShaders, GpuConfig, GpuEncodedPaint, GpuStrip, IntermediateTargets, IntermediateTexture,
StripDraw, lower_encoded_image,
};
pub use renderer::EngineRenderer;
pub use schedule::{Composite, PageParity, PageTarget, Round, RoundOp, RoundTarget, Schedule};
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum OutputAlpha {
Premultiplied,
Straight,
}
#[derive(Debug)]
pub struct EngineTarget<'a> {
pub view: &'a wgpu::TextureView,
pub format: wgpu::TextureFormat,
pub width: u32,
pub height: u32,
pub depth: Option<&'a wgpu::TextureView>,
pub output: OutputAlpha,
}
pub struct EngineSettings {
}