Merge "Refactor ConsumerBase and it's derived classes." into mnc-dev

This commit is contained in:
Michael Lentine 2015-05-18 21:29:39 +00:00 committed by Android (Google) Code Review
commit 699a32bcdf
6 changed files with 25 additions and 67 deletions

View File

@ -86,21 +86,6 @@ class BufferItemConsumer: public ConsumerBase
status_t releaseBuffer(const BufferItem &item, status_t releaseBuffer(const BufferItem &item,
const sp<Fence>& releaseFence = Fence::NO_FENCE); const sp<Fence>& releaseFence = Fence::NO_FENCE);
// setDefaultBufferSize is used to set the size of buffers returned by
// requestBuffers when a with and height of zero is requested.
status_t setDefaultBufferSize(uint32_t w, uint32_t h);
// setDefaultBufferFormat allows the BufferQueue to create
// GraphicBuffers of a defaultFormat if no format is specified
// in dequeueBuffer
status_t setDefaultBufferFormat(PixelFormat defaultFormat);
// setDefaultBufferDataSpace allows the BufferQueue to create
// GraphicBuffers of a defaultDataSpace if no data space is specified
// in queueBuffer.
// The initial default is HAL_DATASPACE_UNKNOWN
status_t setDefaultBufferDataSpace(android_dataspace defaultDataSpace);
}; };
} // namespace android } // namespace android

View File

@ -76,6 +76,15 @@ public:
// See IGraphicBufferConsumer::detachBuffer // See IGraphicBufferConsumer::detachBuffer
status_t detachBuffer(int slot); status_t detachBuffer(int slot);
// See IGraphicBufferConsumer::setDefaultBufferSize
status_t setDefaultBufferSize(uint32_t width, uint32_t height);
// See IGraphicBufferConsumer::setDefaultBufferFormat
status_t setDefaultBufferFormat(PixelFormat defaultFormat);
// See IGraphicBufferConsumer::setDefaultBufferDataSpace
status_t setDefaultBufferDataSpace(android_dataspace defaultDataSpace);
private: private:
ConsumerBase(const ConsumerBase&); ConsumerBase(const ConsumerBase&);
void operator=(const ConsumerBase&); void operator=(const ConsumerBase&);

View File

@ -80,23 +80,6 @@ class CpuConsumer : public ConsumerBase
// log messages. // log messages.
void setName(const String8& name); void setName(const String8& name);
// setDefaultBufferSize is used to set the size of buffers returned by
// requestBuffers when a width and height of zero is requested.
// A call to setDefaultBufferSize() may trigger requestBuffers() to
// be called from the client. Default size is 1x1.
status_t setDefaultBufferSize(uint32_t width, uint32_t height);
// setDefaultBufferFormat allows CpuConsumer's BufferQueue to create buffers
// of a defaultFormat if no format is specified by producer.
// The initial default is PIXEL_FORMAT_RGBA_8888.
status_t setDefaultBufferFormat(PixelFormat defaultFormat);
// setDefaultBufferDataSpace allows the BufferQueue to create
// GraphicBuffers of a defaultDataSpace if no data space is specified
// in queueBuffer.
// The initial default is HAL_DATASPACE_UNKNOWN
status_t setDefaultBufferDataSpace(android_dataspace defaultDataSpace);
// Gets the next graphics buffer from the producer and locks it for CPU use, // Gets the next graphics buffer from the producer and locks it for CPU use,
// filling out the passed-in locked buffer structure with the native pointer // filling out the passed-in locked buffer structure with the native pointer
// and metadata. Returns BAD_VALUE if no new buffer is available, and // and metadata. Returns BAD_VALUE if no new buffer is available, and

View File

@ -100,20 +100,4 @@ status_t BufferItemConsumer::releaseBuffer(const BufferItem &item,
return err; return err;
} }
status_t BufferItemConsumer::setDefaultBufferSize(uint32_t w, uint32_t h) {
Mutex::Autolock _l(mMutex);
return mConsumer->setDefaultBufferSize(w, h);
}
status_t BufferItemConsumer::setDefaultBufferFormat(PixelFormat defaultFormat) {
Mutex::Autolock _l(mMutex);
return mConsumer->setDefaultBufferFormat(defaultFormat);
}
status_t BufferItemConsumer::setDefaultBufferDataSpace(
android_dataspace defaultDataSpace) {
Mutex::Autolock _l(mMutex);
return mConsumer->setDefaultBufferDataSpace(defaultDataSpace);
}
} // namespace android } // namespace android

View File

@ -198,6 +198,22 @@ status_t ConsumerBase::detachBuffer(int slot) {
return result; return result;
} }
status_t ConsumerBase::setDefaultBufferSize(uint32_t width, uint32_t height) {
Mutex::Autolock _l(mMutex);
return mConsumer->setDefaultBufferSize(width, height);
}
status_t ConsumerBase::setDefaultBufferFormat(PixelFormat defaultFormat) {
Mutex::Autolock _l(mMutex);
return mConsumer->setDefaultBufferFormat(defaultFormat);
}
status_t ConsumerBase::setDefaultBufferDataSpace(
android_dataspace defaultDataSpace) {
Mutex::Autolock _l(mMutex);
return mConsumer->setDefaultBufferDataSpace(defaultDataSpace);
}
void ConsumerBase::dump(String8& result) const { void ConsumerBase::dump(String8& result) const {
dump(result, ""); dump(result, "");
} }

View File

@ -56,25 +56,6 @@ void CpuConsumer::setName(const String8& name) {
mConsumer->setConsumerName(name); mConsumer->setConsumerName(name);
} }
status_t CpuConsumer::setDefaultBufferSize(uint32_t width, uint32_t height)
{
Mutex::Autolock _l(mMutex);
return mConsumer->setDefaultBufferSize(width, height);
}
status_t CpuConsumer::setDefaultBufferFormat(PixelFormat defaultFormat)
{
Mutex::Autolock _l(mMutex);
return mConsumer->setDefaultBufferFormat(defaultFormat);
}
status_t CpuConsumer::setDefaultBufferDataSpace(
android_dataspace defaultDataSpace)
{
Mutex::Autolock _l(mMutex);
return mConsumer->setDefaultBufferDataSpace(defaultDataSpace);
}
static bool isPossiblyYUV(PixelFormat format) { static bool isPossiblyYUV(PixelFormat format) {
switch (static_cast<int>(format)) { switch (static_cast<int>(format)) {
case HAL_PIXEL_FORMAT_RGBA_8888: case HAL_PIXEL_FORMAT_RGBA_8888: