OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 MOJO_EDK_SYSTEM_DATA_PIPE_PRODUCER_DISPATCHER_H_ | 5 #ifndef MOJO_EDK_SYSTEM_DATA_PIPE_PRODUCER_DISPATCHER_H_ |
6 #define MOJO_EDK_SYSTEM_DATA_PIPE_PRODUCER_DISPATCHER_H_ | 6 #define MOJO_EDK_SYSTEM_DATA_PIPE_PRODUCER_DISPATCHER_H_ |
7 | 7 |
8 #include "mojo/edk/system/dispatcher.h" | 8 #include "mojo/edk/system/dispatcher.h" |
9 #include "mojo/edk/util/ref_ptr.h" | 9 #include "mojo/edk/util/ref_ptr.h" |
10 #include "mojo/edk/util/thread_annotations.h" | 10 #include "mojo/edk/util/thread_annotations.h" |
(...skipping 29 matching lines...) Expand all Loading... |
40 | 40 |
41 private: | 41 private: |
42 DataPipeProducerDispatcher(); | 42 DataPipeProducerDispatcher(); |
43 ~DataPipeProducerDispatcher() override; | 43 ~DataPipeProducerDispatcher() override; |
44 | 44 |
45 // |Dispatcher| protected methods: | 45 // |Dispatcher| protected methods: |
46 void CancelAllAwakablesNoLock() override; | 46 void CancelAllAwakablesNoLock() override; |
47 void CloseImplNoLock() override; | 47 void CloseImplNoLock() override; |
48 util::RefPtr<Dispatcher> CreateEquivalentDispatcherAndCloseImplNoLock() | 48 util::RefPtr<Dispatcher> CreateEquivalentDispatcherAndCloseImplNoLock() |
49 override; | 49 override; |
| 50 MojoResult SetDataPipeProducerOptionsImplNoLock( |
| 51 UserPointer<const MojoDataPipeProducerOptions> options) override; |
| 52 MojoResult GetDataPipeProducerOptionsImplNoLock( |
| 53 UserPointer<MojoDataPipeProducerOptions> options, |
| 54 uint32_t options_num_bytes) override; |
50 MojoResult WriteDataImplNoLock(UserPointer<const void> elements, | 55 MojoResult WriteDataImplNoLock(UserPointer<const void> elements, |
51 UserPointer<uint32_t> num_bytes, | 56 UserPointer<uint32_t> num_bytes, |
52 MojoWriteDataFlags flags) override; | 57 MojoWriteDataFlags flags) override; |
53 MojoResult BeginWriteDataImplNoLock(UserPointer<void*> buffer, | 58 MojoResult BeginWriteDataImplNoLock(UserPointer<void*> buffer, |
54 UserPointer<uint32_t> buffer_num_bytes, | 59 UserPointer<uint32_t> buffer_num_bytes, |
55 MojoWriteDataFlags flags) override; | 60 MojoWriteDataFlags flags) override; |
56 MojoResult EndWriteDataImplNoLock(uint32_t num_bytes_written) override; | 61 MojoResult EndWriteDataImplNoLock(uint32_t num_bytes_written) override; |
57 HandleSignalsState GetHandleSignalsStateImplNoLock() const override; | 62 HandleSignalsState GetHandleSignalsStateImplNoLock() const override; |
58 MojoResult AddAwakableImplNoLock(Awakable* awakable, | 63 MojoResult AddAwakableImplNoLock(Awakable* awakable, |
59 MojoHandleSignals signals, | 64 MojoHandleSignals signals, |
(...skipping 16 matching lines...) Expand all Loading... |
76 // This will be null if closed. | 81 // This will be null if closed. |
77 util::RefPtr<DataPipe> data_pipe_ MOJO_GUARDED_BY(mutex()); | 82 util::RefPtr<DataPipe> data_pipe_ MOJO_GUARDED_BY(mutex()); |
78 | 83 |
79 MOJO_DISALLOW_COPY_AND_ASSIGN(DataPipeProducerDispatcher); | 84 MOJO_DISALLOW_COPY_AND_ASSIGN(DataPipeProducerDispatcher); |
80 }; | 85 }; |
81 | 86 |
82 } // namespace system | 87 } // namespace system |
83 } // namespace mojo | 88 } // namespace mojo |
84 | 89 |
85 #endif // MOJO_EDK_SYSTEM_DATA_PIPE_PRODUCER_DISPATCHER_H_ | 90 #endif // MOJO_EDK_SYSTEM_DATA_PIPE_PRODUCER_DISPATCHER_H_ |
OLD | NEW |