diff options
Diffstat (limited to 'base/win/scoped_hglobal.h')
-rw-r--r-- | base/win/scoped_hglobal.h | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/base/win/scoped_hglobal.h b/base/win/scoped_hglobal.h deleted file mode 100644 index abe9a5a3dd..0000000000 --- a/base/win/scoped_hglobal.h +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright (c) 2010 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef BASE_WIN_SCOPED_HGLOBAL_H_ -#define BASE_WIN_SCOPED_HGLOBAL_H_ - -#include <windows.h> -#include <stddef.h> - -#include "base/macros.h" - -namespace base { -namespace win { - -// Like ScopedHandle except for HGLOBAL. -template<class T> -class ScopedHGlobal { - public: - explicit ScopedHGlobal(HGLOBAL glob) : glob_(glob) { - data_ = static_cast<T>(GlobalLock(glob_)); - } - ~ScopedHGlobal() { - GlobalUnlock(glob_); - } - - T get() { return data_; } - - size_t Size() const { return GlobalSize(glob_); } - - T operator->() const { - assert(data_ != 0); - return data_; - } - - T release() { - T data = data_; - data_ = NULL; - return data; - } - - private: - HGLOBAL glob_; - - T data_; - - DISALLOW_COPY_AND_ASSIGN(ScopedHGlobal); -}; - -} // namespace win -} // namespace base - -#endif // BASE_WIN_SCOPED_HGLOBAL_H_ |