| // This is the definition for camera profiler message. |
| syntax = "proto2"; |
| |
| package profiler; |
| |
| // Time stamp of start and end processing time. |
| message TimeStamp { |
| optional uint64 start = 1; |
| optional uint64 end = 2; |
| optional uint32 count = 3; |
| optional int32 request_id = 4; |
| } |
| |
| // TimeSeries stores the target name and a series of time stamps and fps. |
| message TimeSeries { |
| optional string name = 1; |
| repeated TimeStamp runtime = 2; |
| } |
| |
| // Profilering result stores the usecase name, and the targets' runtime it |
| // profiled. |
| message ProfilingResult { |
| // The usecase indicates which mode/session it is profiling. For example, |
| // camera preview, video preview, etc. |
| optional string usecase = 1; |
| repeated TimeSeries target = 2; |
| optional string build_id = 3; |
| optional string device_type = 4; |
| optional string device_serial = 5; |
| // Unix epoch timestamp when profile started. |
| optional int64 profile_start_time_nanos = 6; |
| // CLOCK_BOOTTIME value as near as possible to the same moment |
| // as profile_start_time_millis. |
| optional uint64 profile_start_boottime_nanos = 7; |
| // Unix epoch timestamp when profile ended. |
| optional int64 profile_end_time_nanos = 8; |
| } |