Generated file

Copy as Markdown

Other Tools

// -*- mode: C++ -*-
// AUTOGENERATED BY glean_parser. DO NOT EDIT.
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef mozilla_GleanAiwindowMetrics_h
#define mozilla_GleanAiwindowMetrics_h
#include "mozilla/glean/bindings/MetricTypes.h"
namespace mozilla::glean {
namespace smart_window {
/**
* generated from smart_window.chat_previous_session
*/
struct ChatPreviousSessionExtra {
mozilla::Maybe<uint32_t> tabs;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (tabs) {
extraKeys.AppendElement()->AssignASCII("tabs");
extraValues.AppendElement()->AppendInt(tabs.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* User clicks on previous session button
*/
constexpr impl::EventMetric<ChatPreviousSessionExtra> chat_previous_session(220);
/**
* generated from smart_window.chat_retrieved
*/
struct ChatRetrievedExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> numMessages;
mozilla::Maybe<uint32_t> timeDelta;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (numMessages) {
extraKeys.AppendElement()->AssignASCII("num_messages");
extraValues.AppendElement()->AppendInt(numMessages.value());
}
if (timeDelta) {
extraKeys.AppendElement()->AssignASCII("time_delta");
extraValues.AppendElement()->AppendInt(timeDelta.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* User retrieves a chat from history
*/
constexpr impl::EventMetric<ChatRetrievedExtra> chat_retrieved(221);
/**
* generated from smart_window.chat_submit
*/
struct ChatSubmitExtra {
mozilla::Maybe<nsCString> chatId;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* Recorded when the user submits a chat entry
*/
constexpr impl::EventMetric<ChatSubmitExtra> chat_submit(222);
/**
* generated from smart_window.get_page_content
*/
struct GetPageContentExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<uint32_t> length;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> messageSeq;
mozilla::Maybe<uint32_t> time;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (length) {
extraKeys.AppendElement()->AssignASCII("length");
extraValues.AppendElement()->AppendInt(length.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (messageSeq) {
extraKeys.AppendElement()->AssignASCII("message_seq");
extraValues.AppendElement()->AppendInt(messageSeq.value());
}
if (time) {
extraKeys.AppendElement()->AssignASCII("time");
extraValues.AppendElement()->AppendInt(time.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* Browser reads the contents of a tab to include in chat result
*/
constexpr impl::EventMetric<GetPageContentExtra> get_page_content(223);
/**
* generated from smart_window.history_click
*/
struct HistoryClickExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> messageSeq;
mozilla::Maybe<uint32_t> position;
mozilla::Maybe<uint32_t> total;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (messageSeq) {
extraKeys.AppendElement()->AssignASCII("message_seq");
extraValues.AppendElement()->AppendInt(messageSeq.value());
}
if (position) {
extraKeys.AppendElement()->AssignASCII("position");
extraValues.AppendElement()->AppendInt(position.value());
}
if (total) {
extraKeys.AppendElement()->AssignASCII("total");
extraValues.AppendElement()->AppendInt(total.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* User clicks on a history result
*/
constexpr impl::EventMetric<HistoryClickExtra> history_click(224);
/**
* generated from smart_window.history_displayed
*/
struct HistoryDisplayedExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> messageSeq;
mozilla::Maybe<nsCString> reason;
mozilla::Maybe<uint32_t> total;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (messageSeq) {
extraKeys.AppendElement()->AssignASCII("message_seq");
extraValues.AppendElement()->AppendInt(messageSeq.value());
}
if (reason) {
extraKeys.AppendElement()->AssignASCII("reason");
extraValues.EmplaceBack(reason.value());
}
if (total) {
extraKeys.AppendElement()->AssignASCII("total");
extraValues.AppendElement()->AppendInt(total.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* Results from Ask History are displayed to the user
*/
constexpr impl::EventMetric<HistoryDisplayedExtra> history_displayed(225);
/**
* generated from smart_window.link_click
*/
struct LinkClickExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<nsCString> linkType;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> messageSeq;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (linkType) {
extraKeys.AppendElement()->AssignASCII("link_type");
extraValues.EmplaceBack(linkType.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (messageSeq) {
extraKeys.AppendElement()->AssignASCII("message_seq");
extraValues.AppendElement()->AppendInt(messageSeq.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* User clicks a link within the response
*/
constexpr impl::EventMetric<LinkClickExtra> link_click(226);
/**
* generated from smart_window.memories_applied_impression
*/
struct MemoriesAppliedImpressionExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> messageSeq;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (messageSeq) {
extraKeys.AppendElement()->AssignASCII("message_seq");
extraValues.AppendElement()->AppendInt(messageSeq.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* Impression of memories applied tooltip
*/
constexpr impl::EventMetric<MemoriesAppliedImpressionExtra> memories_applied_impression(227);
/**
* generated from smart_window.memories_toggle
*/
struct MemoriesToggleExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> memories;
mozilla::Maybe<uint32_t> messageSeq;
mozilla::Maybe<bool> toggle;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (memories) {
extraKeys.AppendElement()->AssignASCII("memories");
extraValues.AppendElement()->AppendInt(memories.value());
}
if (messageSeq) {
extraKeys.AppendElement()->AssignASCII("message_seq");
extraValues.AppendElement()->AppendInt(messageSeq.value());
}
if (toggle) {
extraKeys.AppendElement()->AssignASCII("toggle");
extraValues.AppendElement()->AssignASCII(toggle.value() ? "true" : "false");
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* Recorded when the user clicks the toggle to turn memories on or off for that chat
*/
constexpr impl::EventMetric<MemoriesToggleExtra> memories_toggle(228);
/**
* generated from smart_window.memories_view
*/
struct MemoriesViewExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<nsCString> display;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> messageSeq;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (display) {
extraKeys.AppendElement()->AssignASCII("display");
extraValues.EmplaceBack(display.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (messageSeq) {
extraKeys.AppendElement()->AssignASCII("message_seq");
extraValues.AppendElement()->AppendInt(messageSeq.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* User views applied memories via hover, click, or inline display
*/
constexpr impl::EventMetric<MemoriesViewExtra> memories_view(229);
/**
* generated from smart_window.memory_applied
*/
struct MemoryAppliedExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> messageSeq;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (messageSeq) {
extraKeys.AppendElement()->AssignASCII("message_seq");
extraValues.AppendElement()->AppendInt(messageSeq.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* Triggered when a memory is used as part of query to provide response/results to user
*/
constexpr impl::EventMetric<MemoryAppliedExtra> memory_applied(230);
/**
* generated from smart_window.memory_applied_click
*/
struct MemoryAppliedClickExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> messageSeq;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (messageSeq) {
extraKeys.AppendElement()->AssignASCII("message_seq");
extraValues.AppendElement()->AppendInt(messageSeq.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* User clicks on memories applied tooltip
*/
constexpr impl::EventMetric<MemoryAppliedClickExtra> memory_applied_click(231);
/**
* generated from smart_window.memory_removed_panel
*/
struct MemoryRemovedPanelExtra {
mozilla::Maybe<uint32_t> memories;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (memories) {
extraKeys.AppendElement()->AssignASCII("memories");
extraValues.AppendElement()->AppendInt(memories.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* User removes a single memory from the memories panel
*/
constexpr impl::EventMetric<MemoryRemovedPanelExtra> memory_removed_panel(232);
/**
* generated from smart_window.quick_prompt_clicked
*/
struct QuickPromptClickedExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> messageSeq;
mozilla::Maybe<bool> starter;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (messageSeq) {
extraKeys.AppendElement()->AssignASCII("message_seq");
extraValues.AppendElement()->AppendInt(messageSeq.value());
}
if (starter) {
extraKeys.AppendElement()->AssignASCII("starter");
extraValues.AppendElement()->AssignASCII(starter.value() ? "true" : "false");
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* Recorded when the user selects a prompt suggestion in smart window mode
*/
constexpr impl::EventMetric<QuickPromptClickedExtra> quick_prompt_clicked(233);
/**
* generated from smart_window.quick_prompt_displayed
*/
struct QuickPromptDisplayedExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> messageSeq;
mozilla::Maybe<uint32_t> prompts;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (messageSeq) {
extraKeys.AppendElement()->AssignASCII("message_seq");
extraValues.AppendElement()->AppendInt(messageSeq.value());
}
if (prompts) {
extraKeys.AppendElement()->AssignASCII("prompts");
extraValues.AppendElement()->AppendInt(prompts.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* User is presented with one or more quick prompts
*/
constexpr impl::EventMetric<QuickPromptDisplayedExtra> quick_prompt_displayed(234);
/**
* generated from smart_window.retry_no_memories
*/
struct RetryNoMemoriesExtra {
mozilla::Maybe<nsCString> chatId;
mozilla::Maybe<nsCString> location;
mozilla::Maybe<uint32_t> messageSeq;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (chatId) {
extraKeys.AppendElement()->AssignASCII("chat_id");
extraValues.EmplaceBack(chatId.value());
}
if (location) {
extraKeys.AppendElement()->AssignASCII("location");
extraValues.EmplaceBack(location.value());
}
if (messageSeq) {
extraKeys.AppendElement()->AssignASCII("message_seq");
extraValues.AppendElement()->AppendInt(messageSeq.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* User selects retry without memories
*/
constexpr impl::EventMetric<RetryNoMemoriesExtra> retry_no_memories(235);
}
} // namespace mozilla::glean
#endif // mozilla_GleanAiwindowMetrics_h