Line data Source code
1 : //
2 : // Automatically generated by ipdlc.
3 : // Edit at your own risk
4 : //
5 :
6 :
7 : #include "mozilla/gfx/PVsyncBridgeParent.h"
8 : #include "mozilla/TimeStamp.h"
9 : #ifdef MOZ_CRASHREPORTER
10 : # include "nsXULAppAPI.h"
11 : #endif
12 :
13 :
14 : #include "nsIFile.h"
15 : #include "GeckoProfiler.h"
16 :
17 : namespace mozilla {
18 : namespace gfx {
19 :
20 :
21 :
22 0 : auto PVsyncBridgeParent::ProcessingError(
23 : Result aCode,
24 : const char* aReason) -> void
25 : {
26 0 : }
27 :
28 0 : auto PVsyncBridgeParent::ShouldContinueFromReplyTimeout() -> bool
29 : {
30 0 : return true;
31 : }
32 :
33 0 : auto PVsyncBridgeParent::EnteredCxxStack() -> void
34 : {
35 0 : }
36 :
37 0 : auto PVsyncBridgeParent::ExitedCxxStack() -> void
38 : {
39 0 : }
40 :
41 0 : auto PVsyncBridgeParent::EnteredCall() -> void
42 : {
43 0 : }
44 :
45 0 : auto PVsyncBridgeParent::ExitedCall() -> void
46 : {
47 0 : }
48 :
49 0 : MOZ_IMPLICIT PVsyncBridgeParent::PVsyncBridgeParent() :
50 : mozilla::ipc::IToplevelProtocol(PVsyncBridgeMsgStart, mozilla::ipc::ParentSide),
51 : mChannel("PVsyncBridgeParent", ALLOW_THIS_IN_INITIALIZER_LIST(this)),
52 0 : mState(PVsyncBridge::__Start)
53 : {
54 0 : MOZ_COUNT_CTOR(PVsyncBridgeParent);
55 0 : }
56 :
57 0 : PVsyncBridgeParent::~PVsyncBridgeParent()
58 : {
59 0 : MOZ_COUNT_DTOR(PVsyncBridgeParent);
60 0 : }
61 :
62 0 : auto PVsyncBridgeParent::GetIPCChannel() -> MessageChannel*
63 : {
64 0 : return (&(mChannel));
65 : }
66 :
67 0 : auto PVsyncBridgeParent::GetIPCChannel() const -> const MessageChannel*
68 : {
69 0 : return (&(mChannel));
70 : }
71 :
72 0 : auto PVsyncBridgeParent::RemoveManagee(
73 : int32_t aProtocolId,
74 : ProtocolBase* aListener) -> void
75 : {
76 0 : FatalError("unreached");
77 0 : return;
78 : }
79 :
80 0 : auto PVsyncBridgeParent::OnMessageReceived(const Message& msg__) -> PVsyncBridgeParent::Result
81 : {
82 0 : switch ((msg__).type()) {
83 : case PVsyncBridge::Msg_NotifyVsync__ID:
84 : {
85 0 : if (mozilla::ipc::LoggingEnabledFor("PVsyncBridgeParent")) {
86 0 : mozilla::ipc::LogMessageForProtocol("PVsyncBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
87 : }
88 0 : AUTO_PROFILER_LABEL("PVsyncBridge::Msg_NotifyVsync", OTHER);
89 :
90 0 : PickleIterator iter__(msg__);
91 0 : TimeStamp vsyncTimeStamp;
92 : uint64_t layersId;
93 :
94 0 : if ((!(Read((&(vsyncTimeStamp)), (&(msg__)), (&(iter__)))))) {
95 0 : FatalError("Error deserializing 'TimeStamp'");
96 0 : return MsgValueError;
97 : }
98 : // Sentinel = 'vsyncTimeStamp'
99 0 : if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1510557875)))) {
100 0 : mozilla::ipc::SentinelReadError("Error deserializing 'TimeStamp'");
101 0 : return MsgValueError;
102 : }
103 0 : if ((!(Read((&(layersId)), (&(msg__)), (&(iter__)))))) {
104 0 : FatalError("Error deserializing 'uint64_t'");
105 0 : return MsgValueError;
106 : }
107 : // Sentinel = 'layersId'
108 0 : if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2382073245)))) {
109 0 : mozilla::ipc::SentinelReadError("Error deserializing 'uint64_t'");
110 0 : return MsgValueError;
111 : }
112 0 : (msg__).EndRead(iter__, (msg__).type());
113 0 : PVsyncBridge::Transition(PVsyncBridge::Msg_NotifyVsync__ID, (&(mState)));
114 0 : if ((!(RecvNotifyVsync(mozilla::Move(vsyncTimeStamp), mozilla::Move(layersId))))) {
115 0 : mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
116 : // Error handled in mozilla::ipc::IPCResult
117 0 : return MsgProcessingError;
118 : }
119 :
120 0 : return MsgProcessed;
121 : }
122 : default:
123 : {
124 0 : return MsgNotKnown;
125 : }
126 : case SHMEM_CREATED_MESSAGE_TYPE:
127 : {
128 0 : FatalError("this protocol tree does not use shmem");
129 0 : return MsgNotKnown;
130 : }
131 : case SHMEM_DESTROYED_MESSAGE_TYPE:
132 : {
133 0 : FatalError("this protocol tree does not use shmem");
134 0 : return MsgNotKnown;
135 : }
136 : }
137 : }
138 :
139 0 : auto PVsyncBridgeParent::OnMessageReceived(
140 : const Message& msg__,
141 : Message*& reply__) -> PVsyncBridgeParent::Result
142 : {
143 0 : return MsgNotKnown;
144 : }
145 :
146 0 : auto PVsyncBridgeParent::OnCallReceived(
147 : const Message& msg__,
148 : Message*& reply__) -> PVsyncBridgeParent::Result
149 : {
150 0 : MOZ_ASSERT_UNREACHABLE("message protocol not supported");
151 : return MsgNotKnown;
152 : }
153 :
154 0 : auto PVsyncBridgeParent::GetProtocolTypeId() -> int32_t
155 : {
156 0 : return PVsyncBridgeMsgStart;
157 : }
158 :
159 0 : auto PVsyncBridgeParent::OnChannelClose() -> void
160 : {
161 0 : DestroySubtree(NormalShutdown);
162 0 : DeallocSubtree();
163 0 : DeallocShmems();
164 0 : DeallocPVsyncBridgeParent();
165 0 : }
166 :
167 0 : auto PVsyncBridgeParent::OnChannelError() -> void
168 : {
169 0 : DestroySubtree(AbnormalShutdown);
170 0 : DeallocSubtree();
171 0 : DeallocShmems();
172 0 : DeallocPVsyncBridgeParent();
173 0 : }
174 :
175 0 : auto PVsyncBridgeParent::ProtocolName() const -> const char*
176 : {
177 0 : return "PVsyncBridgeParent";
178 : }
179 :
180 0 : auto PVsyncBridgeParent::DestroySubtree(ActorDestroyReason why) -> void
181 : {
182 : // Reject owning pending promises.
183 0 : (GetIPCChannel())->RejectPendingPromisesForActor(this);
184 :
185 : // Finally, destroy "us".
186 0 : ActorDestroy(why);
187 0 : }
188 :
189 0 : auto PVsyncBridgeParent::DeallocSubtree() -> void
190 : {
191 0 : }
192 :
193 0 : auto PVsyncBridgeParent::DeallocPVsyncBridgeParent() -> void
194 : {
195 0 : }
196 :
197 :
198 :
199 : } // namespace gfx
200 : } // namespace mozilla
|