| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| package org.apache.commons.sanselan.formats.tiff.constants; |
| |
| public interface TiffDirectoryConstants |
| { |
| |
| public static final int DIRECTORY_TYPE_UNKNOWN = -1; |
| public static final int DIRECTORY_TYPE_ROOT = 0; |
| public static final int DIRECTORY_TYPE_SUB = 1; |
| public static final int DIRECTORY_TYPE_SUB0 = 1; |
| public static final int DIRECTORY_TYPE_SUB1 = 2; |
| public static final int DIRECTORY_TYPE_SUB2 = 3; |
| public static final int DIRECTORY_TYPE_THUMBNAIL = 2; |
| public static final int DIRECTORY_TYPE_EXIF = -2; |
| // public static final int DIRECTORY_TYPE_SUB = 5; |
| public static final int DIRECTORY_TYPE_GPS = -3; |
| public static final int DIRECTORY_TYPE_INTEROPERABILITY = -4; |
| public static final int DIRECTORY_TYPE_MAKER_NOTES = -5; |
| public static final int DIRECTORY_TYPE_DIR_0 = 0; |
| public static final int DIRECTORY_TYPE_DIR_1 = 1; |
| public static final int DIRECTORY_TYPE_DIR_2 = 2; |
| public static final int DIRECTORY_TYPE_DIR_3 = 3; |
| public static final int DIRECTORY_TYPE_DIR_4 = 4; |
| |
| public abstract static class ExifDirectoryType |
| { |
| public final int directoryType; |
| public final String name; |
| |
| public ExifDirectoryType(final int directoryType, final String name) |
| { |
| this.directoryType = directoryType; |
| this.name = name; |
| } |
| |
| public abstract boolean isImageDirectory(); |
| |
| public static class Image extends ExifDirectoryType |
| { |
| public Image(final int directoryType, final String name) |
| { |
| super(directoryType, name); |
| } |
| |
| public boolean isImageDirectory() |
| { |
| return true; |
| } |
| } |
| |
| public static class Special extends ExifDirectoryType |
| { |
| public Special(final int directoryType, final String name) |
| { |
| super(directoryType, name); |
| } |
| |
| public boolean isImageDirectory() |
| { |
| return false; |
| } |
| } |
| |
| } |
| |
| public static final ExifDirectoryType TIFF_DIRECTORY_IFD0 = new ExifDirectoryType.Image( |
| DIRECTORY_TYPE_DIR_0, "IFD0"); |
| public static final ExifDirectoryType EXIF_DIRECTORY_IFD0 = TIFF_DIRECTORY_IFD0; |
| public static final ExifDirectoryType TIFF_DIRECTORY_ROOT = TIFF_DIRECTORY_IFD0; |
| |
| public static final ExifDirectoryType TIFF_DIRECTORY_IFD1 = new ExifDirectoryType.Image( |
| DIRECTORY_TYPE_DIR_1, "IFD1"); |
| public static final ExifDirectoryType EXIF_DIRECTORY_IFD1 = TIFF_DIRECTORY_IFD1; |
| |
| public static final ExifDirectoryType TIFF_DIRECTORY_IFD2 = new ExifDirectoryType.Image( |
| DIRECTORY_TYPE_DIR_2, "IFD2"); |
| public static final ExifDirectoryType EXIF_DIRECTORY_IFD2 = TIFF_DIRECTORY_IFD2; |
| |
| public static final ExifDirectoryType TIFF_DIRECTORY_IFD3 = new ExifDirectoryType.Image( |
| DIRECTORY_TYPE_DIR_3, "IFD3"); |
| public static final ExifDirectoryType EXIF_DIRECTORY_IFD3 = TIFF_DIRECTORY_IFD3; |
| |
| public static final ExifDirectoryType EXIF_DIRECTORY_SUB_IFD = TIFF_DIRECTORY_IFD1; |
| public static final ExifDirectoryType EXIF_DIRECTORY_SUB_IFD1 = TIFF_DIRECTORY_IFD2; |
| public static final ExifDirectoryType EXIF_DIRECTORY_SUB_IFD2 = TIFF_DIRECTORY_IFD3; |
| |
| public static final ExifDirectoryType EXIF_DIRECTORY_INTEROP_IFD = new ExifDirectoryType.Special( |
| DIRECTORY_TYPE_INTEROPERABILITY, "Interop IFD"); |
| public static final ExifDirectoryType EXIF_DIRECTORY_MAKER_NOTES = new ExifDirectoryType.Special( |
| DIRECTORY_TYPE_MAKER_NOTES, "Maker Notes"); |
| public static final ExifDirectoryType EXIF_DIRECTORY_EXIF_IFD = new ExifDirectoryType.Special( |
| DIRECTORY_TYPE_EXIF, "Exif IFD"); |
| public static final ExifDirectoryType EXIF_DIRECTORY_GPS = new ExifDirectoryType.Special( |
| DIRECTORY_TYPE_GPS, "GPS IFD"); |
| |
| public static final ExifDirectoryType EXIF_DIRECTORY_UNKNOWN = null; |
| |
| public static final ExifDirectoryType EXIF_DIRECTORIES[] = { |
| TIFF_DIRECTORY_ROOT, EXIF_DIRECTORY_EXIF_IFD, TIFF_DIRECTORY_IFD0, |
| EXIF_DIRECTORY_IFD0, TIFF_DIRECTORY_IFD1, EXIF_DIRECTORY_IFD1, |
| TIFF_DIRECTORY_IFD2, EXIF_DIRECTORY_IFD2, |
| EXIF_DIRECTORY_INTEROP_IFD, EXIF_DIRECTORY_MAKER_NOTES, |
| EXIF_DIRECTORY_SUB_IFD, EXIF_DIRECTORY_SUB_IFD1, |
| EXIF_DIRECTORY_SUB_IFD2, |
| //EXIF_DIRECTORY_UNKNOWN, |
| EXIF_DIRECTORY_GPS, |
| }; |
| |
| } |