summaryrefslogtreecommitdiff
path: root/vendor/exr/src/lib.rs
diff options
context:
space:
mode:
authorValentin Popov <valentin@popov.link>2024-01-08 00:21:28 +0300
committerValentin Popov <valentin@popov.link>2024-01-08 00:21:28 +0300
commit1b6a04ca5504955c571d1c97504fb45ea0befee4 (patch)
tree7579f518b23313e8a9748a88ab6173d5e030b227 /vendor/exr/src/lib.rs
parent5ecd8cf2cba827454317368b68571df0d13d7842 (diff)
downloadfparkan-1b6a04ca5504955c571d1c97504fb45ea0befee4.tar.xz
fparkan-1b6a04ca5504955c571d1c97504fb45ea0befee4.zip
Initial vendor packages
Signed-off-by: Valentin Popov <valentin@popov.link>
Diffstat (limited to 'vendor/exr/src/lib.rs')
-rw-r--r--vendor/exr/src/lib.rs100
1 files changed, 100 insertions, 0 deletions
diff --git a/vendor/exr/src/lib.rs b/vendor/exr/src/lib.rs
new file mode 100644
index 0000000..cebb80e
--- /dev/null
+++ b/vendor/exr/src/lib.rs
@@ -0,0 +1,100 @@
+
+
+//! Read and write OpenEXR images.
+//! This library uses no foreign code or unsafe Rust.
+//!
+//! See the [README.md](https://github.com/johannesvollmer/exrs/blob/master/README.md) for crate information.
+//! Read __the [GUIDE.md](https://github.com/johannesvollmer/exrs/blob/master/GUIDE.md) for a API introduction__.
+//! Check out the [examples](https://github.com/johannesvollmer/exrs/tree/master/examples) for a first impression.
+
+#![warn(
+ rust_2018_idioms,
+ future_incompatible,
+ unused_extern_crates,
+ unused,
+
+ missing_copy_implementations,
+ missing_debug_implementations,
+
+ clippy::all,
+ clippy::restriction,
+ clippy::pedantic,
+ clippy::nursery,
+ clippy::cargo,
+)]
+
+#![deny(
+ unused_variables,
+ unused_assignments,
+ dead_code,
+ unused_must_use,
+ missing_copy_implementations,
+ trivial_numeric_casts,
+ redundant_semicolons
+)]
+
+#![forbid(unsafe_code)]
+#![warn(missing_docs)]
+
+pub mod io; // public to allow for custom attribute byte parsing
+
+pub mod math;
+pub mod compression;
+pub mod meta;
+pub mod image;
+
+pub mod error;
+pub mod block;
+
+#[macro_use]
+extern crate smallvec;
+
+/// Export the most important items from `exrs`.
+/// _Note: This includes a type called `Result`, possibly overwriting the default `std::Result` type usage._
+pub mod prelude {
+
+ /// Import this specifically if you want to be explicit but still use the extension traits.
+ pub mod traits {
+ pub use crate::image::write::{WritableImage, channels::GetPixel};
+ pub use crate::image::read::{
+ read, any_channels::ReadSamples, image::ReadLayers,
+ image::ReadImage, layers::ReadChannels,
+ specific_channels::{ReadSpecificChannel}
+ };
+
+ pub use crate::image::crop::{Crop, CropWhere, CropResult, InspectSample, CroppedChannels, ApplyCroppedView};
+ }
+
+ pub use traits::*;
+
+ pub use crate::image::write::{write_rgb_file, write_rgba_file};
+ pub use crate::image::read::{
+ read_first_rgba_layer_from_file,
+ read_all_rgba_layers_from_file,
+ read_all_data_from_file,
+ read_all_flat_layers_from_file,
+ read_first_flat_layer_from_file
+ };
+
+ // image data structures
+ pub use crate::image::*;
+ pub use crate::meta::{ attribute, MetaData, header::{ LayerAttributes, ImageAttributes } };
+ pub use crate::block::samples::Sample;
+ pub use crate::meta::attribute::{
+ AttributeValue, Compression, Text, IntegerBounds,
+ LineOrder, SampleType, TileDescription, ChannelDescription
+ };
+
+ // common math
+ pub use crate::math::Vec2;
+
+ // error handling
+ pub use crate::error::{ Result, Error };
+
+ // re-export external stuff
+ pub use half::f16;
+ pub use smallvec::SmallVec;
+}
+
+
+