1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/hal/gonk/UeventPoller.h Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,49 @@ 1.4 +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 1.5 +/* Copyright 2012 Mozilla Foundation and Mozilla contributors 1.6 + * 1.7 + * Licensed under the Apache License, Version 2.0 (the "License"); 1.8 + * you may not use this file except in compliance with the License. 1.9 + * You may obtain a copy of the License at 1.10 + * 1.11 + * http://www.apache.org/licenses/LICENSE-2.0 1.12 + * 1.13 + * Unless required by applicable law or agreed to in writing, software 1.14 + * distributed under the License is distributed on an "AS IS" BASIS, 1.15 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1.16 + * See the License for the specific language governing permissions and 1.17 + * limitations under the License. 1.18 + */ 1.19 + 1.20 +#ifndef _mozilla_uevent_poller_h_ 1.21 +#define _mozilla_uevent_poller_h_ 1.22 + 1.23 +#include <sysutils/NetlinkEvent.h> 1.24 +#include "mozilla/Observer.h" 1.25 + 1.26 +class NetlinkEvent; 1.27 + 1.28 +namespace mozilla { 1.29 +namespace hal_impl { 1.30 + 1.31 +typedef mozilla::Observer<NetlinkEvent> IUeventObserver; 1.32 + 1.33 +/** 1.34 + * Register for uevent notification. Note that the method should run on the 1.35 + * <b> IO Thread </b> 1.36 + * @aObserver the observer to be added. The observer's Notify() is only called 1.37 + * on the <b> IO Thread </b> 1.38 + */ 1.39 +void RegisterUeventListener(IUeventObserver *aObserver); 1.40 + 1.41 +/** 1.42 + * Unregister for uevent notification. Note that the method should run on the 1.43 + * <b> IO Thread </b> 1.44 + * @aObserver the observer to be removed 1.45 + */ 1.46 +void UnregisterUeventListener(IUeventObserver *aObserver); 1.47 + 1.48 +} 1.49 +} 1.50 + 1.51 +#endif 1.52 +