Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(284)

Side by Side Diff: mojo/edk/system/transport_data.h

Issue 1346383004: EDK: Remove MOJO_SYSTEM_IMPL_EXPORT, system_impl_export.h, etc. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « mojo/edk/system/system_impl_export.h ('k') | mojo/edk/system/unique_identifier.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 MOJO_EDK_SYSTEM_TRANSPORT_DATA_H_ 5 #ifndef MOJO_EDK_SYSTEM_TRANSPORT_DATA_H_
6 #define MOJO_EDK_SYSTEM_TRANSPORT_DATA_H_ 6 #define MOJO_EDK_SYSTEM_TRANSPORT_DATA_H_
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <memory> 10 #include <memory>
11 #include <vector> 11 #include <vector>
12 12
13 #include "base/memory/aligned_memory.h" 13 #include "base/memory/aligned_memory.h"
14 #include "mojo/edk/embedder/platform_handle.h" 14 #include "mojo/edk/embedder/platform_handle.h"
15 #include "mojo/edk/embedder/platform_handle_vector.h" 15 #include "mojo/edk/embedder/platform_handle_vector.h"
16 #include "mojo/edk/system/dispatcher.h" 16 #include "mojo/edk/system/dispatcher.h"
17 #include "mojo/edk/system/system_impl_export.h"
18 #include "mojo/public/cpp/system/macros.h" 17 #include "mojo/public/cpp/system/macros.h"
19 18
20 namespace mojo { 19 namespace mojo {
21 namespace system { 20 namespace system {
22 21
23 class Channel; 22 class Channel;
24 23
25 // This class is used by |MessageInTransit| to represent handles (|Dispatcher|s) 24 // This class is used by |MessageInTransit| to represent handles (|Dispatcher|s)
26 // in various stages of serialization. 25 // in various stages of serialization.
27 // 26 //
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 // |PlatformHandle|s (and detaching them). Attach these dispatchers to the 64 // |PlatformHandle|s (and detaching them). Attach these dispatchers to the
66 // |MessageInTransit|. 65 // |MessageInTransit|.
67 // - At this point, the |MessageInTransit| consists of its main buffer 66 // - At this point, the |MessageInTransit| consists of its main buffer
68 // (primarily the data payload) and the attached dispatchers; the 67 // (primarily the data payload) and the attached dispatchers; the
69 // |TransportData| can be discarded. 68 // |TransportData| can be discarded.
70 // - When |MojoReadMessage()| is to give data to the application, attach the 69 // - When |MojoReadMessage()| is to give data to the application, attach the
71 // dispatchers to the (global, "core") handle table, getting handles; give 70 // dispatchers to the (global, "core") handle table, getting handles; give
72 // the application the data payload and these handles. 71 // the application the data payload and these handles.
73 // 72 //
74 // TODO(vtl): Everything above involving |PlatformHandle|s. 73 // TODO(vtl): Everything above involving |PlatformHandle|s.
75 class MOJO_SYSTEM_IMPL_EXPORT TransportData { 74 class TransportData {
76 public: 75 public:
77 // The maximum size of a single serialized dispatcher. This must be a multiple 76 // The maximum size of a single serialized dispatcher. This must be a multiple
78 // of |kMessageAlignment|. 77 // of |kMessageAlignment|.
79 static const size_t kMaxSerializedDispatcherSize = 10000; 78 static const size_t kMaxSerializedDispatcherSize = 10000;
80 79
81 // The maximum number of platform handles to attach for a single serialized 80 // The maximum number of platform handles to attach for a single serialized
82 // dispatcher. 81 // dispatcher.
83 static const size_t kMaxSerializedDispatcherPlatformHandles = 2; 82 static const size_t kMaxSerializedDispatcherPlatformHandles = 2;
84 83
85 // The maximum possible size of a valid transport data buffer. 84 // The maximum possible size of a valid transport data buffer.
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 // TODO(vtl): With C++11, change it to a vector of |ScopedPlatformHandle|s. 181 // TODO(vtl): With C++11, change it to a vector of |ScopedPlatformHandle|s.
183 embedder::ScopedPlatformHandleVectorPtr platform_handles_; 182 embedder::ScopedPlatformHandleVectorPtr platform_handles_;
184 183
185 MOJO_DISALLOW_COPY_AND_ASSIGN(TransportData); 184 MOJO_DISALLOW_COPY_AND_ASSIGN(TransportData);
186 }; 185 };
187 186
188 } // namespace system 187 } // namespace system
189 } // namespace mojo 188 } // namespace mojo
190 189
191 #endif // MOJO_EDK_SYSTEM_TRANSPORT_DATA_H_ 190 #endif // MOJO_EDK_SYSTEM_TRANSPORT_DATA_H_
OLDNEW
« no previous file with comments | « mojo/edk/system/system_impl_export.h ('k') | mojo/edk/system/unique_identifier.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698