Home | History | Annotate | Download | only in gui
      1 /*
      2  **
      3  ** Copyright 2012 The Android Open Source Project
      4  **
      5  ** Licensed under the Apache License Version 2.0(the "License");
      6  ** you may not use this file except in compliance with the License.
      7  ** You may obtain a copy of the License at
      8  **
      9  **     http://www.apache.org/licenses/LICENSE-2.0
     10  **
     11  ** Unless required by applicable law or agreed to in writing software
     12  ** distributed under the License is distributed on an "AS IS" BASIS
     13  ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND either express or implied.
     14  ** See the License for the specific language governing permissions and
     15  ** limitations under the License.
     16  */
     17 
     18 #include <cutils/log.h>
     19 
     20 #include <ui/GraphicBuffer.h>
     21 
     22 #include <gui/GraphicBufferAlloc.h>
     23 
     24 // ----------------------------------------------------------------------------
     25 namespace android {
     26 // ----------------------------------------------------------------------------
     27 
     28 GraphicBufferAlloc::GraphicBufferAlloc() {
     29 }
     30 
     31 GraphicBufferAlloc::~GraphicBufferAlloc() {
     32 }
     33 
     34 sp<GraphicBuffer> GraphicBufferAlloc::createGraphicBuffer(uint32_t width,
     35         uint32_t height, PixelFormat format, uint32_t usage, status_t* error) {
     36     sp<GraphicBuffer> graphicBuffer(
     37             new GraphicBuffer(width, height, format, usage));
     38     status_t err = graphicBuffer->initCheck();
     39     *error = err;
     40     if (err != 0 || graphicBuffer->handle == 0) {
     41         if (err == NO_MEMORY) {
     42             GraphicBuffer::dumpAllocationsToSystemLog();
     43         }
     44         ALOGE("GraphicBufferAlloc::createGraphicBuffer(w=%d, h=%d) "
     45              "failed (%s), handle=%p",
     46                 width, height, strerror(-err), graphicBuffer->handle);
     47         return 0;
     48     }
     49     return graphicBuffer;
     50 }
     51 
     52 // ----------------------------------------------------------------------------
     53 }; // namespace android
     54 // ----------------------------------------------------------------------------
     55