// @file sns_da_test.proto
//
// Defines the API for communicating with the Driver acceptance
// test sensor.
// This is to used by the linux command line partner application
// to send string messages to the sns_da_test_sensor
//
// Copyright (c) 2017, 2020 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.

syntax = "proto2";
import "nanopb.proto";

enum sns_da_test_msgid {
  option (nanopb_enumopt).long_names = false;
  SNS_DA_TEST_MSGID_SNS_DA_TEST_REQ = 512;
  SNS_DA_TEST_MSGID_SNS_DA_TEST_LOG = 768;
  SNS_DA_TEST_MSGID_SNS_DA_TEST_EVENT  = 1024;
}

//This message contains the test parameters as a single string in the format below
//-testcase=<not_mandatory> -sample_rate=< any +tive value > -sensor=<data_type>
//-duration=< any +tive value in seconds> -batch_period=<+tive value in seconds>
message sns_da_test_req {
  optional string test_args = 1;
}

//This message contains any return data from the test driver including PASS/FAIL
//msg. and explainations if applicable
message sns_da_test_event {
  optional string test_event = 1;
}

// Sensor State log message
// This definition is used by da_test sensor to log test
// information when publishing sensor api event
message sns_da_test_log {
  //Time elapsed between streaming start request time and first sample received
  required uint64 time_to_first_event = 1;

  //Time elapsed between streaming stop request time and last sample received
  required sfixed32 time_to_last_event = 2;

  //Time when last sample was received
  required uint64 sample_ts = 3;

  //Total number of samples received
  required uint32 total_samples = 4;

  //time delta between samples avegraged over number of samples
  required uint32 avg_delta = 5;

  //configures sample rate received in the SNS_STD_SENSOR_PHYSICAL_CONFIG_EVENT
  required sfixed32 recvd_phy_config_sample_rate = 6;

  //random seed used by the da_test instance
  optional uint64 random_seed_used = 7;

  //The number of std_req sent out by this instance of da_test
  optional uint32 num_request_sent = 8;

  //timestamp of first sample received on da_test
  optional uint64 first_sample_timestamp = 9;
}
