Bug 1890277: part 2) Add `require-trusted-types-for` directive to CSP parser, guarded...
[gecko.git] / hal / HalInternal.h
bloba26e0a985a290298797cbb43f429ac3ff4216903
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set sw=2 ts=8 et ft=cpp : */
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 mozilla_HalInternal_h
8 #define mozilla_HalInternal_h 1
11 * This file is included by HalImpl.h and HalSandbox.h with a mechanism similar
12 * to Hal.h. That means those headers set MOZ_HAL_NAMESPACE to specify in which
13 * namespace the internal functions should appear.
15 * The difference between Hal.h and HalInternal.h is that methods declared in
16 * HalInternal.h don't appear in the hal namespace. That also means this file
17 * should not be included except by HalImpl.h and HalSandbox.h.
20 #ifndef MOZ_HAL_NAMESPACE
21 # error "You shouldn't directly include HalInternal.h!"
22 #endif
24 namespace mozilla {
25 namespace MOZ_HAL_NAMESPACE {
27 /**
28 * Enables battery notifications from the backend.
30 void EnableBatteryNotifications();
32 /**
33 * Disables battery notifications from the backend.
35 void DisableBatteryNotifications();
37 /**
38 * Enables network notifications from the backend.
40 void EnableNetworkNotifications();
42 /**
43 * Disables network notifications from the backend.
45 void DisableNetworkNotifications();
47 /**
48 * Enables screen orientation notifications from the backend.
50 void EnableScreenConfigurationNotifications();
52 /**
53 * Disables screen orientation notifications from the backend.
55 void DisableScreenConfigurationNotifications();
57 /**
58 * Has the child-side HAL IPC object been destroyed? If so, you shouldn't send
59 * messages to hal_sandbox.
61 bool HalChildDestroyed();
62 } // namespace MOZ_HAL_NAMESPACE
63 } // namespace mozilla
65 #endif // mozilla_HalInternal_h