summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/exif
diff options
context:
space:
mode:
authorJay Wang <jaywang@codeaurora.org>2016-02-22 16:38:13 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2016-04-12 17:14:12 -0700
commitabfa9e762b0b6d298726ecd46c8d7fd59b69b957 (patch)
tree0afabcc7eef8d8bf53d2e9ef211a1c90af3b2c78 /src/com/android/camera/exif
parent4b33265c83966f70d4ef5cbe5c182d7dc670e5ee (diff)
downloadandroid_packages_apps_Snap-abfa9e762b0b6d298726ecd46c8d7fd59b69b957.tar.gz
android_packages_apps_Snap-abfa9e762b0b6d298726ecd46c8d7fd59b69b957.tar.bz2
android_packages_apps_Snap-abfa9e762b0b6d298726ecd46c8d7fd59b69b957.zip
SnapdragonCamera: Add support for outputting MPO format files
Add support for generating MPO formatted files from the application layer. CRs-Fixed: 993611 Change-Id: I9a78d33e1d80b7da748f9bc75446f49172342078
Diffstat (limited to 'src/com/android/camera/exif')
-rw-r--r--src/com/android/camera/exif/ExifTag.java20
-rw-r--r--src/com/android/camera/exif/JpegHeader.java3
-rw-r--r--src/com/android/camera/exif/OrderedDataOutputStream.java2
3 files changed, 13 insertions, 12 deletions
diff --git a/src/com/android/camera/exif/ExifTag.java b/src/com/android/camera/exif/ExifTag.java
index 1d50316dd..fcf0f5c29 100644
--- a/src/com/android/camera/exif/ExifTag.java
+++ b/src/com/android/camera/exif/ExifTag.java
@@ -85,7 +85,7 @@ public class ExifTag {
TYPE_TO_SIZE_MAP[TYPE_RATIONAL] = 8;
}
- static final int SIZE_UNDEFINED = 0;
+ public static final int SIZE_UNDEFINED = 0;
// Exif TagId
private final short mTagId;
@@ -124,7 +124,7 @@ public class ExifTag {
}
// Use builtTag in ExifInterface instead of constructor.
- ExifTag(short tagId, short type, int componentCount, int ifd,
+ public ExifTag(short tagId, short type, int componentCount, int ifd,
boolean hasDefinedComponentCount) {
mTagId = tagId;
mDataType = type;
@@ -163,7 +163,7 @@ public class ExifTag {
return mIfd;
}
- protected void setIfd(int ifdId) {
+ public void setIfd(int ifdId) {
mIfd = ifdId;
}
@@ -785,7 +785,7 @@ public class ExifTag {
* @exception IllegalArgumentException if the data type is
* {@link #TYPE_RATIONAL} or {@link #TYPE_UNSIGNED_RATIONAL}.
*/
- protected long getValueAt(int index) {
+ public long getValueAt(int index) {
if (mValue instanceof long[]) {
return ((long[]) mValue)[index];
} else if (mValue instanceof byte[]) {
@@ -812,7 +812,7 @@ public class ExifTag {
/*
* Get the converted ascii byte. Used by ExifOutputStream.
*/
- protected byte[] getStringByte() {
+ public byte[] getStringByte() {
return (byte[]) mValue;
}
@@ -822,7 +822,7 @@ public class ExifTag {
* @exception IllegalArgumentException If the type is NOT
* {@link #TYPE_RATIONAL} or {@link #TYPE_UNSIGNED_RATIONAL}.
*/
- protected Rational getRational(int index) {
+ public Rational getRational(int index) {
if ((mDataType != TYPE_RATIONAL) && (mDataType != TYPE_UNSIGNED_RATIONAL)) {
throw new IllegalArgumentException("Cannot get RATIONAL value from "
+ convertTypeToString(mDataType));
@@ -833,7 +833,7 @@ public class ExifTag {
/**
* Equivalent to getBytes(buffer, 0, buffer.length).
*/
- protected void getBytes(byte[] buf) {
+ public void getBytes(byte[] buf) {
getBytes(buf, 0, buf.length);
}
@@ -847,7 +847,7 @@ public class ExifTag {
* @exception IllegalArgumentException If the type is NOT
* {@link #TYPE_UNDEFINED} or {@link #TYPE_UNSIGNED_BYTE}.
*/
- protected void getBytes(byte[] buf, int offset, int length) {
+ public void getBytes(byte[] buf, int offset, int length) {
if ((mDataType != TYPE_UNDEFINED) && (mDataType != TYPE_UNSIGNED_BYTE)) {
throw new IllegalArgumentException("Cannot get BYTE value from "
+ convertTypeToString(mDataType));
@@ -860,14 +860,14 @@ public class ExifTag {
* Gets the offset of this tag. This is only valid if this data size > 4 and
* contains an offset to the location of the actual value.
*/
- protected int getOffset() {
+ public int getOffset() {
return mOffset;
}
/**
* Sets the offset of this tag.
*/
- protected void setOffset(int offset) {
+ public void setOffset(int offset) {
mOffset = offset;
}
diff --git a/src/com/android/camera/exif/JpegHeader.java b/src/com/android/camera/exif/JpegHeader.java
index 383617af4..6fc46ca18 100644
--- a/src/com/android/camera/exif/JpegHeader.java
+++ b/src/com/android/camera/exif/JpegHeader.java
@@ -16,8 +16,9 @@
package com.android.camera.exif;
-class JpegHeader {
+public class JpegHeader {
public static final short SOI = (short) 0xFFD8;
+ public static final short APP2 = (short) 0xFFE2;
public static final short APP1 = (short) 0xFFE1;
public static final short APP0 = (short) 0xFFE0;
public static final short EOI = (short) 0xFFD9;
diff --git a/src/com/android/camera/exif/OrderedDataOutputStream.java b/src/com/android/camera/exif/OrderedDataOutputStream.java
index abc0a6eb1..3206d72b0 100644
--- a/src/com/android/camera/exif/OrderedDataOutputStream.java
+++ b/src/com/android/camera/exif/OrderedDataOutputStream.java
@@ -22,7 +22,7 @@ import java.io.OutputStream;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
-class OrderedDataOutputStream extends FilterOutputStream {
+public class OrderedDataOutputStream extends FilterOutputStream {
private final ByteBuffer mByteBuffer = ByteBuffer.allocate(4);
private int mSize = 0;