1 // Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights
2 // reserved. Use of this source code is governed by a BSD-style license that
3 // can be found in the LICENSE file.
4 //
5 // ---------------------------------------------------------------------------
6 //
7 // This file was generated by the CEF translator tool. If making changes by
8 // hand only do so within the body of existing method and function
9 // implementations. See the translator.README.txt file in the tools directory
10 // for more information.
11 //
12 // $hash=ea0c4c4d8c202a47a9b5b63a57525dc726c1e40e$
13 //
14
15 #include "libcef_dll/cpptoc/waitable_event_cpptoc.h"
16 #include "libcef_dll/shutdown_checker.h"
17
18 // GLOBAL FUNCTIONS - Body may be edited by hand.
19
cef_waitable_event_create(int automatic_reset,int initially_signaled)20 CEF_EXPORT cef_waitable_event_t* cef_waitable_event_create(
21 int automatic_reset,
22 int initially_signaled) {
23 shutdown_checker::AssertNotShutdown();
24
25 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
26
27 // Execute
28 CefRefPtr<CefWaitableEvent> _retval = CefWaitableEvent::CreateWaitableEvent(
29 automatic_reset ? true : false, initially_signaled ? true : false);
30
31 // Return type: refptr_same
32 return CefWaitableEventCppToC::Wrap(_retval);
33 }
34
35 namespace {
36
37 // MEMBER FUNCTIONS - Body may be edited by hand.
38
waitable_event_reset(struct _cef_waitable_event_t * self)39 void CEF_CALLBACK waitable_event_reset(struct _cef_waitable_event_t* self) {
40 shutdown_checker::AssertNotShutdown();
41
42 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
43
44 DCHECK(self);
45 if (!self)
46 return;
47
48 // Execute
49 CefWaitableEventCppToC::Get(self)->Reset();
50 }
51
waitable_event_signal(struct _cef_waitable_event_t * self)52 void CEF_CALLBACK waitable_event_signal(struct _cef_waitable_event_t* self) {
53 shutdown_checker::AssertNotShutdown();
54
55 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
56
57 DCHECK(self);
58 if (!self)
59 return;
60
61 // Execute
62 CefWaitableEventCppToC::Get(self)->Signal();
63 }
64
65 int CEF_CALLBACK
waitable_event_is_signaled(struct _cef_waitable_event_t * self)66 waitable_event_is_signaled(struct _cef_waitable_event_t* self) {
67 shutdown_checker::AssertNotShutdown();
68
69 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
70
71 DCHECK(self);
72 if (!self)
73 return 0;
74
75 // Execute
76 bool _retval = CefWaitableEventCppToC::Get(self)->IsSignaled();
77
78 // Return type: bool
79 return _retval;
80 }
81
waitable_event_wait(struct _cef_waitable_event_t * self)82 void CEF_CALLBACK waitable_event_wait(struct _cef_waitable_event_t* self) {
83 shutdown_checker::AssertNotShutdown();
84
85 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
86
87 DCHECK(self);
88 if (!self)
89 return;
90
91 // Execute
92 CefWaitableEventCppToC::Get(self)->Wait();
93 }
94
waitable_event_timed_wait(struct _cef_waitable_event_t * self,int64 max_ms)95 int CEF_CALLBACK waitable_event_timed_wait(struct _cef_waitable_event_t* self,
96 int64 max_ms) {
97 shutdown_checker::AssertNotShutdown();
98
99 // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
100
101 DCHECK(self);
102 if (!self)
103 return 0;
104
105 // Execute
106 bool _retval = CefWaitableEventCppToC::Get(self)->TimedWait(max_ms);
107
108 // Return type: bool
109 return _retval;
110 }
111
112 } // namespace
113
114 // CONSTRUCTOR - Do not edit by hand.
115
CefWaitableEventCppToC()116 CefWaitableEventCppToC::CefWaitableEventCppToC() {
117 GetStruct()->reset = waitable_event_reset;
118 GetStruct()->signal = waitable_event_signal;
119 GetStruct()->is_signaled = waitable_event_is_signaled;
120 GetStruct()->wait = waitable_event_wait;
121 GetStruct()->timed_wait = waitable_event_timed_wait;
122 }
123
124 // DESTRUCTOR - Do not edit by hand.
125
~CefWaitableEventCppToC()126 CefWaitableEventCppToC::~CefWaitableEventCppToC() {
127 shutdown_checker::AssertNotShutdown();
128 }
129
130 template <>
131 CefRefPtr<CefWaitableEvent> CefCppToCRefCounted<
132 CefWaitableEventCppToC,
133 CefWaitableEvent,
UnwrapDerived(CefWrapperType type,cef_waitable_event_t * s)134 cef_waitable_event_t>::UnwrapDerived(CefWrapperType type,
135 cef_waitable_event_t* s) {
136 NOTREACHED() << "Unexpected class type: " << type;
137 return nullptr;
138 }
139
140 template <>
141 CefWrapperType CefCppToCRefCounted<CefWaitableEventCppToC,
142 CefWaitableEvent,
143 cef_waitable_event_t>::kWrapperType =
144 WT_WAITABLE_EVENT;
145