summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorRuben Brunk <rubenbrunk@google.com>2014-05-02 22:23:44 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-05-02 22:23:44 +0000
commit6c516d800d97b7f25a22574998cb055c9d7f7b16 (patch)
treea6b9e79950b0db6af168216b1e71aa63eb095eb3 /include
parent0a9aa4f5539482061dfe4dfa6128ef3696557818 (diff)
parent4764324d2704f1b08bb7407014bf203924ff2363 (diff)
downloadframeworks_av-6c516d800d97b7f25a22574998cb055c9d7f7b16.zip
frameworks_av-6c516d800d97b7f25a22574998cb055c9d7f7b16.tar.gz
frameworks_av-6c516d800d97b7f25a22574998cb055c9d7f7b16.tar.bz2
Merge "camera3: Update CameraMetadata vendor tag handling."
Diffstat (limited to 'include')
-rw-r--r--include/camera/VendorTagDescriptor.h23
1 files changed, 22 insertions, 1 deletions
diff --git a/include/camera/VendorTagDescriptor.h b/include/camera/VendorTagDescriptor.h
index ea21d31..1758acf 100644
--- a/include/camera/VendorTagDescriptor.h
+++ b/include/camera/VendorTagDescriptor.h
@@ -16,6 +16,7 @@
#ifndef VENDOR_TAG_DESCRIPTOR_H
+#include <utils/Vector.h>
#include <utils/KeyedVector.h>
#include <utils/String8.h>
#include <utils/RefBase.h>
@@ -67,6 +68,24 @@ class VendorTagDescriptor
/*out*/
Parcel* parcel) const;
+ /**
+ * Convenience method to get a vector containing all vendor tag
+ * sections, or an empty vector if none are defined.
+ */
+ SortedVector<String8> getAllSectionNames() const;
+
+ /**
+ * Lookup the tag id for a given tag name and section.
+ *
+ * Returns OK on success, or a negative error code.
+ */
+ status_t lookupTag(String8 name, String8 section, /*out*/uint32_t* tag) const;
+
+ /**
+ * Dump the currently configured vendor tags to a file descriptor.
+ */
+ void dump(int fd, int verbosity, int indentation) const;
+
// Static methods:
/**
@@ -109,9 +128,11 @@ class VendorTagDescriptor
static sp<VendorTagDescriptor> getGlobalVendorTagDescriptor();
protected:
VendorTagDescriptor();
+ KeyedVector<String8, KeyedVector<String8, uint32_t>*> mReverseMapping;
KeyedVector<uint32_t, String8> mTagToNameMap;
- KeyedVector<uint32_t, String8> mTagToSectionMap;
+ KeyedVector<uint32_t, uint32_t> mTagToSectionMap; // Value is offset in mSections
KeyedVector<uint32_t, int32_t> mTagToTypeMap;
+ SortedVector<String8> mSections;
// must be int32_t to be compatible with Parcel::writeInt32
int32_t mTagCount;
private: