1pub trait PixelSink {
18 type Input<'a>;
21
22 type Error;
26
27 #[allow(unused_variables)]
33 fn begin_frame(&mut self, width: u32, height: u32) -> Result<(), Self::Error> {
34 Ok(())
35 }
36
37 fn process(&mut self, input: Self::Input<'_>) -> Result<(), Self::Error>;
42}
43
44pub trait SourceFormat: sealed::Sealed {}
49
50pub(crate) mod sealed {
54 pub trait Sealed {}
57}
58
59#[macro_use]
62mod marker_macro;
63#[macro_use]
64mod walker_macro;
65
66#[cfg(feature = "yuv-planar")]
70#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
71mod yuv420p;
72#[cfg(feature = "yuv-planar")]
73pub use yuv420p::*;
74
75#[cfg(feature = "yuv-planar")]
76#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
77mod yuv420p9;
78#[cfg(feature = "yuv-planar")]
79pub use yuv420p9::*;
80
81#[cfg(feature = "yuv-planar")]
82#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
83mod yuv420p10;
84#[cfg(feature = "yuv-planar")]
85pub use yuv420p10::*;
86
87#[cfg(feature = "yuv-planar")]
88#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
89mod yuv420p12;
90#[cfg(feature = "yuv-planar")]
91pub use yuv420p12::*;
92
93#[cfg(feature = "yuv-planar")]
94#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
95mod yuv420p14;
96#[cfg(feature = "yuv-planar")]
97pub use yuv420p14::*;
98
99#[cfg(feature = "yuv-planar")]
100#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
101mod yuv420p16;
102#[cfg(feature = "yuv-planar")]
103pub use yuv420p16::*;
104
105#[cfg(feature = "yuv-planar")]
106#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
107mod yuv422p;
108#[cfg(feature = "yuv-planar")]
109pub use yuv422p::*;
110
111#[cfg(feature = "yuv-planar")]
112#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
113mod yuv422p9;
114#[cfg(feature = "yuv-planar")]
115pub use yuv422p9::*;
116
117#[cfg(feature = "yuv-planar")]
118#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
119mod yuv422p10;
120#[cfg(feature = "yuv-planar")]
121pub use yuv422p10::*;
122
123#[cfg(feature = "yuv-planar")]
124#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
125mod yuv422p12;
126#[cfg(feature = "yuv-planar")]
127pub use yuv422p12::*;
128
129#[cfg(feature = "yuv-planar")]
130#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
131mod yuv422p14;
132#[cfg(feature = "yuv-planar")]
133pub use yuv422p14::*;
134
135#[cfg(feature = "yuv-planar")]
136#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
137mod yuv422p16;
138#[cfg(feature = "yuv-planar")]
139pub use yuv422p16::*;
140
141#[cfg(feature = "yuv-planar")]
142#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
143mod yuv440p;
144#[cfg(feature = "yuv-planar")]
145pub use yuv440p::*;
146
147#[cfg(feature = "yuv-planar")]
148#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
149mod yuv440p10;
150#[cfg(feature = "yuv-planar")]
151pub use yuv440p10::*;
152
153#[cfg(feature = "yuv-planar")]
154#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
155mod yuv440p12;
156#[cfg(feature = "yuv-planar")]
157pub use yuv440p12::*;
158
159#[cfg(feature = "yuv-planar")]
160#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
161mod yuv444p;
162#[cfg(feature = "yuv-planar")]
163pub use yuv444p::*;
164
165#[cfg(feature = "yuv-planar")]
166#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
167mod yuv444p9;
168#[cfg(feature = "yuv-planar")]
169pub use yuv444p9::*;
170
171#[cfg(feature = "yuv-planar")]
172#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
173mod yuv444p10;
174#[cfg(feature = "yuv-planar")]
175pub use yuv444p10::*;
176
177#[cfg(feature = "yuv-planar")]
178#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
179mod yuv444p12;
180#[cfg(feature = "yuv-planar")]
181pub use yuv444p12::*;
182
183#[cfg(feature = "yuv-planar")]
184#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
185mod yuv444p14;
186#[cfg(feature = "yuv-planar")]
187pub use yuv444p14::*;
188
189#[cfg(feature = "yuv-planar")]
190#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
191mod yuv444p16;
192#[cfg(feature = "yuv-planar")]
193pub use yuv444p16::*;
194
195#[cfg(feature = "yuv-planar")]
196#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
197mod yuv411p;
198#[cfg(feature = "yuv-planar")]
199pub use yuv411p::*;
200
201#[cfg(feature = "yuv-planar")]
202#[cfg_attr(docsrs, doc(cfg(feature = "yuv-planar")))]
203mod yuv410p;
204#[cfg(feature = "yuv-planar")]
205pub use yuv410p::*;
206
207#[cfg(feature = "yuv-semi-planar")]
209#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
210mod nv12;
211#[cfg(feature = "yuv-semi-planar")]
212pub use nv12::*;
213
214#[cfg(feature = "yuv-semi-planar")]
215#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
216mod nv16;
217#[cfg(feature = "yuv-semi-planar")]
218pub use nv16::*;
219
220#[cfg(feature = "yuv-semi-planar")]
221#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
222mod nv21;
223#[cfg(feature = "yuv-semi-planar")]
224pub use nv21::*;
225
226#[cfg(feature = "yuv-semi-planar")]
227#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
228mod nv24;
229#[cfg(feature = "yuv-semi-planar")]
230pub use nv24::*;
231
232#[cfg(feature = "yuv-semi-planar")]
233#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
234mod nv42;
235#[cfg(feature = "yuv-semi-planar")]
236pub use nv42::*;
237
238#[cfg(feature = "yuv-semi-planar")]
239#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
240mod p010;
241#[cfg(feature = "yuv-semi-planar")]
242pub use p010::*;
243
244#[cfg(feature = "yuv-semi-planar")]
245#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
246mod p012;
247#[cfg(feature = "yuv-semi-planar")]
248pub use p012::*;
249
250#[cfg(feature = "yuv-semi-planar")]
251#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
252mod p016;
253#[cfg(feature = "yuv-semi-planar")]
254pub use p016::*;
255
256#[cfg(feature = "yuv-semi-planar")]
257#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
258mod p210;
259#[cfg(feature = "yuv-semi-planar")]
260pub use p210::*;
261
262#[cfg(feature = "yuv-semi-planar")]
263#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
264mod p212;
265#[cfg(feature = "yuv-semi-planar")]
266pub use p212::*;
267
268#[cfg(feature = "yuv-semi-planar")]
269#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
270mod p216;
271#[cfg(feature = "yuv-semi-planar")]
272pub use p216::*;
273
274#[cfg(feature = "yuv-semi-planar")]
275#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
276mod p410;
277#[cfg(feature = "yuv-semi-planar")]
278pub use p410::*;
279
280#[cfg(feature = "yuv-semi-planar")]
281#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
282mod p412;
283#[cfg(feature = "yuv-semi-planar")]
284pub use p412::*;
285
286#[cfg(feature = "yuv-semi-planar")]
287#[cfg_attr(docsrs, doc(cfg(feature = "yuv-semi-planar")))]
288mod p416;
289#[cfg(feature = "yuv-semi-planar")]
290pub use p416::*;
291
292#[cfg(feature = "yuva")]
294#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
295mod yuva420p;
296#[cfg(feature = "yuva")]
297pub use yuva420p::*;
298
299#[cfg(feature = "yuva")]
300#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
301mod yuva420p9;
302#[cfg(feature = "yuva")]
303pub use yuva420p9::*;
304
305#[cfg(feature = "yuva")]
306#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
307mod yuva420p10;
308#[cfg(feature = "yuva")]
309pub use yuva420p10::*;
310
311#[cfg(feature = "yuva")]
312#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
313mod yuva420p16;
314#[cfg(feature = "yuva")]
315pub use yuva420p16::*;
316
317#[cfg(feature = "yuva")]
318#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
319mod yuva422p;
320#[cfg(feature = "yuva")]
321pub use yuva422p::*;
322
323#[cfg(feature = "yuva")]
324#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
325mod yuva422p9;
326#[cfg(feature = "yuva")]
327pub use yuva422p9::*;
328
329#[cfg(feature = "yuva")]
330#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
331mod yuva422p10;
332#[cfg(feature = "yuva")]
333pub use yuva422p10::*;
334
335#[cfg(feature = "yuva")]
336#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
337mod yuva422p12;
338#[cfg(feature = "yuva")]
339pub use yuva422p12::*;
340
341#[cfg(feature = "yuva")]
342#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
343mod yuva422p16;
344#[cfg(feature = "yuva")]
345pub use yuva422p16::*;
346
347#[cfg(feature = "yuva")]
348#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
349mod yuva444p;
350#[cfg(feature = "yuva")]
351pub use yuva444p::*;
352
353#[cfg(feature = "yuva")]
354#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
355mod yuva444p9;
356#[cfg(feature = "yuva")]
357pub use yuva444p9::*;
358
359#[cfg(feature = "yuva")]
360#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
361mod yuva444p10;
362#[cfg(feature = "yuva")]
363pub use yuva444p10::*;
364
365#[cfg(feature = "yuva")]
366#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
367mod yuva444p12;
368#[cfg(feature = "yuva")]
369pub use yuva444p12::*;
370
371#[cfg(feature = "yuva")]
372#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
373mod yuva444p14;
374#[cfg(feature = "yuva")]
375pub use yuva444p14::*;
376
377#[cfg(feature = "yuva")]
378#[cfg_attr(docsrs, doc(cfg(feature = "yuva")))]
379mod yuva444p16;
380#[cfg(feature = "yuva")]
381pub use yuva444p16::*;
382
383#[cfg(feature = "yuv-packed")]
385#[cfg_attr(docsrs, doc(cfg(feature = "yuv-packed")))]
386mod yuyv422;
387#[cfg(feature = "yuv-packed")]
388pub use yuyv422::*;
389
390#[cfg(feature = "yuv-packed")]
391#[cfg_attr(docsrs, doc(cfg(feature = "yuv-packed")))]
392mod uyvy422;
393#[cfg(feature = "yuv-packed")]
394pub use uyvy422::*;
395
396#[cfg(feature = "yuv-packed")]
397#[cfg_attr(docsrs, doc(cfg(feature = "yuv-packed")))]
398mod yvyu422;
399#[cfg(feature = "yuv-packed")]
400pub use yvyu422::*;
401
402#[cfg(feature = "yuv-packed")]
403#[cfg_attr(docsrs, doc(cfg(feature = "yuv-packed")))]
404mod uyyvyy411;
405#[cfg(feature = "yuv-packed")]
406pub use uyyvyy411::*;
407
408#[cfg(feature = "yuv-444-packed")]
410#[cfg_attr(docsrs, doc(cfg(feature = "yuv-444-packed")))]
411mod v410;
412#[cfg(feature = "yuv-444-packed")]
413pub use v410::*;
414
415#[cfg(feature = "yuv-444-packed")]
416#[cfg_attr(docsrs, doc(cfg(feature = "yuv-444-packed")))]
417mod v30x;
418#[cfg(feature = "yuv-444-packed")]
419pub use v30x::*;
420
421#[cfg(feature = "yuv-444-packed")]
422#[cfg_attr(docsrs, doc(cfg(feature = "yuv-444-packed")))]
423mod xv36;
424#[cfg(feature = "yuv-444-packed")]
425pub use xv36::*;
426
427#[cfg(feature = "yuv-444-packed")]
428#[cfg_attr(docsrs, doc(cfg(feature = "yuv-444-packed")))]
429mod ayuv64;
430#[cfg(feature = "yuv-444-packed")]
431pub use ayuv64::*;
432
433#[cfg(feature = "yuv-444-packed")]
434#[cfg_attr(docsrs, doc(cfg(feature = "yuv-444-packed")))]
435mod vuya;
436#[cfg(feature = "yuv-444-packed")]
437pub use vuya::*;
438
439#[cfg(feature = "yuv-444-packed")]
440#[cfg_attr(docsrs, doc(cfg(feature = "yuv-444-packed")))]
441mod vuyx;
442#[cfg(feature = "yuv-444-packed")]
443pub use vuyx::*;
444
445#[cfg(feature = "y2xx")]
447#[cfg_attr(docsrs, doc(cfg(feature = "y2xx")))]
448mod y210;
449#[cfg(feature = "y2xx")]
450pub use y210::*;
451
452#[cfg(feature = "y2xx")]
453#[cfg_attr(docsrs, doc(cfg(feature = "y2xx")))]
454mod y212;
455#[cfg(feature = "y2xx")]
456pub use y212::*;
457
458#[cfg(feature = "y2xx")]
459#[cfg_attr(docsrs, doc(cfg(feature = "y2xx")))]
460mod y216;
461#[cfg(feature = "y2xx")]
462pub use y216::*;
463
464#[cfg(feature = "v210")]
466#[cfg_attr(docsrs, doc(cfg(feature = "v210")))]
467mod v210;
468#[cfg(feature = "v210")]
469pub use v210::*;
470
471#[cfg(feature = "rgb")]
473#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
474mod rgb24;
475#[cfg(feature = "rgb")]
476pub use rgb24::*;
477
478#[cfg(feature = "rgb")]
479#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
480mod bgr24;
481#[cfg(feature = "rgb")]
482pub use bgr24::*;
483
484#[cfg(feature = "rgb")]
485#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
486mod rgba;
487#[cfg(feature = "rgb")]
488pub use rgba::*;
489
490#[cfg(feature = "rgb")]
491#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
492mod bgra;
493#[cfg(feature = "rgb")]
494pub use bgra::*;
495
496#[cfg(feature = "rgb")]
497#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
498mod argb;
499#[cfg(feature = "rgb")]
500pub use argb::*;
501
502#[cfg(feature = "rgb")]
503#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
504mod abgr;
505#[cfg(feature = "rgb")]
506pub use abgr::*;
507
508#[cfg(feature = "rgb")]
509#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
510mod xrgb;
511#[cfg(feature = "rgb")]
512pub use xrgb::*;
513
514#[cfg(feature = "rgb")]
515#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
516mod rgbx;
517#[cfg(feature = "rgb")]
518pub use rgbx::*;
519
520#[cfg(feature = "rgb")]
521#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
522mod xbgr;
523#[cfg(feature = "rgb")]
524pub use xbgr::*;
525
526#[cfg(feature = "rgb")]
527#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
528mod bgrx;
529#[cfg(feature = "rgb")]
530pub use bgrx::*;
531
532#[cfg(feature = "rgb")]
533#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
534mod rgb48;
535#[cfg(feature = "rgb")]
536pub use rgb48::*;
537
538#[cfg(feature = "rgb")]
539#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
540mod bgr48;
541#[cfg(feature = "rgb")]
542pub use bgr48::*;
543
544#[cfg(feature = "rgb")]
545#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
546mod rgba64;
547#[cfg(feature = "rgb")]
548pub use rgba64::*;
549
550#[cfg(feature = "rgb")]
551#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
552mod bgra64;
553#[cfg(feature = "rgb")]
554pub use bgra64::*;
555
556#[cfg(feature = "rgb")]
557#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
558mod x2rgb10;
559#[cfg(feature = "rgb")]
560pub use x2rgb10::*;
561
562#[cfg(feature = "rgb")]
563#[cfg_attr(docsrs, doc(cfg(feature = "rgb")))]
564mod x2bgr10;
565#[cfg(feature = "rgb")]
566pub use x2bgr10::*;
567
568#[cfg(feature = "rgb-float")]
570#[cfg_attr(docsrs, doc(cfg(feature = "rgb-float")))]
571mod rgbf32;
572#[cfg(feature = "rgb-float")]
573pub use rgbf32::*;
574
575#[cfg(feature = "rgb-float")]
576#[cfg_attr(docsrs, doc(cfg(feature = "rgb-float")))]
577mod rgbf16;
578#[cfg(feature = "rgb-float")]
579pub use rgbf16::*;
580
581#[cfg(feature = "rgb-legacy")]
583#[cfg_attr(docsrs, doc(cfg(feature = "rgb-legacy")))]
584mod rgb444;
585#[cfg(feature = "rgb-legacy")]
586pub use rgb444::*;
587
588#[cfg(feature = "rgb-legacy")]
589#[cfg_attr(docsrs, doc(cfg(feature = "rgb-legacy")))]
590mod rgb555;
591#[cfg(feature = "rgb-legacy")]
592pub use rgb555::*;
593
594#[cfg(feature = "rgb-legacy")]
595#[cfg_attr(docsrs, doc(cfg(feature = "rgb-legacy")))]
596mod rgb565;
597#[cfg(feature = "rgb-legacy")]
598pub use rgb565::*;
599
600#[cfg(feature = "rgb-legacy")]
601#[cfg_attr(docsrs, doc(cfg(feature = "rgb-legacy")))]
602mod bgr444;
603#[cfg(feature = "rgb-legacy")]
604pub use bgr444::*;
605
606#[cfg(feature = "rgb-legacy")]
607#[cfg_attr(docsrs, doc(cfg(feature = "rgb-legacy")))]
608mod bgr555;
609#[cfg(feature = "rgb-legacy")]
610pub use bgr555::*;
611
612#[cfg(feature = "rgb-legacy")]
613#[cfg_attr(docsrs, doc(cfg(feature = "rgb-legacy")))]
614mod bgr565;
615#[cfg(feature = "rgb-legacy")]
616pub use bgr565::*;
617
618#[cfg(feature = "gbr")]
620#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
621mod gbrp;
622#[cfg(feature = "gbr")]
623pub use gbrp::*;
624
625#[cfg(feature = "gbr")]
626#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
627mod gbrap;
628#[cfg(feature = "gbr")]
629pub use gbrap::*;
630
631#[cfg(feature = "gbr")]
632#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
633mod gbrp9;
634#[cfg(feature = "gbr")]
635pub use gbrp9::*;
636
637#[cfg(feature = "gbr")]
638#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
639mod gbrp10;
640#[cfg(feature = "gbr")]
641pub use gbrp10::*;
642
643#[cfg(feature = "gbr")]
644#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
645mod gbrp12;
646#[cfg(feature = "gbr")]
647pub use gbrp12::*;
648
649#[cfg(feature = "gbr")]
650#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
651mod gbrp14;
652#[cfg(feature = "gbr")]
653pub use gbrp14::*;
654
655#[cfg(feature = "gbr")]
656#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
657mod gbrp16;
658#[cfg(feature = "gbr")]
659pub use gbrp16::*;
660
661#[cfg(feature = "gbr")]
662#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
663mod gbrap10;
664#[cfg(feature = "gbr")]
665pub use gbrap10::*;
666
667#[cfg(feature = "gbr")]
668#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
669mod gbrap12;
670#[cfg(feature = "gbr")]
671pub use gbrap12::*;
672
673#[cfg(feature = "gbr")]
674#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
675mod gbrap14;
676#[cfg(feature = "gbr")]
677pub use gbrap14::*;
678
679#[cfg(feature = "gbr")]
680#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
681mod gbrap16;
682#[cfg(feature = "gbr")]
683pub use gbrap16::*;
684
685#[cfg(feature = "gbr")]
686#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
687mod gbrpf32;
688#[cfg(feature = "gbr")]
689pub use gbrpf32::*;
690
691#[cfg(feature = "gbr")]
692#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
693mod gbrapf32;
694#[cfg(feature = "gbr")]
695pub use gbrapf32::*;
696
697#[cfg(feature = "gbr")]
698#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
699mod gbrpf16;
700#[cfg(feature = "gbr")]
701pub use gbrpf16::*;
702
703#[cfg(feature = "gbr")]
704#[cfg_attr(docsrs, doc(cfg(feature = "gbr")))]
705mod gbrapf16;
706#[cfg(feature = "gbr")]
707pub use gbrapf16::*;
708
709#[cfg(feature = "gray")]
711#[cfg_attr(docsrs, doc(cfg(feature = "gray")))]
712mod gray8;
713#[cfg(feature = "gray")]
714pub use gray8::*;
715
716#[cfg(feature = "gray")]
717#[cfg_attr(docsrs, doc(cfg(feature = "gray")))]
718mod gray9;
719#[cfg(feature = "gray")]
720pub use gray9::*;
721
722#[cfg(feature = "gray")]
723#[cfg_attr(docsrs, doc(cfg(feature = "gray")))]
724mod gray10;
725#[cfg(feature = "gray")]
726pub use gray10::*;
727
728#[cfg(feature = "gray")]
729#[cfg_attr(docsrs, doc(cfg(feature = "gray")))]
730mod gray12;
731#[cfg(feature = "gray")]
732pub use gray12::*;
733
734#[cfg(feature = "gray")]
735#[cfg_attr(docsrs, doc(cfg(feature = "gray")))]
736mod gray14;
737#[cfg(feature = "gray")]
738pub use gray14::*;
739
740#[cfg(feature = "gray")]
741#[cfg_attr(docsrs, doc(cfg(feature = "gray")))]
742mod gray16;
743#[cfg(feature = "gray")]
744pub use gray16::*;
745
746#[cfg(feature = "gray")]
747#[cfg_attr(docsrs, doc(cfg(feature = "gray")))]
748mod grayf32;
749#[cfg(feature = "gray")]
750pub use grayf32::*;
751
752#[cfg(feature = "gray")]
753#[cfg_attr(docsrs, doc(cfg(feature = "gray")))]
754mod ya8;
755#[cfg(feature = "gray")]
756pub use ya8::*;
757
758#[cfg(feature = "gray")]
759#[cfg_attr(docsrs, doc(cfg(feature = "gray")))]
760mod ya16;
761#[cfg(feature = "gray")]
762pub use ya16::*;
763
764#[cfg(feature = "mono")]
766#[cfg_attr(docsrs, doc(cfg(feature = "mono")))]
767mod monoblack;
768#[cfg(feature = "mono")]
769pub use monoblack::*;
770
771#[cfg(feature = "mono")]
772#[cfg_attr(docsrs, doc(cfg(feature = "mono")))]
773mod monowhite;
774#[cfg(feature = "mono")]
775pub use monowhite::*;
776
777#[cfg(feature = "mono")]
778#[cfg_attr(docsrs, doc(cfg(feature = "mono")))]
779mod pal8;
780#[cfg(feature = "mono")]
781pub use pal8::*;
782
783#[cfg(feature = "bayer")]
785#[cfg_attr(docsrs, doc(cfg(feature = "bayer")))]
786mod bayer;
787#[cfg(feature = "bayer")]
788pub use bayer::*;
789
790#[cfg(feature = "bayer")]
791#[cfg_attr(docsrs, doc(cfg(feature = "bayer")))]
792mod bayer16;
793#[cfg(feature = "bayer")]
794pub use bayer16::*;
795
796#[cfg(feature = "xyz")]
798#[cfg_attr(docsrs, doc(cfg(feature = "xyz")))]
799mod xyz12;
800#[cfg(feature = "xyz")]
801pub use xyz12::*;
802
803mod hsv;
804pub use hsv::*;