Index: ppapi/proxy/serialized_handle.h |
diff --git a/ppapi/proxy/serialized_structs.h b/ppapi/proxy/serialized_handle.h |
similarity index 55% |
copy from ppapi/proxy/serialized_structs.h |
copy to ppapi/proxy/serialized_handle.h |
index 5c5dcabe2a037dc0225f7abac22a6b47b5f590af..9e4136f92f31a3ae4f0cb27986a0f1e77fff1080 100644 |
--- a/ppapi/proxy/serialized_structs.h |
+++ b/ppapi/proxy/serialized_handle.h |
@@ -1,104 +1,39 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
+// Copyright (c) 2013 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 PPAPI_PROXY_SERIALIZED_STRUCTS_H_ |
-#define PPAPI_PROXY_SERIALIZED_STRUCTS_H_ |
+#ifndef PPAPI_PROXY_SERIALIZED_HANDLES_H_ |
+#define PPAPI_PROXY_SERIALIZED_HANDLES_H_ |
#include <string> |
#include <vector> |
+#include "base/basictypes.h" |
#include "base/logging.h" |
#include "base/shared_memory.h" |
#include "build/build_config.h" |
#include "ipc/ipc_platform_file.h" |
-#include "ppapi/c/pp_bool.h" |
-#include "ppapi/c/pp_instance.h" |
-#include "ppapi/c/pp_point.h" |
-#include "ppapi/c/pp_rect.h" |
#include "ppapi/proxy/ppapi_proxy_export.h" |
-#include "ppapi/shared_impl/host_resource.h" |
class Pickle; |
-struct PP_FontDescription_Dev; |
-struct PP_BrowserFont_Trusted_Description; |
namespace ppapi { |
namespace proxy { |
-// PP_FontDescription_Dev/PP_BrowserFontDescription (same definition, different |
-// names) has to be redefined with a string in place of the PP_Var used for the |
-// face name. |
-struct PPAPI_PROXY_EXPORT SerializedFontDescription { |
- SerializedFontDescription(); |
- ~SerializedFontDescription(); |
- |
- // Converts a PP_FontDescription_Dev to a SerializedFontDescription. |
- // |
- // The reference of |face| owned by the PP_FontDescription_Dev will be |
- // unchanged and the caller is responsible for freeing it. |
- void SetFromPPFontDescription(const PP_FontDescription_Dev& desc); |
- void SetFromPPBrowserFontDescription( |
- const PP_BrowserFont_Trusted_Description& desc); |
- |
- // Converts to a PP_FontDescription_Dev. The face name will have one ref |
- // assigned to it. The caller is responsible for freeing it. |
- void SetToPPFontDescription(PP_FontDescription_Dev* desc) const; |
- void SetToPPBrowserFontDescription( |
- PP_BrowserFont_Trusted_Description* desc) const; |
- |
- std::string face; |
- int32_t family; |
- uint32_t size; |
- int32_t weight; |
- PP_Bool italic; |
- PP_Bool small_caps; |
- int32_t letter_spacing; |
- int32_t word_spacing; |
-}; |
- |
-struct SerializedDirEntry { |
- std::string name; |
- bool is_dir; |
-}; |
- |
-struct PPAPI_PROXY_EXPORT PPBFlash_DrawGlyphs_Params { |
- PPBFlash_DrawGlyphs_Params(); |
- ~PPBFlash_DrawGlyphs_Params(); |
- |
- PP_Instance instance; |
- ppapi::HostResource image_data; |
- SerializedFontDescription font_desc; |
- uint32_t color; |
- PP_Point position; |
- PP_Rect clip; |
- float transformation[3][3]; |
- PP_Bool allow_subpixel_aa; |
- std::vector<uint16_t> glyph_indices; |
- std::vector<PP_Point> glyph_advances; |
-}; |
- |
-struct PPBURLLoader_UpdateProgress_Params { |
- PP_Instance instance; |
- ppapi::HostResource resource; |
- int64_t bytes_sent; |
- int64_t total_bytes_to_be_sent; |
- int64_t bytes_received; |
- int64_t total_bytes_to_be_received; |
-}; |
- |
-// We put all our handles in a unified structure to make it easy to translate |
-// them in NaClIPCAdapter for use in NaCl. |
+// SerializedHandle is a unified structure for holding a handle (e.g., a shared |
+// memory handle, socket descriptor, etc). This is useful for passing handles in |
+// resource messages and also makes it easier to translate handles in |
+// NaClIPCAdapter for use in NaCl. |
class PPAPI_PROXY_EXPORT SerializedHandle { |
public: |
enum Type { INVALID, SHARED_MEMORY, SOCKET, CHANNEL_HANDLE, FILE }; |
struct Header { |
Header() : type(INVALID), size(0) {} |
- Header(Type type_arg, uint32_t size_arg) |
+ Header(Type type_arg, uint32 size_arg) |
: type(type_arg), size(size_arg) { |
} |
Type type; |
- uint32_t size; |
+ uint32 size; |
}; |
SerializedHandle(); |
@@ -106,7 +41,7 @@ class PPAPI_PROXY_EXPORT SerializedHandle { |
explicit SerializedHandle(Type type); |
// Create a shared memory handle. |
- SerializedHandle(const base::SharedMemoryHandle& handle, uint32_t size); |
+ SerializedHandle(const base::SharedMemoryHandle& handle, uint32 size); |
// Create a socket, channel or file handle. |
SerializedHandle(const Type type, |
@@ -121,7 +56,7 @@ class PPAPI_PROXY_EXPORT SerializedHandle { |
DCHECK(is_shmem()); |
return shm_handle_; |
} |
- uint32_t size() const { |
+ uint32 size() const { |
DCHECK(is_shmem()); |
return size_; |
} |
@@ -129,7 +64,7 @@ class PPAPI_PROXY_EXPORT SerializedHandle { |
DCHECK(is_socket() || is_channel_handle() || is_file()); |
return descriptor_; |
} |
- void set_shmem(const base::SharedMemoryHandle& handle, uint32_t size) { |
+ void set_shmem(const base::SharedMemoryHandle& handle, uint32 size) { |
type_ = SHARED_MEMORY; |
shm_handle_ = handle; |
size_ = size; |
@@ -194,28 +129,13 @@ class PPAPI_PROXY_EXPORT SerializedHandle { |
// efficient strategy. |
// These are valid if type == SHARED_MEMORY. |
base::SharedMemoryHandle shm_handle_; |
- uint32_t size_; |
+ uint32 size_; |
// This is valid if type == SOCKET || type == CHANNEL_HANDLE. |
IPC::PlatformFileForTransit descriptor_; |
}; |
-struct PPPDecryptor_Buffer { |
- ppapi::HostResource resource; |
- uint32_t size; |
- base::SharedMemoryHandle handle; |
-}; |
- |
-#if defined(OS_WIN) |
-typedef HANDLE ImageHandle; |
-#elif defined(OS_MACOSX) || defined(OS_ANDROID) |
-typedef base::SharedMemoryHandle ImageHandle; |
-#else |
-// On X Windows this is a SysV shared memory key. |
-typedef int ImageHandle; |
-#endif |
- |
} // namespace proxy |
} // namespace ppapi |
-#endif // PPAPI_PROXY_SERIALIZED_STRUCTS_H_ |
+#endif // PPAPI_PROXY_SERIALIZED_HANDLES_H_ |