Skip to content

Commit 4620f05

Browse files
committed
Update paths and remove old stub.
1 parent c57844c commit 4620f05

File tree

6 files changed

+422
-200
lines changed

6 files changed

+422
-200
lines changed

analytics/CMakeLists.txt

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -74,14 +74,10 @@ set(android_SRCS
7474
set(ios_SRCS
7575
src/analytics_ios.mm)
7676

77-
# Source files used by the stub implementation.
78-
set(stub_SRCS
79-
src/analytics_stub.cc)
80-
81-
# Source files used by the stub implementation.
77+
# Source files used by the desktop / stub implementation.
8278
set(desktop_SRCS
8379
src/analytics_desktop.cc
84-
src/windows/analytics_dynamic.c)
80+
src/analytics_desktop_dynamic.c)
8581

8682
if(ANDROID)
8783
set(analytics_platform_SRCS

analytics/generate_windows_stubs.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import sys
2222

2323
HEADER_GUARD_PREFIX = "FIREBASE_ANALYTICS_SRC_WINDOWS_"
24-
INCLUDE_PATH = "src/windows/"
24+
INCLUDE_PATH = "src/"
2525
INCLUDE_PREFIX = "analytics/" + INCLUDE_PATH
2626
COPYRIGHT_NOTICE = """// Copyright 2025 Google LLC
2727
//
@@ -211,13 +211,13 @@ def generate_function_pointers(header_file_path, output_h_path, output_c_path):
211211
)
212212
parser.add_argument(
213213
"--output_header",
214-
default = os.path.join(os.path.dirname(sys.argv[0]), INCLUDE_PATH, "analytics_dynamic.h"),
214+
default = os.path.join(os.path.dirname(sys.argv[0]), INCLUDE_PATH, "analytics_desktop_dynamic.h"),
215215
#required=True,
216216
help="Path for the generated output header file."
217217
)
218218
parser.add_argument(
219219
"--output_source",
220-
default = os.path.join(os.path.dirname(sys.argv[0]), INCLUDE_PATH, "analytics_dynamic.c"),
220+
default = os.path.join(os.path.dirname(sys.argv[0]), INCLUDE_PATH, "analytics_desktop_dynamic.c"),
221221
#required=True,
222222
help="Path for the generated output source file."
223223
)

analytics/src/analytics_desktop.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818
#include <vector>
1919

2020
#include "analytics/src/analytics_common.h"
21+
#include "analytics/src/analytics_desktop_dynamic.h"
2122
#include "analytics/src/include/firebase/analytics.h"
22-
#include "analytics/src/windows/analytics_dynamic.h"
2323
#include "app/src/future_manager.h" // For FutureData
2424
#include "app/src/include/firebase/app.h"
2525
#include "app/src/include/firebase/future.h"
Lines changed: 284 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,284 @@
1+
// Copyright 2025 Google LLC
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
// Generated from analytics.h by generate_windows_stubs.py
16+
17+
#include "analytics/src/analytics_desktop_dynamic.h"
18+
#include <stddef.h>
19+
20+
// clang-format off
21+
22+
static void* g_stub_memory = NULL;
23+
24+
// --- Stub Function Definitions ---
25+
// Stub for GoogleAnalytics_Item_Create
26+
static GoogleAnalytics_Item* Stub_GoogleAnalytics_Item_Create() {
27+
return (GoogleAnalytics_Item*)(&g_stub_memory);
28+
}
29+
30+
// Stub for GoogleAnalytics_Item_InsertInt
31+
static void Stub_GoogleAnalytics_Item_InsertInt(GoogleAnalytics_Item* item,
32+
const char* key,
33+
int64_t value) {
34+
// No return value.
35+
}
36+
37+
// Stub for GoogleAnalytics_Item_InsertDouble
38+
static void Stub_GoogleAnalytics_Item_InsertDouble(GoogleAnalytics_Item* item,
39+
const char* key,
40+
double value) {
41+
// No return value.
42+
}
43+
44+
// Stub for GoogleAnalytics_Item_InsertString
45+
static void Stub_GoogleAnalytics_Item_InsertString(GoogleAnalytics_Item* item,
46+
const char* key,
47+
const char* value) {
48+
// No return value.
49+
}
50+
51+
// Stub for GoogleAnalytics_Item_Destroy
52+
static void Stub_GoogleAnalytics_Item_Destroy(GoogleAnalytics_Item* item) {
53+
// No return value.
54+
}
55+
56+
// Stub for GoogleAnalytics_ItemVector_Create
57+
static GoogleAnalytics_ItemVector* Stub_GoogleAnalytics_ItemVector_Create() {
58+
return (GoogleAnalytics_ItemVector*)(&g_stub_memory);
59+
}
60+
61+
// Stub for GoogleAnalytics_ItemVector_InsertItem
62+
static void Stub_GoogleAnalytics_ItemVector_InsertItem(GoogleAnalytics_ItemVector* item_vector, GoogleAnalytics_Item* item) {
63+
// No return value.
64+
}
65+
66+
// Stub for GoogleAnalytics_ItemVector_Destroy
67+
static void Stub_GoogleAnalytics_ItemVector_Destroy(GoogleAnalytics_ItemVector* item_vector) {
68+
// No return value.
69+
}
70+
71+
// Stub for GoogleAnalytics_EventParameters_Create
72+
static GoogleAnalytics_EventParameters* Stub_GoogleAnalytics_EventParameters_Create() {
73+
return (GoogleAnalytics_EventParameters*)(&g_stub_memory);
74+
}
75+
76+
// Stub for GoogleAnalytics_EventParameters_InsertInt
77+
static void Stub_GoogleAnalytics_EventParameters_InsertInt(GoogleAnalytics_EventParameters* event_parameter_map, const char* key,
78+
int64_t value) {
79+
// No return value.
80+
}
81+
82+
// Stub for GoogleAnalytics_EventParameters_InsertDouble
83+
static void Stub_GoogleAnalytics_EventParameters_InsertDouble(GoogleAnalytics_EventParameters* event_parameter_map, const char* key,
84+
double value) {
85+
// No return value.
86+
}
87+
88+
// Stub for GoogleAnalytics_EventParameters_InsertString
89+
static void Stub_GoogleAnalytics_EventParameters_InsertString(GoogleAnalytics_EventParameters* event_parameter_map, const char* key,
90+
const char* value) {
91+
// No return value.
92+
}
93+
94+
// Stub for GoogleAnalytics_EventParameters_InsertItemVector
95+
static void Stub_GoogleAnalytics_EventParameters_InsertItemVector(GoogleAnalytics_EventParameters* event_parameter_map, const char* key,
96+
GoogleAnalytics_ItemVector* value) {
97+
// No return value.
98+
}
99+
100+
// Stub for GoogleAnalytics_EventParameters_Destroy
101+
static void Stub_GoogleAnalytics_EventParameters_Destroy(GoogleAnalytics_EventParameters* event_parameter_map) {
102+
// No return value.
103+
}
104+
105+
// Stub for GoogleAnalytics_LogEvent
106+
static void Stub_GoogleAnalytics_LogEvent(const char* name, GoogleAnalytics_EventParameters* parameters) {
107+
// No return value.
108+
}
109+
110+
// Stub for GoogleAnalytics_SetUserProperty
111+
static void Stub_GoogleAnalytics_SetUserProperty(const char* name,
112+
const char* value) {
113+
// No return value.
114+
}
115+
116+
// Stub for GoogleAnalytics_SetUserId
117+
static void Stub_GoogleAnalytics_SetUserId(const char* user_id) {
118+
// No return value.
119+
}
120+
121+
// Stub for GoogleAnalytics_ResetAnalyticsData
122+
static void Stub_GoogleAnalytics_ResetAnalyticsData() {
123+
// No return value.
124+
}
125+
126+
// Stub for GoogleAnalytics_SetAnalyticsCollectionEnabled
127+
static void Stub_GoogleAnalytics_SetAnalyticsCollectionEnabled(bool enabled) {
128+
// No return value.
129+
}
130+
131+
132+
// --- Function Pointer Initializations ---
133+
GoogleAnalytics_Item* (*ptr_GoogleAnalytics_Item_Create)() = &Stub_GoogleAnalytics_Item_Create;
134+
void (*ptr_GoogleAnalytics_Item_InsertInt)(GoogleAnalytics_Item* item, const char* key, int64_t value) = &Stub_GoogleAnalytics_Item_InsertInt;
135+
void (*ptr_GoogleAnalytics_Item_InsertDouble)(GoogleAnalytics_Item* item, const char* key, double value) = &Stub_GoogleAnalytics_Item_InsertDouble;
136+
void (*ptr_GoogleAnalytics_Item_InsertString)(GoogleAnalytics_Item* item, const char* key, const char* value) = &Stub_GoogleAnalytics_Item_InsertString;
137+
void (*ptr_GoogleAnalytics_Item_Destroy)(GoogleAnalytics_Item* item) = &Stub_GoogleAnalytics_Item_Destroy;
138+
GoogleAnalytics_ItemVector* (*ptr_GoogleAnalytics_ItemVector_Create)() = &Stub_GoogleAnalytics_ItemVector_Create;
139+
void (*ptr_GoogleAnalytics_ItemVector_InsertItem)(GoogleAnalytics_ItemVector* item_vector, GoogleAnalytics_Item* item) = &Stub_GoogleAnalytics_ItemVector_InsertItem;
140+
void (*ptr_GoogleAnalytics_ItemVector_Destroy)(GoogleAnalytics_ItemVector* item_vector) = &Stub_GoogleAnalytics_ItemVector_Destroy;
141+
GoogleAnalytics_EventParameters* (*ptr_GoogleAnalytics_EventParameters_Create)() = &Stub_GoogleAnalytics_EventParameters_Create;
142+
void (*ptr_GoogleAnalytics_EventParameters_InsertInt)(GoogleAnalytics_EventParameters* event_parameter_map, const char* key, int64_t value) = &Stub_GoogleAnalytics_EventParameters_InsertInt;
143+
void (*ptr_GoogleAnalytics_EventParameters_InsertDouble)(GoogleAnalytics_EventParameters* event_parameter_map, const char* key, double value) = &Stub_GoogleAnalytics_EventParameters_InsertDouble;
144+
void (*ptr_GoogleAnalytics_EventParameters_InsertString)(GoogleAnalytics_EventParameters* event_parameter_map, const char* key, const char* value) = &Stub_GoogleAnalytics_EventParameters_InsertString;
145+
void (*ptr_GoogleAnalytics_EventParameters_InsertItemVector)(GoogleAnalytics_EventParameters* event_parameter_map, const char* key, GoogleAnalytics_ItemVector* value) = &Stub_GoogleAnalytics_EventParameters_InsertItemVector;
146+
void (*ptr_GoogleAnalytics_EventParameters_Destroy)(GoogleAnalytics_EventParameters* event_parameter_map) = &Stub_GoogleAnalytics_EventParameters_Destroy;
147+
void (*ptr_GoogleAnalytics_LogEvent)(const char* name, GoogleAnalytics_EventParameters* parameters) = &Stub_GoogleAnalytics_LogEvent;
148+
void (*ptr_GoogleAnalytics_SetUserProperty)(const char* name, const char* value) = &Stub_GoogleAnalytics_SetUserProperty;
149+
void (*ptr_GoogleAnalytics_SetUserId)(const char* user_id) = &Stub_GoogleAnalytics_SetUserId;
150+
void (*ptr_GoogleAnalytics_ResetAnalyticsData)() = &Stub_GoogleAnalytics_ResetAnalyticsData;
151+
void (*ptr_GoogleAnalytics_SetAnalyticsCollectionEnabled)(bool enabled) = &Stub_GoogleAnalytics_SetAnalyticsCollectionEnabled;
152+
153+
// --- Dynamic Loader Function for Windows ---
154+
#if defined(_WIN32)
155+
int FirebaseAnalytics_LoadAnalyticsFunctions(HMODULE dll_handle) {
156+
int count = 0;
157+
158+
if (!dll_handle) {
159+
return count;
160+
}
161+
162+
FARPROC proc_GoogleAnalytics_Item_Create = GetProcAddress(dll_handle, "GoogleAnalytics_Item_Create");
163+
if (proc_GoogleAnalytics_Item_Create) {
164+
ptr_GoogleAnalytics_Item_Create = (GoogleAnalytics_Item* (*)())proc_GoogleAnalytics_Item_Create;
165+
count++;
166+
}
167+
FARPROC proc_GoogleAnalytics_Item_InsertInt = GetProcAddress(dll_handle, "GoogleAnalytics_Item_InsertInt");
168+
if (proc_GoogleAnalytics_Item_InsertInt) {
169+
ptr_GoogleAnalytics_Item_InsertInt = (void (*)(GoogleAnalytics_Item* item, const char* key, int64_t value))proc_GoogleAnalytics_Item_InsertInt;
170+
count++;
171+
}
172+
FARPROC proc_GoogleAnalytics_Item_InsertDouble = GetProcAddress(dll_handle, "GoogleAnalytics_Item_InsertDouble");
173+
if (proc_GoogleAnalytics_Item_InsertDouble) {
174+
ptr_GoogleAnalytics_Item_InsertDouble = (void (*)(GoogleAnalytics_Item* item, const char* key, double value))proc_GoogleAnalytics_Item_InsertDouble;
175+
count++;
176+
}
177+
FARPROC proc_GoogleAnalytics_Item_InsertString = GetProcAddress(dll_handle, "GoogleAnalytics_Item_InsertString");
178+
if (proc_GoogleAnalytics_Item_InsertString) {
179+
ptr_GoogleAnalytics_Item_InsertString = (void (*)(GoogleAnalytics_Item* item, const char* key, const char* value))proc_GoogleAnalytics_Item_InsertString;
180+
count++;
181+
}
182+
FARPROC proc_GoogleAnalytics_Item_Destroy = GetProcAddress(dll_handle, "GoogleAnalytics_Item_Destroy");
183+
if (proc_GoogleAnalytics_Item_Destroy) {
184+
ptr_GoogleAnalytics_Item_Destroy = (void (*)(GoogleAnalytics_Item* item))proc_GoogleAnalytics_Item_Destroy;
185+
count++;
186+
}
187+
FARPROC proc_GoogleAnalytics_ItemVector_Create = GetProcAddress(dll_handle, "GoogleAnalytics_ItemVector_Create");
188+
if (proc_GoogleAnalytics_ItemVector_Create) {
189+
ptr_GoogleAnalytics_ItemVector_Create = (GoogleAnalytics_ItemVector* (*)())proc_GoogleAnalytics_ItemVector_Create;
190+
count++;
191+
}
192+
FARPROC proc_GoogleAnalytics_ItemVector_InsertItem = GetProcAddress(dll_handle, "GoogleAnalytics_ItemVector_InsertItem");
193+
if (proc_GoogleAnalytics_ItemVector_InsertItem) {
194+
ptr_GoogleAnalytics_ItemVector_InsertItem = (void (*)(GoogleAnalytics_ItemVector* item_vector, GoogleAnalytics_Item* item))proc_GoogleAnalytics_ItemVector_InsertItem;
195+
count++;
196+
}
197+
FARPROC proc_GoogleAnalytics_ItemVector_Destroy = GetProcAddress(dll_handle, "GoogleAnalytics_ItemVector_Destroy");
198+
if (proc_GoogleAnalytics_ItemVector_Destroy) {
199+
ptr_GoogleAnalytics_ItemVector_Destroy = (void (*)(GoogleAnalytics_ItemVector* item_vector))proc_GoogleAnalytics_ItemVector_Destroy;
200+
count++;
201+
}
202+
FARPROC proc_GoogleAnalytics_EventParameters_Create = GetProcAddress(dll_handle, "GoogleAnalytics_EventParameters_Create");
203+
if (proc_GoogleAnalytics_EventParameters_Create) {
204+
ptr_GoogleAnalytics_EventParameters_Create = (GoogleAnalytics_EventParameters* (*)())proc_GoogleAnalytics_EventParameters_Create;
205+
count++;
206+
}
207+
FARPROC proc_GoogleAnalytics_EventParameters_InsertInt = GetProcAddress(dll_handle, "GoogleAnalytics_EventParameters_InsertInt");
208+
if (proc_GoogleAnalytics_EventParameters_InsertInt) {
209+
ptr_GoogleAnalytics_EventParameters_InsertInt = (void (*)(GoogleAnalytics_EventParameters* event_parameter_map, const char* key, int64_t value))proc_GoogleAnalytics_EventParameters_InsertInt;
210+
count++;
211+
}
212+
FARPROC proc_GoogleAnalytics_EventParameters_InsertDouble = GetProcAddress(dll_handle, "GoogleAnalytics_EventParameters_InsertDouble");
213+
if (proc_GoogleAnalytics_EventParameters_InsertDouble) {
214+
ptr_GoogleAnalytics_EventParameters_InsertDouble = (void (*)(GoogleAnalytics_EventParameters* event_parameter_map, const char* key, double value))proc_GoogleAnalytics_EventParameters_InsertDouble;
215+
count++;
216+
}
217+
FARPROC proc_GoogleAnalytics_EventParameters_InsertString = GetProcAddress(dll_handle, "GoogleAnalytics_EventParameters_InsertString");
218+
if (proc_GoogleAnalytics_EventParameters_InsertString) {
219+
ptr_GoogleAnalytics_EventParameters_InsertString = (void (*)(GoogleAnalytics_EventParameters* event_parameter_map, const char* key, const char* value))proc_GoogleAnalytics_EventParameters_InsertString;
220+
count++;
221+
}
222+
FARPROC proc_GoogleAnalytics_EventParameters_InsertItemVector = GetProcAddress(dll_handle, "GoogleAnalytics_EventParameters_InsertItemVector");
223+
if (proc_GoogleAnalytics_EventParameters_InsertItemVector) {
224+
ptr_GoogleAnalytics_EventParameters_InsertItemVector = (void (*)(GoogleAnalytics_EventParameters* event_parameter_map, const char* key, GoogleAnalytics_ItemVector* value))proc_GoogleAnalytics_EventParameters_InsertItemVector;
225+
count++;
226+
}
227+
FARPROC proc_GoogleAnalytics_EventParameters_Destroy = GetProcAddress(dll_handle, "GoogleAnalytics_EventParameters_Destroy");
228+
if (proc_GoogleAnalytics_EventParameters_Destroy) {
229+
ptr_GoogleAnalytics_EventParameters_Destroy = (void (*)(GoogleAnalytics_EventParameters* event_parameter_map))proc_GoogleAnalytics_EventParameters_Destroy;
230+
count++;
231+
}
232+
FARPROC proc_GoogleAnalytics_LogEvent = GetProcAddress(dll_handle, "GoogleAnalytics_LogEvent");
233+
if (proc_GoogleAnalytics_LogEvent) {
234+
ptr_GoogleAnalytics_LogEvent = (void (*)(const char* name, GoogleAnalytics_EventParameters* parameters))proc_GoogleAnalytics_LogEvent;
235+
count++;
236+
}
237+
FARPROC proc_GoogleAnalytics_SetUserProperty = GetProcAddress(dll_handle, "GoogleAnalytics_SetUserProperty");
238+
if (proc_GoogleAnalytics_SetUserProperty) {
239+
ptr_GoogleAnalytics_SetUserProperty = (void (*)(const char* name, const char* value))proc_GoogleAnalytics_SetUserProperty;
240+
count++;
241+
}
242+
FARPROC proc_GoogleAnalytics_SetUserId = GetProcAddress(dll_handle, "GoogleAnalytics_SetUserId");
243+
if (proc_GoogleAnalytics_SetUserId) {
244+
ptr_GoogleAnalytics_SetUserId = (void (*)(const char* user_id))proc_GoogleAnalytics_SetUserId;
245+
count++;
246+
}
247+
FARPROC proc_GoogleAnalytics_ResetAnalyticsData = GetProcAddress(dll_handle, "GoogleAnalytics_ResetAnalyticsData");
248+
if (proc_GoogleAnalytics_ResetAnalyticsData) {
249+
ptr_GoogleAnalytics_ResetAnalyticsData = (void (*)())proc_GoogleAnalytics_ResetAnalyticsData;
250+
count++;
251+
}
252+
FARPROC proc_GoogleAnalytics_SetAnalyticsCollectionEnabled = GetProcAddress(dll_handle, "GoogleAnalytics_SetAnalyticsCollectionEnabled");
253+
if (proc_GoogleAnalytics_SetAnalyticsCollectionEnabled) {
254+
ptr_GoogleAnalytics_SetAnalyticsCollectionEnabled = (void (*)(bool enabled))proc_GoogleAnalytics_SetAnalyticsCollectionEnabled;
255+
count++;
256+
}
257+
258+
return count;
259+
}
260+
261+
void FirebaseAnalytics_UnloadAnalyticsFunctions(void) {
262+
ptr_GoogleAnalytics_Item_Create = &Stub_GoogleAnalytics_Item_Create;
263+
ptr_GoogleAnalytics_Item_InsertInt = &Stub_GoogleAnalytics_Item_InsertInt;
264+
ptr_GoogleAnalytics_Item_InsertDouble = &Stub_GoogleAnalytics_Item_InsertDouble;
265+
ptr_GoogleAnalytics_Item_InsertString = &Stub_GoogleAnalytics_Item_InsertString;
266+
ptr_GoogleAnalytics_Item_Destroy = &Stub_GoogleAnalytics_Item_Destroy;
267+
ptr_GoogleAnalytics_ItemVector_Create = &Stub_GoogleAnalytics_ItemVector_Create;
268+
ptr_GoogleAnalytics_ItemVector_InsertItem = &Stub_GoogleAnalytics_ItemVector_InsertItem;
269+
ptr_GoogleAnalytics_ItemVector_Destroy = &Stub_GoogleAnalytics_ItemVector_Destroy;
270+
ptr_GoogleAnalytics_EventParameters_Create = &Stub_GoogleAnalytics_EventParameters_Create;
271+
ptr_GoogleAnalytics_EventParameters_InsertInt = &Stub_GoogleAnalytics_EventParameters_InsertInt;
272+
ptr_GoogleAnalytics_EventParameters_InsertDouble = &Stub_GoogleAnalytics_EventParameters_InsertDouble;
273+
ptr_GoogleAnalytics_EventParameters_InsertString = &Stub_GoogleAnalytics_EventParameters_InsertString;
274+
ptr_GoogleAnalytics_EventParameters_InsertItemVector = &Stub_GoogleAnalytics_EventParameters_InsertItemVector;
275+
ptr_GoogleAnalytics_EventParameters_Destroy = &Stub_GoogleAnalytics_EventParameters_Destroy;
276+
ptr_GoogleAnalytics_LogEvent = &Stub_GoogleAnalytics_LogEvent;
277+
ptr_GoogleAnalytics_SetUserProperty = &Stub_GoogleAnalytics_SetUserProperty;
278+
ptr_GoogleAnalytics_SetUserId = &Stub_GoogleAnalytics_SetUserId;
279+
ptr_GoogleAnalytics_ResetAnalyticsData = &Stub_GoogleAnalytics_ResetAnalyticsData;
280+
ptr_GoogleAnalytics_SetAnalyticsCollectionEnabled = &Stub_GoogleAnalytics_SetAnalyticsCollectionEnabled;
281+
}
282+
283+
#endif // defined(_WIN32)
284+
// clang-format on

0 commit comments

Comments
 (0)