| OLD | NEW | 
|   1 // Copyright 2014 The Chromium Authors. All rights reserved. |   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 |   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 THIRD_PARTY_MOJO_SRC_MOJO_EDK_EMBEDDER_PLATFORM_SUPPORT_H_ |   5 #ifndef MOJO_EDK_EMBEDDER_PLATFORM_SUPPORT_H_ | 
|   6 #define THIRD_PARTY_MOJO_SRC_MOJO_EDK_EMBEDDER_PLATFORM_SUPPORT_H_ |   6 #define MOJO_EDK_EMBEDDER_PLATFORM_SUPPORT_H_ | 
|   7  |   7  | 
|   8 #include <stddef.h> |   8 #include <stddef.h> | 
|   9  |   9  | 
 |  10 #include "mojo/edk/embedder/scoped_platform_handle.h" | 
 |  11 #include "mojo/edk/system/system_impl_export.h" | 
|  10 #include "mojo/public/cpp/system/macros.h" |  12 #include "mojo/public/cpp/system/macros.h" | 
|  11 #include "third_party/mojo/src/mojo/edk/embedder/scoped_platform_handle.h" |  | 
|  12 #include "third_party/mojo/src/mojo/edk/system/system_impl_export.h" |  | 
|  13  |  13  | 
|  14 namespace mojo { |  14 namespace mojo { | 
|  15 namespace embedder { |  15 namespace edk { | 
|  16  |  16  | 
|  17 class PlatformSharedBuffer; |  17 class PlatformSharedBuffer; | 
|  18  |  18  | 
|  19 // This class is provided by the embedder to implement (typically |  19 // This class is provided by the embedder to implement (typically | 
|  20 // platform-dependent) things needed by the Mojo system implementation. |  20 // platform-dependent) things needed by the Mojo system implementation. | 
|  21 // Implementations must be thread-safe. |  21 // Implementations must be thread-safe. | 
|  22 class MOJO_SYSTEM_IMPL_EXPORT PlatformSupport { |  22 class MOJO_SYSTEM_IMPL_EXPORT PlatformSupport { | 
|  23  public: |  23  public: | 
|  24   virtual ~PlatformSupport() {} |  24   virtual ~PlatformSupport() {} | 
|  25  |  25  | 
|  26   virtual void GetCryptoRandomBytes(void* bytes, size_t num_bytes) = 0; |  26   virtual void GetCryptoRandomBytes(void* bytes, size_t num_bytes) = 0; | 
|  27  |  27  | 
|  28   virtual PlatformSharedBuffer* CreateSharedBuffer(size_t num_bytes) = 0; |  28   virtual PlatformSharedBuffer* CreateSharedBuffer(size_t num_bytes) = 0; | 
|  29   virtual PlatformSharedBuffer* CreateSharedBufferFromHandle( |  29   virtual PlatformSharedBuffer* CreateSharedBufferFromHandle( | 
|  30       size_t num_bytes, |  30       size_t num_bytes, | 
|  31       ScopedPlatformHandle platform_handle) = 0; |  31       ScopedPlatformHandle platform_handle) = 0; | 
|  32  |  32  | 
|  33  protected: |  33  protected: | 
|  34   PlatformSupport() {} |  34   PlatformSupport() {} | 
|  35  |  35  | 
|  36  private: |  36  private: | 
|  37   MOJO_DISALLOW_COPY_AND_ASSIGN(PlatformSupport); |  37   MOJO_DISALLOW_COPY_AND_ASSIGN(PlatformSupport); | 
|  38 }; |  38 }; | 
|  39  |  39  | 
|  40 }  // namespace embedder |  40 }  // namespace edk | 
|  41 }  // namespace mojo |  41 }  // namespace mojo | 
|  42  |  42  | 
|  43 #endif  // THIRD_PARTY_MOJO_SRC_MOJO_EDK_EMBEDDER_PLATFORM_SUPPORT_H_ |  43 #endif  // MOJO_EDK_EMBEDDER_PLATFORM_SUPPORT_H_ | 
| OLD | NEW |