1/* 2 * Copyright (C) 2018 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17syntax = "proto2"; 18option optimize_for = LITE_RUNTIME; 19 20package perfetto.protos; 21 22message RawQueryArgs { 23 optional string sql_query = 1; 24 25 // Wall time when the query was queued. Used only for query stats. 26 optional uint64 time_queued_ns = 2; 27} 28 29message RawQueryResult { 30 message ColumnDesc { 31 optional string name = 1; 32 enum Type { 33 UNKNOWN = 0; 34 LONG = 1; 35 DOUBLE = 2; 36 STRING = 3; 37 } 38 optional Type type = 2; 39 } 40 message ColumnValues { 41 // Only one of this field will be filled for each column (according to the 42 // corresponding descriptor) and that one will have precisely |num_records| 43 // elements. 44 repeated int64 long_values = 1; 45 repeated double double_values = 2; 46 repeated string string_values = 3; 47 48 // This will be set to true or false depending on whether the data at the 49 // given index is NULL. 50 repeated bool is_nulls = 4; 51 } 52 repeated ColumnDesc column_descriptors = 1; 53 optional uint64 num_records = 2; 54 repeated ColumnValues columns = 3; 55 optional string error = 4; 56 optional uint64 execution_time_ns = 5; 57} 58