You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							27 lines
						
					
					
						
							653 B
						
					
					
				
			
		
		
	
	
							27 lines
						
					
					
						
							653 B
						
					
					
				#include "light_sensor.h"
 | 
						|
 | 
						|
#include <string>
 | 
						|
 | 
						|
#include "common/timing.h"
 | 
						|
#include "system/sensord/sensors/constants.h"
 | 
						|
 | 
						|
LightSensor::LightSensor(std::string filename) : FileSensor(filename) {}
 | 
						|
 | 
						|
bool LightSensor::get_event(MessageBuilder &msg, uint64_t ts) {
 | 
						|
  uint64_t start_time = nanos_since_boot();
 | 
						|
  file.clear();
 | 
						|
  file.seekg(0);
 | 
						|
 | 
						|
  int value;
 | 
						|
  file >> value;
 | 
						|
 | 
						|
  auto event = msg.initEvent().initLightSensor();
 | 
						|
  event.setSource(cereal::SensorEventData::SensorSource::RPR0521);
 | 
						|
  event.setVersion(1);
 | 
						|
  event.setSensor(SENSOR_LIGHT);
 | 
						|
  event.setType(SENSOR_TYPE_LIGHT);
 | 
						|
  event.setTimestamp(start_time);
 | 
						|
  event.setLight(value);
 | 
						|
 | 
						|
  return true;
 | 
						|
}
 | 
						|
 |