深入浅出 - Android系统移植与平台开发(十四) - Sensor HAL框架分析之四

 

Sensor本地封装类SensorDevice

SensorDevice是在本地代码中SensorService对Sensor设备的抽象类型封装,它封装了传感器硬件的硬件操作,该类继承了Singleton类,通过getInstance方法获得单例模式设备操作对象:

@frameworks/base/services/sensorservice/SensorDevice.h

class SensorDevice : public Singleton<SensorDevice> {
    friend class Singleton<SensorDevice>;
   struct sensors_poll_device_t* mSensorDevice;
    struct sensors_module_t* mSensorModule;
    mutable Mutex mLock; 	// protect mActivationCount[].rates
    // fixed-size array after construction
    struct Info {
        Info() : delay(0) { }
        KeyedVector<void*, nsecs_t> rates;
        nsecs_t delay;
status_t setDelayForIdent(void* ident, int64_t ns);
        nsecs_t selectDelay();
    };
    DefaultKeyedVector<int, Info> mActivationCount;
SensorDevice();
public:
    ssize_t getSensorList(sensor_t const** list);
    status_t initCheck() const;
    ssize_t p
mr_raptor CSDN认证博客专家 精益工程 驱动开发
北京同远天下创始人,专注于企业服务,企业系统解决方案,物联网,智慧社区,产品有众狐邮箱验证www.verify-mail.net,众狐微客服系统,著有《深入浅出嵌入式底层软件开发》北航出版社
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 代码科技 设计师:Amelia_0503 返回首页