import 'package:exif/src/tags_info.dart' show MakerTag, MakerTagFunc, TagsBase; import 'package:exif/src/util.dart'; // Makernote (proprietary) tag definitions for FujiFilm. // http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/FujiFilm.html class MakerNoteFujifilm extends TagsBase { static MakerTag _make(String name) => MakerTag.make(name); static MakerTag _withMap(String name, Map map) => MakerTag.makeWithMap(name, map); static MakerTag _withFunc(String name, MakerTagFunc func) => MakerTag.makeWithFunc(name, func); static final tags = { 0x0000: _withFunc('NoteVersion', makeString), 0x0010: _make('InternalSerialNumber'), 0x1000: _make('Quality'), 0x1001: _withMap('Sharpness', { 0x1: 'Soft', 0x2: 'Soft', 0x3: 'Normal', 0x4: 'Hard', 0x5: 'Hard2', 0x82: 'Medium Soft', 0x84: 'Medium Hard', 0x8000: 'Film Simulation' }), 0x1002: _withMap('WhiteBalance', { 0x0: 'Auto', 0x100: 'Daylight', 0x200: 'Cloudy', 0x300: 'Daylight Fluorescent', 0x301: 'Day White Fluorescent', 0x302: 'White Fluorescent', 0x303: 'Warm White Fluorescent', 0x304: 'Living Room Warm White Fluorescent', 0x400: 'Incandescent', 0x500: 'Flash', 0x600: 'Underwater', 0xf00: 'Custom', 0xf01: 'Custom2', 0xf02: 'Custom3', 0xf03: 'Custom4', 0xf04: 'Custom5', 0xff0: 'Kelvin' }), 0x1003: _withMap('Saturation', { 0x0: 'Normal', 0x80: 'Medium High', 0x100: 'High', 0x180: 'Medium Low', 0x200: 'Low', 0x300: 'None (B&W)', 0x301: 'B&W Red Filter', 0x302: 'B&W Yellow Filter', 0x303: 'B&W Green Filter', 0x310: 'B&W Sepia', 0x400: 'Low 2', 0x8000: 'Film Simulation' }), 0x1004: _withMap('Contrast', { 0x0: 'Normal', 0x80: 'Medium High', 0x100: 'High', 0x180: 'Medium Low', 0x200: 'Low', 0x8000: 'Film Simulation' }), 0x1005: _make('ColorTemperature'), 0x1006: _withMap('Contrast', {0x0: 'Normal', 0x100: 'High', 0x300: 'Low'}), 0x100a: _make('WhiteBalanceFineTune'), 0x1010: _withMap( 'FlashMode', {0: 'Auto', 1: 'On', 2: 'Off', 3: 'Red Eye Reduction'}), 0x1011: _make('FlashStrength'), 0x1020: _withMap('Macro', {0: 'Off', 1: 'On'}), 0x1021: _withMap('FocusMode', {0: 'Auto', 1: 'Manual'}), 0x1022: _withMap('AFPointSet', {0: 'Yes', 1: 'No'}), 0x1023: _make('FocusPixel'), 0x1030: _withMap('SlowSync', {0: 'Off', 1: 'On'}), 0x1031: _withMap('PictureMode', { 0: 'Auto', 1: 'Portrait', 2: 'Landscape', 4: 'Sports', 5: 'Night', 6: 'Program AE', 256: 'Aperture Priority AE', 512: 'Shutter Priority AE', 768: 'Manual Exposure' }), 0x1032: _make('ExposureCount'), 0x1100: _withMap('MotorOrBracket', {0: 'Off', 1: 'On'}), 0x1210: _withMap('ColorMode', {0x0: 'Standard', 0x10: 'Chrome', 0x30: 'B & W'}), 0x1300: _withMap('BlurWarning', {0: 'Off', 1: 'On'}), 0x1301: _withMap('FocusWarning', {0: 'Off', 1: 'On'}), 0x1302: _withMap('ExposureWarning', {0: 'Off', 1: 'On'}), }; }