exif_oxide/generated/
conversion_refs.rs

1//! Generated conversion reference lists
2//!
3//! This file is automatically generated by codegen.
4//! DO NOT EDIT MANUALLY - changes will be overwritten.
5
6use std::collections::HashSet;
7use std::sync::LazyLock;
8
9/// All unique PrintConv references found in tag definitions
10pub static PRINT_CONV_REFS: LazyLock<HashSet<&'static str>> = LazyLock::new(|| {
11    let mut set = HashSet::new();
12    set.insert("ambienttemperature_print_conv");
13    set.insert("aperturevalue_print_conv");
14    set.insert("cfapattern_print_conv");
15    set.insert("cfaplanecolor_print_conv");
16    set.insert("chromaticaberrationcorrection_print_conv");
17    set.insert("colorspace_print_conv");
18    set.insert("compositeimage_print_conv");
19    set.insert("contrast_print_conv");
20    set.insert("createdate_print_conv");
21    set.insert("customrendered_print_conv");
22    set.insert("datetimeoriginal_print_conv");
23    set.insert("distortioncorrection_print_conv");
24    set.insert("dngbackwardversion_print_conv");
25    set.insert("dngversion_print_conv");
26    set.insert("exposuremode_print_conv");
27    set.insert("exposureprogram_print_conv");
28    set.insert("exposuretime_print_conv");
29    set.insert("filesource_print_conv");
30    set.insert("flash_print_conv");
31    set.insert("fnumber_print_conv");
32    set.insert("focallength_print_conv");
33    set.insert("focallengthin35mmformat_print_conv");
34    set.insert("focalplaneresolutionunit_print_conv");
35    set.insert("framerate_print_conv");
36    set.insert("gaincontrol_print_conv");
37    set.insert("gpsaltitude_print_conv");
38    set.insert("gpsaltituderef_print_conv");
39    set.insert("gpsdestbearingref_print_conv");
40    set.insert("gpsdestdistanceref_print_conv");
41    set.insert("gpsdestlatitude_print_conv");
42    set.insert("gpsdestlatituderef_print_conv");
43    set.insert("gpsdestlongitude_print_conv");
44    set.insert("gpsdestlongituderef_print_conv");
45    set.insert("gpsdifferential_print_conv");
46    set.insert("gpshpositioningerror_print_conv");
47    set.insert("gpsimgdirectionref_print_conv");
48    set.insert("gpslatitude_print_conv");
49    set.insert("gpslatituderef_print_conv");
50    set.insert("gpslongitude_print_conv");
51    set.insert("gpslongituderef_print_conv");
52    set.insert("gpsmeasuremode_print_conv");
53    set.insert("gpsspeedref_print_conv");
54    set.insert("gpsstatus_print_conv");
55    set.insert("gpstimestamp_print_conv");
56    set.insert("gpstrackref_print_conv");
57    set.insert("gpsversionid_print_conv");
58    set.insert("interopindex_print_conv");
59    set.insert("iso_print_conv");
60    set.insert("lensinfo_print_conv");
61    set.insert("lightsource_print_conv");
62    set.insert("maxaperturevalue_print_conv");
63    set.insert("meteringmode_print_conv");
64    set.insert("modifydate_print_conv");
65    set.insert("orientation_print_conv");
66    set.insert("photometricinterpretation_print_conv");
67    set.insert("planarconfiguration_print_conv");
68    set.insert("previewdatetime_print_conv");
69    set.insert("resolutionunit_print_conv");
70    set.insert("saturation_print_conv");
71    set.insert("scenecapturetype_print_conv");
72    set.insert("scenetype_print_conv");
73    set.insert("sensingmethod_print_conv");
74    set.insert("sensitivitytype_print_conv");
75    set.insert("sharpness_print_conv");
76    set.insert("shutterspeedvalue_print_conv");
77    set.insert("sonyrawfiletype_print_conv");
78    set.insert("spatialfrequencyresponse_print_conv");
79    set.insert("subfiletype_print_conv");
80    set.insert("subjectdistance_print_conv");
81    set.insert("subjectdistancerange_print_conv");
82    set.insert("vignettingcorrection_print_conv");
83    set.insert("whitebalance_print_conv");
84    set.insert("ycbcrpositioning_print_conv");
85    set.insert("ycbcrsubsampling_print_conv");
86    set
87});
88
89/// All unique ValueConv references found in tag definitions
90pub static VALUE_CONV_REFS: LazyLock<HashSet<&'static str>> = LazyLock::new(|| {
91    let mut set = HashSet::new();
92    set.insert("aperturevalue_value_conv");
93    set.insert("brightness_value_conv");
94    set.insert("contrast_value_conv");
95    set.insert("converter_value_conv");
96    set.insert("gpsdatestamp_value_conv");
97    set.insert("gpsdestlatitude_value_conv");
98    set.insert("gpsdestlongitude_value_conv");
99    set.insert("gpslatitude_value_conv");
100    set.insert("gpslongitude_value_conv");
101    set.insert("gpstimestamp_value_conv");
102    set.insert("lens_value_conv");
103    set.insert("maxaperturevalue_value_conv");
104    set.insert("ownername_value_conv");
105    set.insert("previewdatetime_value_conv");
106    set.insert("rawdatauniqueid_value_conv");
107    set.insert("saturation_value_conv");
108    set.insert("serialnumber_value_conv");
109    set.insert("shadows_value_conv");
110    set.insert("sharpness_value_conv");
111    set.insert("shutterspeedvalue_value_conv");
112    set.insert("subsectime_value_conv");
113    set.insert("subsectimedigitized_value_conv");
114    set.insert("subsectimeoriginal_value_conv");
115    set.insert("tilebytecounts_value_conv");
116    set.insert("tileoffsets_value_conv");
117    set.insert("whitebalance_value_conv");
118    set.insert("xpauthor_value_conv");
119    set.insert("xpcomment_value_conv");
120    set.insert("xpkeywords_value_conv");
121    set.insert("xpsubject_value_conv");
122    set.insert("xptitle_value_conv");
123    set
124});
125
126/// Check if a PrintConv reference exists
127pub fn has_print_conv_ref(name: &str) -> bool {
128    PRINT_CONV_REFS.contains(name)
129}
130
131/// Check if a ValueConv reference exists
132pub fn has_value_conv_ref(name: &str) -> bool {
133    VALUE_CONV_REFS.contains(name)
134}
135
136/// Get statistics about conversion references
137pub fn conversion_ref_stats() -> (usize, usize) {
138    (PRINT_CONV_REFS.len(), VALUE_CONV_REFS.len())
139}