Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / cc / test / test_shared_bitmap_manager.h
1 // Copyright 2014 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_TEST_TEST_SHARED_BITMAP_MANAGER_H_
6 #define CC_TEST_TEST_SHARED_BITMAP_MANAGER_H_
7
8 #include <map>
9
10 #include "base/synchronization/lock.h"
11 #include "cc/resources/shared_bitmap_manager.h"
12
13 namespace cc {
14
15 class TestSharedBitmapManager : public SharedBitmapManager {
16  public:
17   TestSharedBitmapManager();
18   ~TestSharedBitmapManager() override;
19
20   scoped_ptr<SharedBitmap> AllocateSharedBitmap(const gfx::Size& size) override;
21
22   scoped_ptr<SharedBitmap> GetSharedBitmapFromId(
23       const gfx::Size&,
24       const SharedBitmapId& id) override;
25
26   scoped_ptr<SharedBitmap> GetBitmapForSharedMemory(
27       base::SharedMemory* memory) override;
28
29  private:
30   base::Lock lock_;
31   std::map<SharedBitmapId, base::SharedMemory*> bitmap_map_;
32 };
33
34 }  // namespace cc
35
36 #endif  // CC_TEST_TEST_SHARED_BITMAP_MANAGER_H_