1 /* 2 * Copyright (C) 2010 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #include <stdint.h> 18 #include <sys/types.h> 19 20 #include <cutils/log.h> 21 22 #include "SensorInterface.h" 23 24 namespace android { 25 // --------------------------------------------------------------------------- 26 27 SensorInterface::~SensorInterface() 28 { 29 } 30 31 // --------------------------------------------------------------------------- 32 33 HardwareSensor::HardwareSensor(const sensor_t& sensor) 34 : mSensorDevice(SensorDevice::getInstance()), 35 mSensor(&sensor), mEnabled(false) 36 { 37 LOGI("%s", sensor.name); 38 } 39 40 HardwareSensor::~HardwareSensor() { 41 } 42 43 bool HardwareSensor::process(sensors_event_t* outEvent, 44 const sensors_event_t& event) { 45 *outEvent = event; 46 return true; 47 } 48 49 bool HardwareSensor::isEnabled() const { 50 return mEnabled; 51 } 52 53 status_t HardwareSensor::activate(void* ident,bool enabled) { 54 status_t err = mSensorDevice.activate(ident, mSensor.getHandle(), enabled); 55 if (err == NO_ERROR) 56 mEnabled = enabled; 57 return err; 58 } 59 60 status_t HardwareSensor::setDelay(void* ident, int handle, int64_t ns) { 61 return mSensorDevice.setDelay(ident, handle, ns); 62 } 63 64 Sensor HardwareSensor::getSensor() const { 65 return mSensor; 66 } 67 68 69 // --------------------------------------------------------------------------- 70 }; // namespace android 71