Class EXIF

  • All Implemented Interfaces:
    java.io.Serializable
    Direct Known Subclasses:
    TIFF

    public class EXIF
    extends it.tidalwave.image.metadata.EXIFDirectoryGenerated
    Author:
    Fabrizio Giudici
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class it.tidalwave.image.metadata.EXIFDirectoryGenerated

        it.tidalwave.image.metadata.EXIFDirectoryGenerated.CalibrationIlluminant1, it.tidalwave.image.metadata.EXIFDirectoryGenerated.CalibrationIlluminant2, it.tidalwave.image.metadata.EXIFDirectoryGenerated.ColorSpace, it.tidalwave.image.metadata.EXIFDirectoryGenerated.Compression, it.tidalwave.image.metadata.EXIFDirectoryGenerated.Contrast, it.tidalwave.image.metadata.EXIFDirectoryGenerated.CustomRendered, it.tidalwave.image.metadata.EXIFDirectoryGenerated.ExposureMode, it.tidalwave.image.metadata.EXIFDirectoryGenerated.ExposureProgram, it.tidalwave.image.metadata.EXIFDirectoryGenerated.FileSource, it.tidalwave.image.metadata.EXIFDirectoryGenerated.GainControl, it.tidalwave.image.metadata.EXIFDirectoryGenerated.LightSource, it.tidalwave.image.metadata.EXIFDirectoryGenerated.MeteringMode, it.tidalwave.image.metadata.EXIFDirectoryGenerated.NewSubFileType, it.tidalwave.image.metadata.EXIFDirectoryGenerated.Orientation, it.tidalwave.image.metadata.EXIFDirectoryGenerated.PhotometricInterpretation, it.tidalwave.image.metadata.EXIFDirectoryGenerated.PlanarConfiguration, it.tidalwave.image.metadata.EXIFDirectoryGenerated.PreviewColorSpace, it.tidalwave.image.metadata.EXIFDirectoryGenerated.ProfileEmbedPolicy, it.tidalwave.image.metadata.EXIFDirectoryGenerated.ResolutionUnit, it.tidalwave.image.metadata.EXIFDirectoryGenerated.Saturation, it.tidalwave.image.metadata.EXIFDirectoryGenerated.SceneType, it.tidalwave.image.metadata.EXIFDirectoryGenerated.SensingMethod, it.tidalwave.image.metadata.EXIFDirectoryGenerated.SensingMethod2, it.tidalwave.image.metadata.EXIFDirectoryGenerated.Sharpness, it.tidalwave.image.metadata.EXIFDirectoryGenerated.SubFileType, it.tidalwave.image.metadata.EXIFDirectoryGenerated.WhiteBalance
    • Field Summary

      • Fields inherited from class it.tidalwave.image.metadata.EXIFDirectoryGenerated

        ACTIVE_AREA, ANALOG_BALANCE, ANTI_ALIAS_STRENGTH, APERTURE_VALUE, ARTIST, AS_SHOT_ICC_PROFILE, AS_SHOT_NEUTRAL, AS_SHOT_PRE_PROFILE_MATRIX, AS_SHOT_PROFILE_NAME, AS_SHOT_WHITE_XY, BACKGROUND_COLOR_INDICATOR, BACKGROUND_COLOR_VALUE, BAD_FAX_LINES, BASELINE_EXPOSURE, BASELINE_NOISE, BASELINE_SHARPNESS, BATTERY_LEVEL, BAYER_GREEN_SPLIT, BEST_QUALITY_SCALE, BITS_PER_EXTENDED_RUN_LENGTH, BITS_PER_RUN_LENGTH, BITS_PER_SAMPLE, BLACK_LEVEL, BLACK_LEVEL_DELTA_H, BLACK_LEVEL_DELTA_V, BLACK_LEVEL_REPEAT_DIM, BODYSERIALNUMBER, BRIGHTNESS_VALUE, C_ACTIVE_AREA, C_ANALOG_BALANCE, C_ANTI_ALIAS_STRENGTH, C_APERTURE_VALUE, C_ARTIST, C_AS_SHOT_ICC_PROFILE, C_AS_SHOT_NEUTRAL, C_AS_SHOT_PRE_PROFILE_MATRIX, C_AS_SHOT_PROFILE_NAME, C_AS_SHOT_WHITE_XY, C_BACKGROUND_COLOR_INDICATOR, C_BACKGROUND_COLOR_VALUE, C_BAD_FAX_LINES, C_BASELINE_EXPOSURE, C_BASELINE_NOISE, C_BASELINE_SHARPNESS, C_BATTERY_LEVEL, C_BAYER_GREEN_SPLIT, C_BEST_QUALITY_SCALE, C_BITS_PER_EXTENDED_RUN_LENGTH, C_BITS_PER_RUN_LENGTH, C_BITS_PER_SAMPLE, C_BLACK_LEVEL, C_BLACK_LEVEL_DELTA_H, C_BLACK_LEVEL_DELTA_V, C_BLACK_LEVEL_REPEAT_DIM, C_BODYSERIALNUMBER, C_BRIGHTNESS_VALUE, C_CALIBRATION_ILLUMINANT_1, C_CALIBRATION_ILLUMINANT_2, C_CAMERA_CALIBRATION_1, C_CAMERA_CALIBRATION_2, C_CAMERA_CALIBRATION_SIGNATURE, C_CAMERA_SERIAL_NUMBER, C_CELL_LENGTH, C_CELL_WIDTH, C_CFA_LAYOUT, C_CFA_PATTERN, C_CFA_PLANE_COLOR, C_CFA_REPEAT_PATTERN_DIM, C_CHROMA_BLUR_RADIUS, C_CLEAN_FAX_DATA, C_CLIP_PATH, C_COLOR_CHARACTERIZATION, C_COLOR_MATRIX_1, C_COLOR_MATRIX_2, C_COLOR_RESPONSE_UNIT, C_COLOR_SEQUENCE, C_COLOR_SPACE, C_COLOR_TABLE, C_COLORIMETRIC_REFERENCE, C_COMPONENT_CONFIGURATION, C_COMPRESSED_BITS_PER_PIXEL, C_COMPRESSION, C_CONSECUTIVE_BAD_FAX_LINES, C_CONTRAST, C_COPYRIGHT, C_CURRENT_ICC_PROFILE, C_CURRENT_PRE_PROFILE_MATRIX, C_CUSTOM_RENDERED, C_DATETIME, C_DATETIME_DIGITIZED, C_DATETIME_ORIGINAL, C_DEFAULT_CROP_ORIGIN, C_DEFAULT_CROP_SIZE, C_DEFAULT_SCALE, C_DEVICE_SETTING_DESCRIPTION, C_DIGITAL_ZOOM_RATIO, C_DNG_BACKWARD_VERSION, C_DNG_PRIVATE_DATA, C_DNG_VERSION, C_DOCUMENT_NAME, C_DOT_RANGE, C_EXIF_CFA_PATTERN, C_EXIF_IFD_POINTER, C_EXIF_VERSION, C_EXPOSURE_BIAS_VALUE, C_EXPOSURE_INDEX, C_EXPOSURE_INDEX_2, C_EXPOSURE_MODE, C_EXPOSURE_PROGRAM, C_EXPOSURE_TIME, C_EXTRA_CAMERA_PROFILES, C_EXTRA_SAMPLES, C_F_NUMBER, C_FILE_SOURCE, C_FILL_ORDER, C_FLASH, C_FLASH_ENERGY, C_FLASH_ENERGY2, C_FLASHPIX_VERSION, C_FOCAL_LENGTH, C_FOCAL_LENGTH_35MM_FILM, C_FOCAL_PLANE_RESOLUTIONUNIT, C_FOCAL_PLANE_X_RESOLUTION, C_FOCAL_PLANE_Y_RESOLUTION, C_FOCAL_PLANERESOLUTIONUNIT2, C_FOCAL_PLANEXRESOLUTION2, C_FOCAL_PLANEYRESOLUTION2, C_FORWARD_MATRIX_1, C_FORWARD_MATRIX_2, C_FREE_BYTE_COUNTS, C_FREE_OFFSETS, C_GAIN_CONTROL, C_GEO_ASCII_PARAMS_TAG, C_GEO_DOUBLE_PARAMS_TAG, C_GEO_KEY_DIRECTORYTAG, C_GPS_INFO_IFD_POINTER, C_GRAY_RESPONSE_CURVE, C_GRAY_RESPONSE_UNIT, C_GROUP_3_OPTIONS, C_GROUP_4_OPTIONS, C_HC_USAGE, C_HOST_COMPUTER, C_IMAGE_COLOR_INDICATOR, C_IMAGE_COLOR_VALUE, C_IMAGE_DESCRIPTION, C_IMAGE_HISTORY, C_IMAGE_ID, C_IMAGE_LENGTH, C_IMAGE_NUMBER, C_IMAGE_SOURCE_DATA, C_IMAGE_UNIQUE_ID, C_IMAGE_WIDTH, C_INDEXED, C_INK_NAMES, C_INK_SET, C_INTER_COLOUR_PROFILE, C_INTERGRAPH_MATRIX_TAG, C_INTERLACE, C_INTEROPERABILITY_IFD, C_IPTC_NAA, C_ISO_SPEED_RATINGS, C_IT8_HEADER, C_JPEG_AC_TABLES, C_JPEG_DC_TABLES, C_JPEG_INTERCHANGE_FORMAT, C_JPEG_INTERCHANGE_FORMAT_LENGTH, C_JPEG_LOSSLESS_PREDICTORS, C_JPEG_POINT_TRANSFORMS, C_JPEG_PROC, C_JPEG_Q_TABLES, C_JPEG_RESTART_INTERVAL, C_JPEG_TABLES, C_LENS_INFO, C_LENSMAKE, C_LENSMODEL, C_LENSSPECIFICATION, C_LIGHT_SOURCE, C_LINEAR_RESPONSE_LIMIT, C_LINEARIZATION_TABLE, C_LOCALIZED_CAMERA_MODEL, C_MAKE, C_MAKER_NOTE, C_MAKER_NOTE_SAFETY, C_MASKED_AREAS, C_MAX_APERTURE_VALUE, C_MAX_SAMPLE_VALUE, C_METERING_MODE, C_MIN_SAMPLE_VALUE, C_MODEL, C_MODEL_PIXEL_SCALE_TAG, C_MODEL_TIEPOINT_TAG, C_MODEL_TRANSFORMATION_TAG, C_NEW_SUBFILE_TYPE, C_NOISE, C_NOISE_RESOLUTION_APPLIED, C_NUMBER_OF_INKS, C_OECF, C_OPI_PROXY, C_ORIENTATION, C_ORIGINAL_RAW_FILE_DATA, C_ORIGINAL_RAW_FILE_DIGEST, C_ORIGINAL_RAW_FILE_NAME, C_PAGE_NAME, C_PAGE_NUMBER, C_PHOTOMETRIC_INTERPRETATION, C_PHOTOSHOP_ANNOTATIONS, C_PHOTOSHOP_IMAGE_RESOURCES, C_PIXEL_INTENSITY_RANGE, C_PIXEL_X_DIMENSION, C_PIXEL_Y_DIMENSION, C_PLANAR_CONFIGURATION, C_PREDICTOR, C_PREVIEW_APPLICATION_NAME, C_PREVIEW_APPLICATION_VERSION, C_PREVIEW_COLOR_SPACE, C_PREVIEW_DATE_TIME, C_PREVIEW_IFD, C_PREVIEW_SETTINGS_NAME, C_PRIMARY_CHROMATICITIES, C_PROFILE_CALIBRATION_SIGNATURE, C_PROFILE_COPYRIGHT, C_PROFILE_EMBED_POLICY, C_PROFILE_HUE_SAT_MAP_DATA_1, C_PROFILE_HUE_SAT_MAP_DATA_2, C_PROFILE_HUE_SAT_MAP_DIMS, C_PROFILE_LOOK_TABLE_DATA, C_PROFILE_LOOK_TABLE_DIMS, C_PROFILE_NAME, C_PROFILE_TONE_CURVE, C_RASTER_PADDING, C_RAW_DATA_UNIQUE_ID, C_RAW_IMAGE_DIGEST, C_RECOMMENDEDEXPOSUREINDEX, C_REDUCTION_MATRIX_1, C_REDUCTION_MATRIX_2, C_REFERENCE_BLACK_WHITE, C_RELATED_SOUND_FILE, C_RESOLUTION_UNIT, C_ROW_INTERLEAVE_FACTOR, C_ROWS_PER_STRIP, C_SAMPLE_FORMAT, C_SAMPLES_PER_PIXEL, C_SATURATION, C_SCENE_CAPTURE_TYPE, C_SCENE_TYPE, C_SECURITY_CLASSIFICATION, C_SELF_TIMER_MODE, C_SENSING_METHOD, C_SENSING_METHOD_2, C_SHADOW_SCALE, C_SHARPNESS, C_SHUTTER_SPEEDVALUE, C_SITE, C_SOFTWARE, C_SPATIAL_FREQUENCY_RESPONSE, C_SPATIAL_FREQUENCYRESPONSE2, C_SPECTRAL_SENSITIVITY, C_STRIP_BYTE_COUNTS, C_STRIP_OFFSETS, C_SUB_FILETYPE, C_SUB_IFDS, C_SUB_TILE_BLOCK_SIZE, C_SUBJECT_AREA, C_SUBJECT_DISTANCE, C_SUBJECT_DISTANCE_RANGE, C_SUBJECT_LOCATION, C_SUBSEC_TIME, C_SUBSEC_TIME_DIGITIZED, C_SUBSEC_TIME_ORIGINAL, C_TARGET_PRINTER, C_THRESHOLDING, C_THUMBNAIL, C_TIFF_EP_STANDARD_ID, C_TILE_BYTE_COUNTS, C_TILE_LENGTH, C_TILE_OFFSETS, C_TILE_WIDTH, C_TIME_ZONE_OFFSET, C_TRANSFER_FUNCTION, C_TRANSFER_RANGE, C_TRANSPARENCY_INDICATOR, C_UNIQUE_CAMERA_MODEL, C_USER_COMMENT, C_WANG_ANNOTATION, C_WHITE_BALANCE, C_WHITE_LEVEL, C_WHITE_POINT, C_X_CLIP_PATH_UNITS, C_X_POSITION, C_X_RESOLUTION, C_XMP, C_Y_CLIP_PATH_UNITS, C_Y_POSITION, C_Y_RESOLUTION, C_YCBCR_COEFFICIENTS, C_YCBCR_POSITIONING, C_YCBCR_SUBSAMPLING, CALIBRATION_ILLUMINANT_1, CALIBRATION_ILLUMINANT_2, CAMERA_CALIBRATION_1, CAMERA_CALIBRATION_2, CAMERA_CALIBRATION_SIGNATURE, CAMERA_SERIAL_NUMBER, CELL_LENGTH, CELL_WIDTH, CFA_LAYOUT, CFA_PATTERN, CFA_PLANE_COLOR, CFA_REPEAT_PATTERN_DIM, CHROMA_BLUR_RADIUS, CLEAN_FAX_DATA, CLIP_PATH, COLOR_CHARACTERIZATION, COLOR_MATRIX_1, COLOR_MATRIX_2, COLOR_RESPONSE_UNIT, COLOR_SEQUENCE, COLOR_SPACE, COLOR_TABLE, COLORIMETRIC_REFERENCE, COMPONENT_CONFIGURATION, COMPRESSED_BITS_PER_PIXEL, COMPRESSION, CONSECUTIVE_BAD_FAX_LINES, CONTRAST, COPYRIGHT, CURRENT_ICC_PROFILE, CURRENT_PRE_PROFILE_MATRIX, CUSTOM_RENDERED, DATETIME, DATETIME_DIGITIZED, DATETIME_ORIGINAL, DEFAULT_CROP_ORIGIN, DEFAULT_CROP_SIZE, DEFAULT_SCALE, DEVICE_SETTING_DESCRIPTION, DIGITAL_ZOOM_RATIO, DNG_BACKWARD_VERSION, DNG_PRIVATE_DATA, DNG_VERSION, DOCUMENT_NAME, DOT_RANGE, EXIF_CFA_PATTERN, EXIF_IFD_POINTER, EXIF_VERSION, EXPOSURE_BIAS_VALUE, EXPOSURE_INDEX, EXPOSURE_INDEX_2, EXPOSURE_MODE, EXPOSURE_PROGRAM, EXPOSURE_TIME, EXTRA_CAMERA_PROFILES, EXTRA_SAMPLES, F_NUMBER, FILE_SOURCE, FILL_ORDER, FLASH, FLASH_ENERGY, FLASH_ENERGY2, FLASHPIX_VERSION, FOCAL_LENGTH, FOCAL_LENGTH_35MM_FILM, FOCAL_PLANE_RESOLUTIONUNIT, FOCAL_PLANE_X_RESOLUTION, FOCAL_PLANE_Y_RESOLUTION, FOCAL_PLANERESOLUTIONUNIT2, FOCAL_PLANEXRESOLUTION2, FOCAL_PLANEYRESOLUTION2, FORWARD_MATRIX_1, FORWARD_MATRIX_2, FREE_BYTE_COUNTS, FREE_OFFSETS, GAIN_CONTROL, GEO_ASCII_PARAMS_TAG, GEO_DOUBLE_PARAMS_TAG, GEO_KEY_DIRECTORYTAG, GPS_INFO_IFD_POINTER, GRAY_RESPONSE_CURVE, GRAY_RESPONSE_UNIT, GROUP_3_OPTIONS, GROUP_4_OPTIONS, HC_USAGE, HOST_COMPUTER, IMAGE_COLOR_INDICATOR, IMAGE_COLOR_VALUE, IMAGE_DESCRIPTION, IMAGE_HISTORY, IMAGE_ID, IMAGE_LENGTH, IMAGE_NUMBER, IMAGE_SOURCE_DATA, IMAGE_UNIQUE_ID, IMAGE_WIDTH, INDEXED, INK_NAMES, INK_SET, INTER_COLOUR_PROFILE, INTERGRAPH_MATRIX_TAG, INTERLACE, INTEROPERABILITY_IFD, IPTC_NAA, ISO_SPEED_RATINGS, IT8_HEADER, JPEG_AC_TABLES, JPEG_DC_TABLES, JPEG_INTERCHANGE_FORMAT, JPEG_INTERCHANGE_FORMAT_LENGTH, JPEG_LOSSLESS_PREDICTORS, JPEG_POINT_TRANSFORMS, JPEG_PROC, JPEG_Q_TABLES, JPEG_RESTART_INTERVAL, JPEG_TABLES, LENS_INFO, LENSMAKE, LENSMODEL, LENSSPECIFICATION, LIGHT_SOURCE, LINEAR_RESPONSE_LIMIT, LINEARIZATION_TABLE, LOCALIZED_CAMERA_MODEL, MAKE, MAKER_NOTE, MAKER_NOTE_SAFETY, MASKED_AREAS, MAX_APERTURE_VALUE, MAX_SAMPLE_VALUE, METERING_MODE, MIN_SAMPLE_VALUE, MODEL, MODEL_PIXEL_SCALE_TAG, MODEL_TIEPOINT_TAG, MODEL_TRANSFORMATION_TAG, NEW_SUBFILE_TYPE, NOISE, NOISE_RESOLUTION_APPLIED, NUMBER_OF_INKS, OECF, OPI_PROXY, ORIENTATION, ORIGINAL_RAW_FILE_DATA, ORIGINAL_RAW_FILE_DIGEST, ORIGINAL_RAW_FILE_NAME, PAGE_NAME, PAGE_NUMBER, PHOTOMETRIC_INTERPRETATION, PHOTOSHOP_ANNOTATIONS, PHOTOSHOP_IMAGE_RESOURCES, PIXEL_INTENSITY_RANGE, PIXEL_X_DIMENSION, PIXEL_Y_DIMENSION, PLANAR_CONFIGURATION, PREDICTOR, PREVIEW_APPLICATION_NAME, PREVIEW_APPLICATION_VERSION, PREVIEW_COLOR_SPACE, PREVIEW_DATE_TIME, PREVIEW_IFD, PREVIEW_SETTINGS_NAME, PRIMARY_CHROMATICITIES, PROFILE_CALIBRATION_SIGNATURE, PROFILE_COPYRIGHT, PROFILE_EMBED_POLICY, PROFILE_HUE_SAT_MAP_DATA_1, PROFILE_HUE_SAT_MAP_DATA_2, PROFILE_HUE_SAT_MAP_DIMS, PROFILE_LOOK_TABLE_DATA, PROFILE_LOOK_TABLE_DIMS, PROFILE_NAME, PROFILE_TONE_CURVE, RASTER_PADDING, RAW_DATA_UNIQUE_ID, RAW_IMAGE_DIGEST, RECOMMENDEDEXPOSUREINDEX, REDUCTION_MATRIX_1, REDUCTION_MATRIX_2, REFERENCE_BLACK_WHITE, RELATED_SOUND_FILE, RESOLUTION_UNIT, ROW_INTERLEAVE_FACTOR, ROWS_PER_STRIP, SAMPLE_FORMAT, SAMPLES_PER_PIXEL, SATURATION, SCENE_CAPTURE_TYPE, SCENE_TYPE, SECURITY_CLASSIFICATION, SELF_TIMER_MODE, SENSING_METHOD, SENSING_METHOD_2, SHADOW_SCALE, SHARPNESS, SHUTTER_SPEEDVALUE, SITE, SOFTWARE, SPATIAL_FREQUENCY_RESPONSE, SPATIAL_FREQUENCYRESPONSE2, SPECTRAL_SENSITIVITY, STRIP_BYTE_COUNTS, STRIP_OFFSETS, SUB_FILETYPE, SUB_IFDS, SUB_TILE_BLOCK_SIZE, SUBJECT_AREA, SUBJECT_DISTANCE, SUBJECT_DISTANCE_RANGE, SUBJECT_LOCATION, SUBSEC_TIME, SUBSEC_TIME_DIGITIZED, SUBSEC_TIME_ORIGINAL, TARGET_PRINTER, THRESHOLDING, THUMBNAIL, TIFF_EP_STANDARD_ID, TILE_BYTE_COUNTS, TILE_LENGTH, TILE_OFFSETS, TILE_WIDTH, TIME_ZONE_OFFSET, TRANSFER_FUNCTION, TRANSFER_RANGE, TRANSPARENCY_INDICATOR, UNIQUE_CAMERA_MODEL, USER_COMMENT, WANG_ANNOTATION, WHITE_BALANCE, WHITE_LEVEL, WHITE_POINT, X_CLIP_PATH_UNITS, X_POSITION, X_RESOLUTION, XMP, Y_CLIP_PATH_UNITS, Y_POSITION, Y_RESOLUTION, YCBCR_COEFFICIENTS, YCBCR_POSITIONING, YCBCR_SUBSAMPLING
    • Constructor Summary

      Constructors 
      Constructor Description
      EXIF()  
      EXIF​(java.time.Instant latestModificationTime)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.Optional<int[]> getBitsPerSample()
      FIXME: this conversion could be generically be implemented in getObject().
      java.util.Optional<java.time.Instant> getDateTimeAsDate()  
      java.util.Optional<java.time.Instant> getDateTimeDigitizedAsDate()  
      java.util.Optional<java.time.Instant> getDateTimeOriginalAsDate()  
      java.util.Optional<it.tidalwave.image.metadata.EXIFDirectoryGenerated.FileSource> getFileSource()
      The specification says it's an UNDEFINED[1], so some implementations return an array of one byte instead of a single byte.
      java.util.Optional<java.awt.color.ICC_Profile> getICCProfile()  
      java.util.Optional<java.lang.String> getOriginalRawFileName()
      java.util.Optional<it.tidalwave.image.metadata.EXIFDirectoryGenerated.SceneType> getSceneType()
      The specification says it's an UNDEFINED[1], so some implementations return an array of one byte instead of a single byte.
      java.util.Optional<byte[]> getUserComment()
      java.util.Optional<java.lang.String> getUserCommentAsString()  
      void setDateTime​(java.lang.String dateTime)  
      void setDateTimeAsDate​(java.time.Instant date)  
      void setDateTimeDigitized​(java.lang.String dateTimeDigitized)  
      void setDateTimeDigitizedAsDate​(java.time.Instant date)  
      void setDateTimeOriginal​(java.lang.String dateTimeOriginal)  
      void setDateTimeOriginalAsDate​(java.time.Instant date)  
      void setUserCommentAsString​(java.lang.String string)  
      • Methods inherited from class it.tidalwave.image.metadata.EXIFDirectoryGenerated

        getActiveArea, getAnalogBalance, getAntiAliasStrength, getApertureValue, getArtist, getAsShotICCProfile, getAsShotNeutral, getAsShotPreProfileMatrix, getAsShotProfileName, getAsShotWhiteXY, getBackgroundColorIndicator, getBackgroundColorValue, getBadFaxLines, getBaselineExposure, getBaselineNoise, getBaselineSharpness, getBatteryLevel, getBayerGreenSplit, getBestQualityScale, getBitsPerExtendedRunLength, getBitsPerRunLength, getBlackLevel, getBlackLevelDeltaH, getBlackLevelDeltaV, getBlackLevelRepeatDim, getBodySerialNumber, getBrightnessValue, getCalibrationIlluminant1, getCalibrationIlluminant2, getCameraCalibration1, getCameraCalibration2, getCameraCalibrationSignature, getCameraSerialNumber, getCellLength, getCellWidth, getCFALayout, getCFAPattern, getCFAPlaneColor, getCFARepeatPatternDim, getChromaBlurRadius, getCleanFaxData, getClipPath, getColorCharacterization, getColorimetricReference, getColorMatrix1, getColorMatrix2, getColorResponseUnit, getColorSequence, getColorSpace, getColorTable, getComponentConfiguration, getCompressedBitsPerPixel, getCompression, getConsecutiveBadFaxLines, getContrast, getCopyright, getCurrentICCProfile, getCurrentPreProfileMatrix, getCustomRendered, getDateTime, getDateTimeDigitized, getDateTimeOriginal, getDefaultCropOrigin, getDefaultCropSize, getDefaultScale, getDeviceSettingDescription, getDigitalZoomRatio, getDNGBackwardVersion, getDNGPrivateData, getDNGVersion, getDocumentName, getDotRange, getEXIFCFAPattern, getExifIFDPointer, getEXIFVersion, getExposureBiasValue, getExposureIndex, getExposureIndex2, getExposureMode, getExposureProgram, getExposureTime, getExtraCameraProfiles, getExtraSamples, getFillOrder, getFlash, getFlashEnergy, getFlashEnergy2, getFlashPixVersion, getFNumber, getFocalLength, getFocalLength35mmFilm, getFocalPlaneResolutionUnit, getFocalPlaneResolutionUnit2, getFocalPlaneXResolution, getFocalPlaneXResolution2, getFocalPlaneYResolution, getFocalPlaneYResolution2, getForwardMatrix1, getForwardMatrix2, getFreeByteCounts, getFreeOffsets, getGainControl, getGeoAsciiParamsTag, getGeoDoubleParamsTag, getGeoKeyDirectoryTag, getGPSInfoIFDPointer, getGrayResponseCurve, getGrayResponseUnit, getGroup3Options, getGroup4Options, getHCUsage, getHostComputer, getImageColorIndicator, getImageColorValue, getImageDescription, getImageHistory, getImageID, getImageLength, getImageNumber, getImageSourceData, getImageUniqueID, getImageWidth, getIndexed, getInkNames, getInkSet, getInterColourProfile, getIntergraphMatrixTag, getInterlace, getInteroperabilityIFD, getIPTCNAA, getISOSpeedRatings, getIT8Header, getJPEGACTables, getJPEGDCTables, getJPEGInterchangeFormat, getJPEGInterchangeFormatLength, getJPEGLosslessPredictors, getJPEGPointTransforms, getJPEGProc, getJPEGQTables, getJPEGRestartInterval, getJPEGTables, getLensInfo, getLensMake, getLensModel, getLensSpecification, getLightSource, getLinearizationTable, getLinearResponseLimit, getLocalizedCameraModel, getMake, getMakerNote, getMakerNoteSafety, getMaskedAreas, getMaxApertureValue, getMaxSampleValue, getMeteringMode, getMinSampleValue, getModel, getModelPixelScaleTag, getModelTiepointTag, getModelTransformationTag, getNewSubFileType, getNoise, getNoiseResolutionApplied, getNumberOfInks, getOECF, getOPIProxy, getOrientation, getOriginalRawFileData, getOriginalRawFileDigest, getPageName, getPageNumber, getPhotometricInterpretation, getPhotoshopAnnotations, getPhotoshopImageResources, getPixelIntensityRange, getPixelXDimension, getPixelYDimension, getPlanarConfiguration, getPredictor, getPreviewApplicationName, getPreviewApplicationVersion, getPreviewColorSpace, getPreviewDateTime, getPreviewIFD, getPreviewSettingsName, getPrimaryChromaticities, getProfileCalibrationSignature, getProfileCopyright, getProfileEmbedPolicy, getProfileHueSatMapData1, getProfileHueSatMapData2, getProfileHueSatMapDims, getProfileLookTableData, getProfileLookTableDims, getProfileName, getProfileToneCurve, getRasterPadding, getRawDataUniqueID, getRawImageDigest, getRecommendedExposureIndex, getReductionMatrix1, getReductionMatrix2, getReferenceBlackWhite, getRelatedSoundFile, getResolutionUnit, getRowInterleaveFactor, getRowsPerStrip, getSampleFormat, getSamplesPerPixel, getSaturation, getSceneCaptureType, getSecurityClassification, getSelfTimerMode, getSensingMethod, getSensingMethod2, getShadowScale, getSharpness, getShutterSpeedValue, getSite, getSoftware, getSpatialFrequencyResponse, getSpatialFrequencyResponse2, getSpectralSensitivity, getStripByteCounts, getStripOffsets, getSubFileType, getSubIFDs, getSubjectArea, getSubjectDistance, getSubjectDistanceRange, getSubjectLocation, getSubsecTime, getSubsecTimeDigitized, getSubsecTimeOriginal, getSubTileBlockSize, getTargetPrinter, getThresholding, getThumbnail, getTIFF_EPStandardID, getTileByteCounts, getTileLength, getTileOffsets, getTileWidth, getTimeZoneOffset, getTransferFunction, getTransferRange, getTransparencyIndicator, getUniqueCameraModel, getWangAnnotation, getWhiteBalance, getWhiteLevel, getWhitePoint, getXClipPathUnits, getXMP, getXPosition, getXResolution, getYCbCrCoefficients, getYCbCrPositioning, getYCbCrSubsampling, getYClipPathUnits, getYPosition, getYResolution, setActiveArea, setActiveArea, setAnalogBalance, setAnalogBalance, setAntiAliasStrength, setAntiAliasStrength, setApertureValue, setApertureValue, setArtist, setArtist, setAsShotICCProfile, setAsShotICCProfile, setAsShotNeutral, setAsShotNeutral, setAsShotPreProfileMatrix, setAsShotPreProfileMatrix, setAsShotProfileName, setAsShotProfileName, setAsShotWhiteXY, setAsShotWhiteXY, setBackgroundColorIndicator, setBackgroundColorIndicator, setBackgroundColorValue, setBackgroundColorValue, setBadFaxLines, setBadFaxLines, setBaselineExposure, setBaselineExposure, setBaselineNoise, setBaselineNoise, setBaselineSharpness, setBaselineSharpness, setBatteryLevel, setBatteryLevel, setBayerGreenSplit, setBayerGreenSplit, setBestQualityScale, setBestQualityScale, setBitsPerExtendedRunLength, setBitsPerExtendedRunLength, setBitsPerRunLength, setBitsPerRunLength, setBitsPerSample, setBitsPerSample, setBlackLevel, setBlackLevel, setBlackLevelDeltaH, setBlackLevelDeltaH, setBlackLevelDeltaV, setBlackLevelDeltaV, setBlackLevelRepeatDim, setBlackLevelRepeatDim, setBodySerialNumber, setBodySerialNumber, setBrightnessValue, setBrightnessValue, setCalibrationIlluminant1, setCalibrationIlluminant1, setCalibrationIlluminant2, setCalibrationIlluminant2, setCameraCalibration1, setCameraCalibration1, setCameraCalibration2, setCameraCalibration2, setCameraCalibrationSignature, setCameraCalibrationSignature, setCameraSerialNumber, setCameraSerialNumber, setCellLength, setCellLength, setCellWidth, setCellWidth, setCFALayout, setCFALayout, setCFAPattern, setCFAPattern, setCFAPlaneColor, setCFAPlaneColor, setCFARepeatPatternDim, setCFARepeatPatternDim, setChromaBlurRadius, setChromaBlurRadius, setCleanFaxData, setCleanFaxData, setClipPath, setClipPath, setColorCharacterization, setColorCharacterization, setColorimetricReference, setColorimetricReference, setColorMatrix1, setColorMatrix1, setColorMatrix2, setColorMatrix2, setColorResponseUnit, setColorResponseUnit, setColorSequence, setColorSequence, setColorSpace, setColorSpace, setColorTable, setColorTable, setComponentConfiguration, setComponentConfiguration, setCompressedBitsPerPixel, setCompressedBitsPerPixel, setCompression, setCompression, setConsecutiveBadFaxLines, setConsecutiveBadFaxLines, setContrast, setContrast, setCopyright, setCopyright, setCurrentICCProfile, setCurrentICCProfile, setCurrentPreProfileMatrix, setCurrentPreProfileMatrix, setCustomRendered, setCustomRendered, setDateTime, setDateTimeDigitized, setDateTimeOriginal, setDefaultCropOrigin, setDefaultCropOrigin, setDefaultCropSize, setDefaultCropSize, setDefaultScale, setDefaultScale, setDeviceSettingDescription, setDeviceSettingDescription, setDigitalZoomRatio, setDigitalZoomRatio, setDNGBackwardVersion, setDNGBackwardVersion, setDNGPrivateData, setDNGPrivateData, setDNGVersion, setDNGVersion, setDocumentName, setDocumentName, setDotRange, setDotRange, setEXIFCFAPattern, setEXIFCFAPattern, setExifIFDPointer, setExifIFDPointer, setEXIFVersion, setEXIFVersion, setExposureBiasValue, setExposureBiasValue, setExposureIndex, setExposureIndex, setExposureIndex2, setExposureIndex2, setExposureMode, setExposureMode, setExposureProgram, setExposureProgram, setExposureTime, setExposureTime, setExtraCameraProfiles, setExtraCameraProfiles, setExtraSamples, setExtraSamples, setFileSource, setFileSource, setFillOrder, setFillOrder, setFlash, setFlash, setFlashEnergy, setFlashEnergy, setFlashEnergy2, setFlashEnergy2, setFlashPixVersion, setFlashPixVersion, setFNumber, setFNumber, setFocalLength, setFocalLength, setFocalLength35mmFilm, setFocalLength35mmFilm, setFocalPlaneResolutionUnit, setFocalPlaneResolutionUnit, setFocalPlaneResolutionUnit2, setFocalPlaneResolutionUnit2, setFocalPlaneXResolution, setFocalPlaneXResolution, setFocalPlaneXResolution2, setFocalPlaneXResolution2, setFocalPlaneYResolution, setFocalPlaneYResolution, setFocalPlaneYResolution2, setFocalPlaneYResolution2, setForwardMatrix1, setForwardMatrix1, setForwardMatrix2, setForwardMatrix2, setFreeByteCounts, setFreeByteCounts, setFreeOffsets, setFreeOffsets, setGainControl, setGainControl, setGeoAsciiParamsTag, setGeoAsciiParamsTag, setGeoDoubleParamsTag, setGeoDoubleParamsTag, setGeoKeyDirectoryTag, setGeoKeyDirectoryTag, setGPSInfoIFDPointer, setGPSInfoIFDPointer, setGrayResponseCurve, setGrayResponseCurve, setGrayResponseUnit, setGrayResponseUnit, setGroup3Options, setGroup3Options, setGroup4Options, setGroup4Options, setHCUsage, setHCUsage, setHostComputer, setHostComputer, setImageColorIndicator, setImageColorIndicator, setImageColorValue, setImageColorValue, setImageDescription, setImageDescription, setImageHistory, setImageHistory, setImageID, setImageID, setImageLength, setImageLength, setImageNumber, setImageNumber, setImageSourceData, setImageSourceData, setImageUniqueID, setImageUniqueID, setImageWidth, setImageWidth, setIndexed, setIndexed, setInkNames, setInkNames, setInkSet, setInkSet, setInterColourProfile, setInterColourProfile, setIntergraphMatrixTag, setIntergraphMatrixTag, setInterlace, setInterlace, setInteroperabilityIFD, setInteroperabilityIFD, setIPTCNAA, setIPTCNAA, setISOSpeedRatings, setISOSpeedRatings, setIT8Header, setIT8Header, setJPEGACTables, setJPEGACTables, setJPEGDCTables, setJPEGDCTables, setJPEGInterchangeFormat, setJPEGInterchangeFormat, setJPEGInterchangeFormatLength, setJPEGInterchangeFormatLength, setJPEGLosslessPredictors, setJPEGLosslessPredictors, setJPEGPointTransforms, setJPEGPointTransforms, setJPEGProc, setJPEGProc, setJPEGQTables, setJPEGQTables, setJPEGRestartInterval, setJPEGRestartInterval, setJPEGTables, setJPEGTables, setLensInfo, setLensInfo, setLensMake, setLensMake, setLensModel, setLensModel, setLensSpecification, setLensSpecification, setLightSource, setLightSource, setLinearizationTable, setLinearizationTable, setLinearResponseLimit, setLinearResponseLimit, setLocalizedCameraModel, setLocalizedCameraModel, setMake, setMake, setMakerNote, setMakerNote, setMakerNoteSafety, setMakerNoteSafety, setMaskedAreas, setMaskedAreas, setMaxApertureValue, setMaxApertureValue, setMaxSampleValue, setMaxSampleValue, setMeteringMode, setMeteringMode, setMinSampleValue, setMinSampleValue, setModel, setModel, setModelPixelScaleTag, setModelPixelScaleTag, setModelTiepointTag, setModelTiepointTag, setModelTransformationTag, setModelTransformationTag, setNewSubFileType, setNewSubFileType, setNoise, setNoise, setNoiseResolutionApplied, setNoiseResolutionApplied, setNumberOfInks, setNumberOfInks, setOECF, setOECF, setOPIProxy, setOPIProxy, setOrientation, setOrientation, setOriginalRawFileData, setOriginalRawFileData, setOriginalRawFileDigest, setOriginalRawFileDigest, setOriginalRawFileName, setOriginalRawFileName, setPageName, setPageName, setPageNumber, setPageNumber, setPhotometricInterpretation, setPhotometricInterpretation, setPhotoshopAnnotations, setPhotoshopAnnotations, setPhotoshopImageResources, setPhotoshopImageResources, setPixelIntensityRange, setPixelIntensityRange, setPixelXDimension, setPixelXDimension, setPixelYDimension, setPixelYDimension, setPlanarConfiguration, setPlanarConfiguration, setPredictor, setPredictor, setPreviewApplicationName, setPreviewApplicationName, setPreviewApplicationVersion, setPreviewApplicationVersion, setPreviewColorSpace, setPreviewColorSpace, setPreviewDateTime, setPreviewDateTime, setPreviewIFD, setPreviewIFD, setPreviewSettingsName, setPreviewSettingsName, setPrimaryChromaticities, setPrimaryChromaticities, setProfileCalibrationSignature, setProfileCalibrationSignature, setProfileCopyright, setProfileCopyright, setProfileEmbedPolicy, setProfileEmbedPolicy, setProfileHueSatMapData1, setProfileHueSatMapData1, setProfileHueSatMapData2, setProfileHueSatMapData2, setProfileHueSatMapDims, setProfileHueSatMapDims, setProfileLookTableData, setProfileLookTableData, setProfileLookTableDims, setProfileLookTableDims, setProfileName, setProfileName, setProfileToneCurve, setProfileToneCurve, setRasterPadding, setRasterPadding, setRawDataUniqueID, setRawDataUniqueID, setRawImageDigest, setRawImageDigest, setRecommendedExposureIndex, setRecommendedExposureIndex, setReductionMatrix1, setReductionMatrix1, setReductionMatrix2, setReductionMatrix2, setReferenceBlackWhite, setReferenceBlackWhite, setRelatedSoundFile, setRelatedSoundFile, setResolutionUnit, setResolutionUnit, setRowInterleaveFactor, setRowInterleaveFactor, setRowsPerStrip, setRowsPerStrip, setSampleFormat, setSampleFormat, setSamplesPerPixel, setSamplesPerPixel, setSaturation, setSaturation, setSceneCaptureType, setSceneCaptureType, setSceneType, setSceneType, setSecurityClassification, setSecurityClassification, setSelfTimerMode, setSelfTimerMode, setSensingMethod, setSensingMethod, setSensingMethod2, setSensingMethod2, setShadowScale, setShadowScale, setSharpness, setSharpness, setShutterSpeedValue, setShutterSpeedValue, setSite, setSite, setSoftware, setSoftware, setSpatialFrequencyResponse, setSpatialFrequencyResponse, setSpatialFrequencyResponse2, setSpatialFrequencyResponse2, setSpectralSensitivity, setSpectralSensitivity, setStripByteCounts, setStripByteCounts, setStripOffsets, setStripOffsets, setSubFileType, setSubFileType, setSubIFDs, setSubIFDs, setSubjectArea, setSubjectArea, setSubjectDistance, setSubjectDistance, setSubjectDistanceRange, setSubjectDistanceRange, setSubjectLocation, setSubjectLocation, setSubsecTime, setSubsecTime, setSubsecTimeDigitized, setSubsecTimeDigitized, setSubsecTimeOriginal, setSubsecTimeOriginal, setSubTileBlockSize, setSubTileBlockSize, setTargetPrinter, setTargetPrinter, setThresholding, setThresholding, setThumbnail, setThumbnail, setTIFF_EPStandardID, setTIFF_EPStandardID, setTileByteCounts, setTileByteCounts, setTileLength, setTileLength, setTileOffsets, setTileOffsets, setTileWidth, setTileWidth, setTimeZoneOffset, setTimeZoneOffset, setTransferFunction, setTransferFunction, setTransferRange, setTransferRange, setTransparencyIndicator, setTransparencyIndicator, setUniqueCameraModel, setUniqueCameraModel, setUserComment, setUserComment, setWangAnnotation, setWangAnnotation, setWhiteBalance, setWhiteBalance, setWhiteLevel, setWhiteLevel, setWhitePoint, setWhitePoint, setXClipPathUnits, setXClipPathUnits, setXMP, setXMP, setXPosition, setXPosition, setXResolution, setXResolution, setYCbCrCoefficients, setYCbCrCoefficients, setYCbCrPositioning, setYCbCrPositioning, setYCbCrSubsampling, setYCbCrSubsampling, setYClipPathUnits, setYClipPathUnits, setYPosition, setYPosition, setYResolution, setYResolution
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • EXIF

        public EXIF()
      • EXIF

        public EXIF​(java.time.Instant latestModificationTime)
    • Method Detail

      • getBitsPerSample

        @Nonnull
        public java.util.Optional<int[]> getBitsPerSample()
        FIXME: this conversion could be generically be implemented in getObject().
        Overrides:
        getBitsPerSample in class it.tidalwave.image.metadata.EXIFDirectoryGenerated
      • getFileSource

        @Nonnull
        public java.util.Optional<it.tidalwave.image.metadata.EXIFDirectoryGenerated.FileSource> getFileSource()
        The specification says it's an UNDEFINED[1], so some implementations return an array of one byte instead of a single byte. This would cause a ClassCastException in the generated code.
        Overrides:
        getFileSource in class it.tidalwave.image.metadata.EXIFDirectoryGenerated
      • getSceneType

        @Nonnull
        public java.util.Optional<it.tidalwave.image.metadata.EXIFDirectoryGenerated.SceneType> getSceneType()
        The specification says it's an UNDEFINED[1], so some implementations return an array of one byte instead of a single byte. This would cause a ClassCastException in the generated code.
        Overrides:
        getSceneType in class it.tidalwave.image.metadata.EXIFDirectoryGenerated
      • getUserComment

        @Nonnull
        public java.util.Optional<byte[]> getUserComment()
        Overrides:
        getUserComment in class it.tidalwave.image.metadata.EXIFDirectoryGenerated
      • getUserCommentAsString

        @Nonnull
        public java.util.Optional<java.lang.String> getUserCommentAsString()
      • setUserCommentAsString

        public void setUserCommentAsString​(@Nonnull
                                           java.lang.String string)
      • getOriginalRawFileName

        @Nonnull
        public java.util.Optional<java.lang.String> getOriginalRawFileName()
        Overrides:
        getOriginalRawFileName in class it.tidalwave.image.metadata.EXIFDirectoryGenerated
      • getICCProfile

        @Nonnull
        public java.util.Optional<java.awt.color.ICC_Profile> getICCProfile()
        Returns:
      • getDateTimeAsDate

        @Nonnull
        public java.util.Optional<java.time.Instant> getDateTimeAsDate()
        Returns:
      • setDateTimeAsDate

        public void setDateTimeAsDate​(@Nonnull
                                      java.time.Instant date)
      • getDateTimeOriginalAsDate

        @Nonnull
        public java.util.Optional<java.time.Instant> getDateTimeOriginalAsDate()
        Returns:
      • setDateTimeOriginalAsDate

        public void setDateTimeOriginalAsDate​(@Nonnull
                                              java.time.Instant date)
      • getDateTimeDigitizedAsDate

        @Nonnull
        public java.util.Optional<java.time.Instant> getDateTimeDigitizedAsDate()
        Returns:
      • setDateTimeDigitizedAsDate

        public void setDateTimeDigitizedAsDate​(@Nonnull
                                               java.time.Instant date)
      • setDateTime

        public void setDateTime​(@Nonnull
                                java.lang.String dateTime)
        Overrides:
        setDateTime in class it.tidalwave.image.metadata.EXIFDirectoryGenerated
      • setDateTimeDigitized

        public void setDateTimeDigitized​(@Nonnull
                                         java.lang.String dateTimeDigitized)
        Overrides:
        setDateTimeDigitized in class it.tidalwave.image.metadata.EXIFDirectoryGenerated
      • setDateTimeOriginal

        public void setDateTimeOriginal​(@Nonnull
                                        java.lang.String dateTimeOriginal)
        Overrides:
        setDateTimeOriginal in class it.tidalwave.image.metadata.EXIFDirectoryGenerated