resolve merge conflicts of 8e3e92b to nyc-mr1-dev

Change-Id: Ic67f0894e68ea5276eb9187a13cd24f105d55d68
diff --git a/include/gui/BufferQueueCore.h b/include/gui/BufferQueueCore.h
index 6c69d69..98add9e 100644
--- a/include/gui/BufferQueueCore.h
+++ b/include/gui/BufferQueueCore.h
@@ -325,6 +325,8 @@
 
     OccupancyTracker mOccupancyTracker;
 
+    const uint64_t mUniqueId;
+
 }; // class BufferQueueCore
 
 } // namespace android
diff --git a/include/gui/BufferQueueProducer.h b/include/gui/BufferQueueProducer.h
index a85bbb7..579ffb9 100644
--- a/include/gui/BufferQueueProducer.h
+++ b/include/gui/BufferQueueProducer.h
@@ -190,6 +190,9 @@
     virtual bool getFrameTimestamps(uint64_t frameNumber,
             FrameTimestamps* outTimestamps) const override;
 
+    // See IGraphicBufferProducer::getUniqueId
+    virtual status_t getUniqueId(uint64_t* outId) const override;
+
 private:
     // This is required by the IBinder::DeathRecipient interface
     virtual void binderDied(const wp<IBinder>& who);
diff --git a/include/gui/IGraphicBufferProducer.h b/include/gui/IGraphicBufferProducer.h
index 0c24606..47bb43a 100644
--- a/include/gui/IGraphicBufferProducer.h
+++ b/include/gui/IGraphicBufferProducer.h
@@ -578,6 +578,9 @@
     // If a fence has not yet signaled the timestamp returned will be 0;
     virtual bool getFrameTimestamps(uint64_t /*frameNumber*/,
             FrameTimestamps* /*outTimestamps*/) const { return false; }
+
+    // Returns a unique id for this BufferQueue
+    virtual status_t getUniqueId(uint64_t* outId) const = 0;
 };
 
 // ----------------------------------------------------------------------------
diff --git a/include/gui/Surface.h b/include/gui/Surface.h
index 7d9d901..af9dd50 100644
--- a/include/gui/Surface.h
+++ b/include/gui/Surface.h
@@ -140,6 +140,8 @@
             nsecs_t* outGlCompositionDoneTime, nsecs_t* outDisplayRetireTime,
             nsecs_t* outReleaseTime);
 
+    status_t getUniqueId(uint64_t* outId) const;
+
 protected:
     virtual ~Surface();