Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / mojo / system / core_impl.h
index 60577d1..06e7345 100644 (file)
@@ -83,6 +83,20 @@ class MOJO_SYSTEM_IMPL_EXPORT CoreImpl : public Core {
                                    MojoReadDataFlags flags) OVERRIDE;
   virtual MojoResult EndReadData(MojoHandle data_pipe_consumer_handle,
                                  uint32_t num_bytes_read) OVERRIDE;
+  virtual MojoResult CreateSharedBuffer(
+      const MojoCreateSharedBufferOptions* options,
+      uint64_t* num_bytes,
+      MojoHandle* shared_buffer_handle) OVERRIDE;
+  virtual MojoResult DuplicateBufferHandle(
+      MojoHandle buffer_handle,
+      const MojoDuplicateBufferHandleOptions* options,
+      MojoHandle* new_buffer_handle) OVERRIDE;
+  virtual MojoResult MapBuffer(MojoHandle buffer_handle,
+                               uint64_t offset,
+                               uint64_t num_bytes,
+                               void** buffer,
+                               MojoMapBufferFlags flags) OVERRIDE;
+  virtual MojoResult UnmapBuffer(void* buffer) OVERRIDE;
 
  private:
   friend bool internal::ShutdownCheckNoLeaks(CoreImpl*);
@@ -126,9 +140,9 @@ class MOJO_SYSTEM_IMPL_EXPORT CoreImpl : public Core {
   // invalid.
   scoped_refptr<Dispatcher> GetDispatcher(MojoHandle handle);
 
-  // Assigns a new handle for the given dispatcher (which must be valid);
-  // returns |MOJO_HANDLE_INVALID| on failure (due to hitting resource limits).
-  // Must be called under |handle_table_lock_|.
+  // Assigns a new handle for the given dispatcher; returns
+  // |MOJO_HANDLE_INVALID| on failure (due to hitting resource limits) or if
+  // |dispatcher| is null. Must be called under |handle_table_lock_|.
   MojoHandle AddDispatcherNoLock(const scoped_refptr<Dispatcher>& dispatcher);
 
   // Internal implementation of |Wait()| and |WaitMany()|; doesn't do basic