shared_bitmap_manager.h revision 5d1f7b1de12d16ceb2c938c56701a3e8bfa558f7
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
13namespace cc {
14
15class CC_EXPORT SharedBitmapManager {
16 public:
17  SharedBitmapManager() {}
18
19  virtual scoped_ptr<SharedBitmap> AllocateSharedBitmap(const gfx::Size&) = 0;
20  virtual scoped_ptr<SharedBitmap> GetSharedBitmapFromId(
21      const gfx::Size&,
22      const SharedBitmapId&) = 0;
23  virtual scoped_ptr<SharedBitmap> GetBitmapForSharedMemory(
24      base::SharedMemory*) = 0;
25
26 private:
27  DISALLOW_COPY_AND_ASSIGN(SharedBitmapManager);
28};
29
30}  // namespace cc
31
32#endif  // CC_RESOURCES_SHARED_BITMAP_MANAGER_H_
33