about summary refs log tree commit diff
path: root/lri-proto/proto/lightheader.proto
blob: 6a729bb96a7279c988ce7196be2eb9aebda99fc9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
syntax = "proto2";

package ltpb;

import "camera_module.proto";
import "camera_id.proto";
import "time_stamp.proto";
import "geometric_calibration.proto";
import "color_calibration.proto";
import "sensor_characterization.proto";
import "vignetting_characterization.proto";
import "hot_pixel_map.proto";
import "device_temp.proto";
import "dead_pixel_map.proto";
import "tof_calibration.proto";
import "flash_calibration.proto";
import "sensor_type.proto";
import "hw_info.proto";
import "view_preferences.proto";
import "proximity_sensors.proto";
import "imu_data.proto";
import "gps_data.proto";
import "face_data.proto";

message FactoryDeviceCalibration {
    optional FlashCalibration flash = 1;
    optional ToFCalibration tof = 2;
    optional TimeStamp time_stamp = 3;
}

message FactoryModuleCalibration {
    required CameraID camera_id = 1;
    repeated ColorCalibration color = 2;
    optional GeometricCalibration geometry = 3;
    optional VignettingCharacterization vignetting = 4;
    optional HotPixelMap hot_pixel_map = 5;
    optional DeadPixelMap dead_pixel_map = 6;
    optional TimeStamp time_stamp = 7;
}

message ColorCalibrationGold {
    required CameraID camera_id = 1;
    repeated ColorCalibration data = 2;
    optional TimeStamp time_stamp = 3;
}

message SensorData {
    required SensorType type = 1;
    required SensorCharacterization data = 2;
    optional TimeStamp time_stamp = 3;
}

message FlashData {
    required Mode mode = 1;
    enum Mode {
        NOFLASH = 0;
        FLASH = 1;
        TORCH = 2;
    }
    
    optional uint32 ledcool_current = 2;
    optional uint32 ledwarm_current = 3;
    optional uint32 flash_duration = 4;
    optional int32 offset_duration = 5;
}

message AFDebugInfo {
    optional bool focus_achieved = 1;
    optional int32 image_focal_length = 2;
}

message Compatibility {
    required uint32 version = 1;
    repeated string features = 2;
}

message LightHeader {
    optional uint64 image_unique_id_low = 1;
    optional uint64 image_unique_id_high = 2;
    optional TimeStamp image_time_stamp = 3;
    optional int32 image_focal_length = 4;
    optional CameraID image_reference_camera = 5;
    optional uint64 device_unique_id_low = 6;
    optional uint64 device_unique_id_high = 7;
    optional string device_model_name = 8;
    optional string device_fw_version = 9;
    optional string device_asic_fw_version = 10;
    optional DeviceTemp device_temperature = 11;
    repeated CameraModule modules = 12;
    repeated FactoryModuleCalibration module_calibration = 13;
    optional FactoryDeviceCalibration device_calibration = 14;
    repeated ColorCalibrationGold gold_cc = 15;
    repeated SensorData sensor_data = 16;
    optional float tof_range = 17;
    optional HwInfo hw_info = 18;
    optional ViewPreferences view_preferences = 19;
    optional ProximitySensors proximity_sensors = 20;
    optional FlashData flash_data = 22;
    repeated IMUData imu_data = 23;
    optional AFDebugInfo af_info = 24;
    optional GPSData gps_data = 25;
    optional Compatibility compatibility = 26;
    repeated FaceData face_data = 27;
    
    reserved 21;
}