wakeup_supported: false
};
-std::vector<uint16_t> accel_device::event_ids;
+std::vector<uint32_t> accel_device::event_ids;
accel_device::accel_device()
: m_node_handle(-1)
return 1;
}
-bool accel_device::enable(uint16_t id)
+bool accel_device::enable(uint32_t id)
{
util::set_enable_node(m_enable_node, m_sensorhub_controlled, true, SENSORHUB_ACCELEROMETER_ENABLE_BIT);
set_interval(id, m_polling_interval);
return true;
}
-bool accel_device::disable(uint16_t id)
+bool accel_device::disable(uint32_t id)
{
util::set_enable_node(m_enable_node, m_sensorhub_controlled, false, SENSORHUB_ACCELEROMETER_ENABLE_BIT);
return true;
}
-bool accel_device::set_interval(uint16_t id, unsigned long val)
+bool accel_device::set_interval(uint32_t id, unsigned long val)
{
unsigned long long polling_interval_ns;
return true;
}
-bool accel_device::set_batch_latency(uint16_t id, unsigned long val)
+bool accel_device::set_batch_latency(uint32_t id, unsigned long val)
{
return false;
}
-bool accel_device::set_attribute(uint16_t id, int32_t attribute, int32_t value)
+bool accel_device::set_attribute(uint32_t id, int32_t attribute, int32_t value)
{
return false;
}
-bool accel_device::set_attribute_str(uint16_t id, char *attribute, char *value, int value_len)
+bool accel_device::set_attribute_str(uint32_t id, char *attribute, char *value, int value_len)
{
return false;
}
return true;
}
-int accel_device::read_fd(uint16_t **ids)
+int accel_device::read_fd(uint32_t **ids)
{
if (!update_value_input_event()) {
DBG("Failed to update value");
return event_ids.size();
}
-int accel_device::get_data(uint16_t id, sensor_data_t **data, int *length)
+int accel_device::get_data(uint32_t id, sensor_data_t **data, int *length)
{
int remains = 1;
sensor_data_t *sensor_data;
return --remains;
}
-bool accel_device::flush(uint16_t id)
+bool accel_device::flush(uint32_t id)
{
return false;
}
int get_poll_fd(void);
int get_sensors(const sensor_handle_t **sensors);
- bool enable(uint16_t id);
- bool disable(uint16_t id);
+ bool enable(uint32_t id);
+ bool disable(uint32_t id);
- bool set_interval(uint16_t id, unsigned long val);
- bool set_batch_latency(uint16_t id, unsigned long val);
- bool set_attribute(uint16_t id, int32_t attribute, int32_t value);
- bool set_attribute_str(uint16_t id, char *attribute, char *value, int value_len);
+ bool set_interval(uint32_t id, unsigned long val);
+ bool set_batch_latency(uint32_t id, unsigned long val);
+ bool set_attribute(uint32_t id, int32_t attribute, int32_t value);
+ bool set_attribute_str(uint32_t id, char *attribute, char *value, int value_len);
- int read_fd(uint16_t **ids);
- int get_data(uint16_t id, sensor_data_t **data, int *length);
+ int read_fd(uint32_t **ids);
+ int get_data(uint32_t id, sensor_data_t **data, int *length);
- bool flush(uint16_t id);
+ bool flush(uint32_t id);
private:
int m_node_handle;
std::string m_enable_node;
std::string m_interval_node;
- static std::vector<uint16_t> event_ids;
+ static std::vector<uint32_t> event_ids;
bool update_value_input_event(void);
void raw_to_base(sensor_data_t *data);
wakeup_supported: false
};
-std::vector<uint16_t> proxi_device::event_ids;
+std::vector<uint32_t> proxi_device::event_ids;
proxi_device::proxi_device()
: m_node_handle(-1)
return 1;
}
-bool proxi_device::enable(uint16_t id)
+bool proxi_device::enable(uint32_t id)
{
util::set_enable_node(m_enable_node, m_sensorhub_controlled, true, SENSORHUB_PROXIMITY_ENABLE_BIT);
return true;
}
-bool proxi_device::disable(uint16_t id)
+bool proxi_device::disable(uint32_t id)
{
util::set_enable_node(m_enable_node, m_sensorhub_controlled, false, SENSORHUB_PROXIMITY_ENABLE_BIT);
return true;
}
-bool proxi_device::set_interval(uint16_t id, unsigned long interval_ms)
+bool proxi_device::set_interval(uint32_t id, unsigned long interval_ms)
{
return true;
}
-bool proxi_device::set_batch_latency(uint16_t id, unsigned long val)
+bool proxi_device::set_batch_latency(uint32_t id, unsigned long val)
{
return false;
}
-bool proxi_device::set_attribute(uint16_t id, int32_t attribute, int32_t value)
+bool proxi_device::set_attribute(uint32_t id, int32_t attribute, int32_t value)
{
return false;
}
-bool proxi_device::set_attribute_str(uint16_t id, char *attribute, char *value, int value_len)
+bool proxi_device::set_attribute_str(uint32_t id, char *attribute, char *value, int value_len)
{
return false;
}
return false;
}
-int proxi_device::read_fd(uint16_t **ids)
+int proxi_device::read_fd(uint32_t **ids)
{
if (!update_value_input_event()) {
DBG("Failed to update value");
return event_ids.size();
}
-int proxi_device::get_data(uint16_t id, sensor_data_t **data, int *length)
+int proxi_device::get_data(uint32_t id, sensor_data_t **data, int *length)
{
int remains = 1;
sensor_data_t *sensor_data;
return --remains;
}
-bool proxi_device::flush(uint16_t id)
+bool proxi_device::flush(uint32_t id)
{
return false;
}
int get_poll_fd(void);
int get_sensors(const sensor_handle_t **sensors);
- bool enable(uint16_t id);
- bool disable(uint16_t id);
+ bool enable(uint32_t id);
+ bool disable(uint32_t id);
- bool set_interval(uint16_t id, unsigned long val);
- bool set_batch_latency(uint16_t id, unsigned long val);
- bool set_attribute(uint16_t id, int32_t attribute, int32_t value);
- bool set_attribute_str(uint16_t id, char *attribute, char *value, int value_len);
+ bool set_interval(uint32_t id, unsigned long val);
+ bool set_batch_latency(uint32_t id, unsigned long val);
+ bool set_attribute(uint32_t id, int32_t attribute, int32_t value);
+ bool set_attribute_str(uint32_t id, char *attribute, char *value, int value_len);
- int read_fd(uint16_t **ids);
- int get_data(uint16_t id, sensor_data_t **data, int *length);
+ int read_fd(uint32_t **ids);
+ int get_data(uint32_t id, sensor_data_t **data, int *length);
- bool flush(uint16_t id);
+ bool flush(uint32_t id);
private:
int m_node_handle;
std::string m_data_node;
std::string m_enable_node;
- static std::vector<uint16_t> event_ids;
+ static std::vector<uint32_t> event_ids;
bool update_value_input_event(void);
};
* ID can be assigned from HAL developer. so it has to be unique in HAL.
*/
typedef struct sensor_handle_t {
- uint16_t id;
+ uint32_t id;
const char *name;
sensor_device_type type;
unsigned int event_type; // for Internal API
virtual int get_poll_fd(void) = 0;
virtual int get_sensors(const sensor_handle_t **sensors) = 0;
- virtual bool enable(uint16_t id) = 0;
- virtual bool disable(uint16_t id) = 0;
+ virtual bool enable(uint32_t id) = 0;
+ virtual bool disable(uint32_t id) = 0;
- virtual bool set_interval(uint16_t id, unsigned long val) = 0;
- virtual bool set_batch_latency(uint16_t id, unsigned long val) = 0;
- virtual bool set_attribute(uint16_t id, int32_t attribute, int32_t value) = 0;
- virtual bool set_attribute_str(uint16_t id, char *attribute, char *value, int value_len) = 0;
+ virtual bool set_interval(uint32_t id, unsigned long val) = 0;
+ virtual bool set_batch_latency(uint32_t id, unsigned long val) = 0;
+ virtual bool set_attribute(uint32_t id, int32_t attribute, int32_t value) = 0;
+ virtual bool set_attribute_str(uint32_t id, char *attribute, char *value, int value_len) = 0;
- virtual int read_fd(uint16_t **ids) = 0;
- virtual int get_data(uint16_t id, sensor_data_t **data, int *length) = 0;
+ virtual int read_fd(uint32_t **ids) = 0;
+ virtual int get_data(uint32_t id, sensor_data_t **data, int *length) = 0;
- virtual bool flush(uint16_t id) = 0;
+ virtual bool flush(uint32_t id) = 0;
};
#endif /* __cplusplus */
return size;
}
-bool sensorhub_device::enable(uint16_t id)
+bool sensorhub_device::enable(uint32_t id)
{
system_state_handler::get_instance().initialize();
return sensor->enable();
}
-bool sensorhub_device::disable(uint16_t id)
+bool sensorhub_device::disable(uint32_t id)
{
system_state_handler::get_instance().finalize();
return sensor->disable();
}
-bool sensorhub_device::set_interval(uint16_t id, unsigned long val)
+bool sensorhub_device::set_interval(uint32_t id, unsigned long val)
{
sensorhub_sensor *sensor = manager->get_sensor(id);
return sensor->set_interval(val);
}
-bool sensorhub_device::set_batch_latency(uint16_t id, unsigned long val)
+bool sensorhub_device::set_batch_latency(uint32_t id, unsigned long val)
{
sensorhub_sensor *sensor = manager->get_sensor(id);
return sensor->set_batch_latency(val);
}
-bool sensorhub_device::set_attribute(uint16_t id, int32_t attribute, int32_t value)
+bool sensorhub_device::set_attribute(uint32_t id, int32_t attribute, int32_t value)
{
int ret;
return true;
}
-bool sensorhub_device::set_attribute_str(uint16_t id, char *attribute, char *value, int value_len)
+bool sensorhub_device::set_attribute_str(uint32_t id, char *attribute, char *value, int value_len)
{
int ret;
return true;
}
-int sensorhub_device::read_fd(uint16_t **ids)
+int sensorhub_device::read_fd(uint32_t **ids)
{
sensorhub_data_t data;
return size;
}
-int sensorhub_device::get_data(uint16_t id, sensor_data_t **data, int *length)
+int sensorhub_device::get_data(uint32_t id, sensor_data_t **data, int *length)
{
int remains = 1;
return remains;
}
-bool sensorhub_device::flush(uint16_t id)
+bool sensorhub_device::flush(uint32_t id)
{
return false;
}
int get_poll_fd(void);
int get_sensors(const sensor_handle_t **sensors);
- bool enable(uint16_t id);
- bool disable(uint16_t id);
+ bool enable(uint32_t id);
+ bool disable(uint32_t id);
- bool set_interval(uint16_t id, unsigned long val);
- bool set_batch_latency(uint16_t id, unsigned long val);
- bool set_attribute(uint16_t id, int32_t attribute, int32_t value);
- bool set_attribute_str(uint16_t id, char *key, char *value, int value_len);
+ bool set_interval(uint32_t id, unsigned long val);
+ bool set_batch_latency(uint32_t id, unsigned long val);
+ bool set_attribute(uint32_t id, int32_t attribute, int32_t value);
+ bool set_attribute_str(uint32_t id, char *key, char *value, int value_len);
- int read_fd(uint16_t **ids);
- int get_data(uint16_t id, sensor_data_t **data, int *length);
+ int read_fd(uint32_t **ids);
+ int get_data(uint32_t id, sensor_data_t **data, int *length);
- bool flush(uint16_t id);
+ bool flush(uint32_t id);
private:
sensorhub_manager *manager;
sensorhub_controller *controller;
- std::vector<uint16_t> event_ids;
+ std::vector<uint32_t> event_ids;
int parse(const char *hub_data, int data_len);
int parse_data(const char *hub_data, int data_len);
}
}
-sensorhub_sensor *sensorhub_manager::get_sensor(uint16_t id)
+sensorhub_sensor *sensorhub_manager::get_sensor(uint32_t id)
{
return m_id_sensor[id];
}
static sensorhub_manager& get_instance();
virtual ~sensorhub_manager();
- sensorhub_sensor *get_sensor(uint16_t id);
+ sensorhub_sensor *get_sensor(uint32_t id);
sensorhub_sensor *get_sensor(char key);
int get_sensors(const sensor_handle_t **sensors);
private:
sensorhub_manager();
- std::map<uint16_t, sensorhub_sensor *> m_id_sensor;
+ std::map<uint32_t, sensorhub_sensor *> m_id_sensor;
std::map<char, sensorhub_sensor *> m_key_sensor;
std::vector<sensor_handle_t> m_handles;
};