| // The file format generated by report_sample.proto is as below: |
| // LittleEndian32(record_size_0) |
| // message Record(record_0) (having record_size_0 bytes) |
| // LittleEndian32(record_size_1) |
| // message Record(record_1) (having record_size_1 bytes) |
| // ... |
| // LittleEndian32(record_size_N) |
| // message Record(record_N) (having record_size_N bytes) |
| // LittleEndian32(0) |
| |
| syntax = "proto2"; |
| option optimize_for = LITE_RUNTIME; |
| package simpleperf_report_proto; |
| |
| message Sample { |
| optional uint64 time = 1; |
| |
| message CallChainEntry { |
| optional uint64 ip = 1; |
| optional string symbol = 2; |
| optional string file = 3; |
| } |
| |
| repeated CallChainEntry callchain = 2; |
| } |
| |
| message Record { |
| enum Type { |
| UNKOWN = 1; |
| SAMPLE = 2; |
| } |
| |
| // Identifies which field is filled in. |
| optional Type type = 1; |
| |
| // One of the following will be filled in. |
| optional Sample sample = 2; |
| } |