OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef BASE_WIN_SCOPED_HGLOBAL_H_ | 5 #ifndef BASE_WIN_SCOPED_HGLOBAL_H_ |
6 #define BASE_WIN_SCOPED_HGLOBAL_H_ | 6 #define BASE_WIN_SCOPED_HGLOBAL_H_ |
7 | 7 |
8 #include <windows.h> | 8 #include <windows.h> |
| 9 #include <stddef.h> |
9 | 10 |
10 #include "base/basictypes.h" | 11 #include "base/macros.h" |
11 | 12 |
12 namespace base { | 13 namespace base { |
13 namespace win { | 14 namespace win { |
14 | 15 |
15 // Like ScopedHandle except for HGLOBAL. | 16 // Like ScopedHandle except for HGLOBAL. |
16 template<class T> | 17 template<class T> |
17 class ScopedHGlobal { | 18 class ScopedHGlobal { |
18 public: | 19 public: |
19 explicit ScopedHGlobal(HGLOBAL glob) : glob_(glob) { | 20 explicit ScopedHGlobal(HGLOBAL glob) : glob_(glob) { |
20 data_ = static_cast<T>(GlobalLock(glob_)); | 21 data_ = static_cast<T>(GlobalLock(glob_)); |
(...skipping 22 matching lines...) Expand all Loading... |
43 | 44 |
44 T data_; | 45 T data_; |
45 | 46 |
46 DISALLOW_COPY_AND_ASSIGN(ScopedHGlobal); | 47 DISALLOW_COPY_AND_ASSIGN(ScopedHGlobal); |
47 }; | 48 }; |
48 | 49 |
49 } // namespace win | 50 } // namespace win |
50 } // namespace base | 51 } // namespace base |
51 | 52 |
52 #endif // BASE_WIN_SCOPED_HGLOBAL_H_ | 53 #endif // BASE_WIN_SCOPED_HGLOBAL_H_ |
OLD | NEW |