2011-12-17 13:04:51 -08:00
|
|
|
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
|
|
/* vim: set sw=2 ts=8 et ft=cpp : */
|
2012-05-21 04:12:37 -07:00
|
|
|
/* 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/. */
|
2011-12-17 13:04:51 -08:00
|
|
|
|
|
|
|
#ifndef mozilla_HalInternal_h
|
|
|
|
#define mozilla_HalInternal_h 1
|
|
|
|
|
|
|
|
/*
|
|
|
|
* This file is included by HalImpl.h and HalSandbox.h with a mechanism similar
|
|
|
|
* to Hal.h. That means those headers set MOZ_HAL_NAMESPACE to specify in which
|
|
|
|
* namespace the internal functions should appear.
|
|
|
|
*
|
|
|
|
* The difference between Hal.h and HalInternal.h is that methods declared in
|
|
|
|
* HalInternal.h don't appear in the hal namespace. That also means this file
|
|
|
|
* should not be included except by HalInternal.h and HalSandbox.h.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef MOZ_HAL_NAMESPACE
|
|
|
|
# error "You shouldn't directly include HalInternal.h!"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
namespace mozilla {
|
|
|
|
namespace MOZ_HAL_NAMESPACE {
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Enables battery notifications from the backend.
|
|
|
|
*/
|
|
|
|
void EnableBatteryNotifications();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Disables battery notifications from the backend.
|
|
|
|
*/
|
|
|
|
void DisableBatteryNotifications();
|
|
|
|
|
2012-01-16 05:39:57 -08:00
|
|
|
/**
|
|
|
|
* Enables network notifications from the backend.
|
|
|
|
*/
|
|
|
|
void EnableNetworkNotifications();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Disables network notifications from the backend.
|
|
|
|
*/
|
|
|
|
void DisableNetworkNotifications();
|
|
|
|
|
2012-03-13 09:42:46 -07:00
|
|
|
/**
|
|
|
|
* Enables screen orientation notifications from the backend.
|
|
|
|
*/
|
2012-05-08 14:36:07 -07:00
|
|
|
void EnableScreenConfigurationNotifications();
|
2012-03-13 09:42:46 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Disables screen orientation notifications from the backend.
|
|
|
|
*/
|
2012-05-08 14:36:07 -07:00
|
|
|
void DisableScreenConfigurationNotifications();
|
2012-03-13 09:42:46 -07:00
|
|
|
|
2012-04-22 11:09:22 -07:00
|
|
|
/**
|
|
|
|
* Enable switch notifications from the backend
|
|
|
|
*/
|
|
|
|
void EnableSwitchNotifications(hal::SwitchDevice aDevice);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Disable switch notifications from the backend
|
|
|
|
*/
|
|
|
|
void DisableSwitchNotifications(hal::SwitchDevice aDevice);
|
|
|
|
|
2012-07-06 03:42:10 -07:00
|
|
|
/**
|
|
|
|
* Enable alarm notifications from the backend.
|
|
|
|
*/
|
|
|
|
bool EnableAlarm();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Disable alarm notifications from the backend.
|
|
|
|
*/
|
|
|
|
void DisableAlarm();
|
|
|
|
|
2012-09-23 10:00:32 -07:00
|
|
|
/**
|
2012-10-23 00:15:43 -07:00
|
|
|
* Enable system clock change notifications from the backend.
|
2012-09-23 10:00:32 -07:00
|
|
|
*/
|
2012-10-23 00:15:43 -07:00
|
|
|
void EnableSystemClockChangeNotifications();
|
2012-09-23 10:00:32 -07:00
|
|
|
|
|
|
|
/**
|
2012-10-23 00:15:43 -07:00
|
|
|
* Disable system clock change notifications from the backend.
|
2012-09-23 10:00:32 -07:00
|
|
|
*/
|
2012-10-23 00:15:43 -07:00
|
|
|
void DisableSystemClockChangeNotifications();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Enable system timezone change notifications from the backend.
|
|
|
|
*/
|
|
|
|
void EnableSystemTimezoneChangeNotifications();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Disable system timezone change notifications from the backend.
|
|
|
|
*/
|
|
|
|
void DisableSystemTimezoneChangeNotifications();
|
2012-09-23 10:00:32 -07:00
|
|
|
|
2013-02-11 20:09:25 -08:00
|
|
|
/**
|
|
|
|
* Has the child-side HAL IPC object been destroyed? If so, you shouldn't send
|
|
|
|
* messages to hal_sandbox.
|
|
|
|
*/
|
|
|
|
bool HalChildDestroyed();
|
2011-12-17 13:04:51 -08:00
|
|
|
} // namespace MOZ_HAL_NAMESPACE
|
|
|
|
} // namespace mozilla
|
|
|
|
|
|
|
|
#endif // mozilla_HalInternal_h
|