1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CC_RESOURCES_SHARED_BITMAP_MANAGER_H_ 6 #define CC_RESOURCES_SHARED_BITMAP_MANAGER_H_ 7 8 #include "base/basictypes.h" 9 #include "cc/base/cc_export.h" 10 #include "cc/resources/shared_bitmap.h" 11 #include "ui/gfx/size.h" 12 13 namespace cc { 14 15 class CC_EXPORT SharedBitmapManager { 16 public: 17 SharedBitmapManager() {} 18 virtual ~SharedBitmapManager() {} 19 20 virtual scoped_ptr<SharedBitmap> AllocateSharedBitmap(const gfx::Size&) = 0; 21 virtual scoped_ptr<SharedBitmap> GetSharedBitmapFromId( 22 const gfx::Size&, 23 const SharedBitmapId&) = 0; 24 virtual scoped_ptr<SharedBitmap> GetBitmapForSharedMemory( 25 base::SharedMemory*) = 0; 26 27 private: 28 DISALLOW_COPY_AND_ASSIGN(SharedBitmapManager); 29 }; 30 31 } // namespace cc 32 33 #endif // CC_RESOURCES_SHARED_BITMAP_MANAGER_H_ 34