1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim:set ts=2 sw=2 sts=2 et cindent: */
3 /* This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
7 #ifndef __DEFAULT_BROWSER_AGENT_COMMON_H__
8 #define __DEFAULT_BROWSER_AGENT_COMMON_H__
10 #include "mozilla/WinHeaderOnlyUtils.h"
12 #define AGENT_REGKEY_NAME \
13 L"SOFTWARE\\" MOZ_APP_VENDOR "\\" MOZ_APP_BASENAME "\\Default Browser Agent"
15 namespace mozilla::default_agent
{
17 ULONGLONG
GetCurrentTimestamp();
18 // Passing a zero as the second argument (or omitting it) causes the function
19 // to get the current time rather than using a passed value.
20 ULONGLONG
SecondsPassedSince(ULONGLONG initialTime
, ULONGLONG currentTime
= 0);
22 using FilePathResult
= mozilla::WindowsErrorResult
<std::wstring
>;
23 FilePathResult
GenerateUUIDStr();
25 FilePathResult
GetRelativeBinaryPath(const wchar_t* suffix
);
27 } // namespace mozilla::default_agent
29 #endif // __DEFAULT_BROWSER_AGENT_COMMON_H__