<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: src/proto/grpc/testing/control.proto

namespace Grpc\Testing;

use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;

/**
 * Basic summary that can be computed from ClientStats and ServerStats
 * once the scenario has finished.
 *
 * Generated from protobuf message <code>grpc.testing.ScenarioResultSummary</code>
 */
class ScenarioResultSummary extends \Google\Protobuf\Internal\Message
{
    /**
     * Total number of operations per second over all clients.
     *
     * Generated from protobuf field <code>double qps = 1;</code>
     */
    private $qps = 0.0;
    /**
     * QPS per one server core.
     *
     * Generated from protobuf field <code>double qps_per_server_core = 2;</code>
     */
    private $qps_per_server_core = 0.0;
    /**
     * server load based on system_time (0.85 => 85%)
     *
     * Generated from protobuf field <code>double server_system_time = 3;</code>
     */
    private $server_system_time = 0.0;
    /**
     * server load based on user_time (0.85 => 85%)
     *
     * Generated from protobuf field <code>double server_user_time = 4;</code>
     */
    private $server_user_time = 0.0;
    /**
     * client load based on system_time (0.85 => 85%)
     *
     * Generated from protobuf field <code>double client_system_time = 5;</code>
     */
    private $client_system_time = 0.0;
    /**
     * client load based on user_time (0.85 => 85%)
     *
     * Generated from protobuf field <code>double client_user_time = 6;</code>
     */
    private $client_user_time = 0.0;
    /**
     * X% latency percentiles (in nanoseconds)
     *
     * Generated from protobuf field <code>double latency_50 = 7;</code>
     */
    private $latency_50 = 0.0;
    /**
     * Generated from protobuf field <code>double latency_90 = 8;</code>
     */
    private $latency_90 = 0.0;
    /**
     * Generated from protobuf field <code>double latency_95 = 9;</code>
     */
    private $latency_95 = 0.0;
    /**
     * Generated from protobuf field <code>double latency_99 = 10;</code>
     */
    private $latency_99 = 0.0;
    /**
     * Generated from protobuf field <code>double latency_999 = 11;</code>
     */
    private $latency_999 = 0.0;
    /**
     * server cpu usage percentage
     *
     * Generated from protobuf field <code>double server_cpu_usage = 12;</code>
     */
    private $server_cpu_usage = 0.0;
    /**
     * Number of requests that succeeded/failed
     *
     * Generated from protobuf field <code>double successful_requests_per_second = 13;</code>
     */
    private $successful_requests_per_second = 0.0;
    /**
     * Generated from protobuf field <code>double failed_requests_per_second = 14;</code>
     */
    private $failed_requests_per_second = 0.0;
    /**
     * Number of polls called inside completion queue per request
     *
     * Generated from protobuf field <code>double client_polls_per_request = 15;</code>
     */
    private $client_polls_per_request = 0.0;
    /**
     * Generated from protobuf field <code>double server_polls_per_request = 16;</code>
     */
    private $server_polls_per_request = 0.0;
    /**
     * Queries per CPU-sec over all servers or clients
     *
     * Generated from protobuf field <code>double server_queries_per_cpu_sec = 17;</code>
     */
    private $server_queries_per_cpu_sec = 0.0;
    /**
     * Generated from protobuf field <code>double client_queries_per_cpu_sec = 18;</code>
     */
    private $client_queries_per_cpu_sec = 0.0;

    public function __construct() {
        \GPBMetadata\Src\Proto\Grpc\Testing\Control::initOnce();
        parent::__construct();
    }

    /**
     * Total number of operations per second over all clients.
     *
     * Generated from protobuf field <code>double qps = 1;</code>
     * @return float
     */
    public function getQps()
    {
        return $this->qps;
    }

    /**
     * Total number of operations per second over all clients.
     *
     * Generated from protobuf field <code>double qps = 1;</code>
     * @param float $var
     * @return $this
     */
    public function setQps($var)
    {
        GPBUtil::checkDouble($var);
        $this->qps = $var;

        return $this;
    }

    /**
     * QPS per one server core.
     *
     * Generated from protobuf field <code>double qps_per_server_core = 2;</code>
     * @return float
     */
    public function getQpsPerServerCore()
    {
        return $this->qps_per_server_core;
    }

    /**
     * QPS per one server core.
     *
     * Generated from protobuf field <code>double qps_per_server_core = 2;</code>
     * @param float $var
     * @return $this
     */
    public function setQpsPerServerCore($var)
    {
        GPBUtil::checkDouble($var);
        $this->qps_per_server_core = $var;

        return $this;
    }

    /**
     * server load based on system_time (0.85 => 85%)
     *
     * Generated from protobuf field <code>double server_system_time = 3;</code>
     * @return float
     */
    public function getServerSystemTime()
    {
        return $this->server_system_time;
    }

    /**
     * server load based on system_time (0.85 => 85%)
     *
     * Generated from protobuf field <code>double server_system_time = 3;</code>
     * @param float $var
     * @return $this
     */
    public function setServerSystemTime($var)
    {
        GPBUtil::checkDouble($var);
        $this->server_system_time = $var;

        return $this;
    }

    /**
     * server load based on user_time (0.85 => 85%)
     *
     * Generated from protobuf field <code>double server_user_time = 4;</code>
     * @return float
     */
    public function getServerUserTime()
    {
        return $this->server_user_time;
    }

    /**
     * server load based on user_time (0.85 => 85%)
     *
     * Generated from protobuf field <code>double server_user_time = 4;</code>
     * @param float $var
     * @return $this
     */
    public function setServerUserTime($var)
    {
        GPBUtil::checkDouble($var);
        $this->server_user_time = $var;

        return $this;
    }

    /**
     * client load based on system_time (0.85 => 85%)
     *
     * Generated from protobuf field <code>double client_system_time = 5;</code>
     * @return float
     */
    public function getClientSystemTime()
    {
        return $this->client_system_time;
    }

    /**
     * client load based on system_time (0.85 => 85%)
     *
     * Generated from protobuf field <code>double client_system_time = 5;</code>
     * @param float $var
     * @return $this
     */
    public function setClientSystemTime($var)
    {
        GPBUtil::checkDouble($var);
        $this->client_system_time = $var;

        return $this;
    }

    /**
     * client load based on user_time (0.85 => 85%)
     *
     * Generated from protobuf field <code>double client_user_time = 6;</code>
     * @return float
     */
    public function getClientUserTime()
    {
        return $this->client_user_time;
    }

    /**
     * client load based on user_time (0.85 => 85%)
     *
     * Generated from protobuf field <code>double client_user_time = 6;</code>
     * @param float $var
     * @return $this
     */
    public function setClientUserTime($var)
    {
        GPBUtil::checkDouble($var);
        $this->client_user_time = $var;

        return $this;
    }

    /**
     * X% latency percentiles (in nanoseconds)
     *
     * Generated from protobuf field <code>double latency_50 = 7;</code>
     * @return float
     */
    public function getLatency50()
    {
        return $this->latency_50;
    }

    /**
     * X% latency percentiles (in nanoseconds)
     *
     * Generated from protobuf field <code>double latency_50 = 7;</code>
     * @param float $var
     * @return $this
     */
    public function setLatency50($var)
    {
        GPBUtil::checkDouble($var);
        $this->latency_50 = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>double latency_90 = 8;</code>
     * @return float
     */
    public function getLatency90()
    {
        return $this->latency_90;
    }

    /**
     * Generated from protobuf field <code>double latency_90 = 8;</code>
     * @param float $var
     * @return $this
     */
    public function setLatency90($var)
    {
        GPBUtil::checkDouble($var);
        $this->latency_90 = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>double latency_95 = 9;</code>
     * @return float
     */
    public function getLatency95()
    {
        return $this->latency_95;
    }

    /**
     * Generated from protobuf field <code>double latency_95 = 9;</code>
     * @param float $var
     * @return $this
     */
    public function setLatency95($var)
    {
        GPBUtil::checkDouble($var);
        $this->latency_95 = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>double latency_99 = 10;</code>
     * @return float
     */
    public function getLatency99()
    {
        return $this->latency_99;
    }

    /**
     * Generated from protobuf field <code>double latency_99 = 10;</code>
     * @param float $var
     * @return $this
     */
    public function setLatency99($var)
    {
        GPBUtil::checkDouble($var);
        $this->latency_99 = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>double latency_999 = 11;</code>
     * @return float
     */
    public function getLatency999()
    {
        return $this->latency_999;
    }

    /**
     * Generated from protobuf field <code>double latency_999 = 11;</code>
     * @param float $var
     * @return $this
     */
    public function setLatency999($var)
    {
        GPBUtil::checkDouble($var);
        $this->latency_999 = $var;

        return $this;
    }

    /**
     * server cpu usage percentage
     *
     * Generated from protobuf field <code>double server_cpu_usage = 12;</code>
     * @return float
     */
    public function getServerCpuUsage()
    {
        return $this->server_cpu_usage;
    }

    /**
     * server cpu usage percentage
     *
     * Generated from protobuf field <code>double server_cpu_usage = 12;</code>
     * @param float $var
     * @return $this
     */
    public function setServerCpuUsage($var)
    {
        GPBUtil::checkDouble($var);
        $this->server_cpu_usage = $var;

        return $this;
    }

    /**
     * Number of requests that succeeded/failed
     *
     * Generated from protobuf field <code>double successful_requests_per_second = 13;</code>
     * @return float
     */
    public function getSuccessfulRequestsPerSecond()
    {
        return $this->successful_requests_per_second;
    }

    /**
     * Number of requests that succeeded/failed
     *
     * Generated from protobuf field <code>double successful_requests_per_second = 13;</code>
     * @param float $var
     * @return $this
     */
    public function setSuccessfulRequestsPerSecond($var)
    {
        GPBUtil::checkDouble($var);
        $this->successful_requests_per_second = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>double failed_requests_per_second = 14;</code>
     * @return float
     */
    public function getFailedRequestsPerSecond()
    {
        return $this->failed_requests_per_second;
    }

    /**
     * Generated from protobuf field <code>double failed_requests_per_second = 14;</code>
     * @param float $var
     * @return $this
     */
    public function setFailedRequestsPerSecond($var)
    {
        GPBUtil::checkDouble($var);
        $this->failed_requests_per_second = $var;

        return $this;
    }

    /**
     * Number of polls called inside completion queue per request
     *
     * Generated from protobuf field <code>double client_polls_per_request = 15;</code>
     * @return float
     */
    public function getClientPollsPerRequest()
    {
        return $this->client_polls_per_request;
    }

    /**
     * Number of polls called inside completion queue per request
     *
     * Generated from protobuf field <code>double client_polls_per_request = 15;</code>
     * @param float $var
     * @return $this
     */
    public function setClientPollsPerRequest($var)
    {
        GPBUtil::checkDouble($var);
        $this->client_polls_per_request = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>double server_polls_per_request = 16;</code>
     * @return float
     */
    public function getServerPollsPerRequest()
    {
        return $this->server_polls_per_request;
    }

    /**
     * Generated from protobuf field <code>double server_polls_per_request = 16;</code>
     * @param float $var
     * @return $this
     */
    public function setServerPollsPerRequest($var)
    {
        GPBUtil::checkDouble($var);
        $this->server_polls_per_request = $var;

        return $this;
    }

    /**
     * Queries per CPU-sec over all servers or clients
     *
     * Generated from protobuf field <code>double server_queries_per_cpu_sec = 17;</code>
     * @return float
     */
    public function getServerQueriesPerCpuSec()
    {
        return $this->server_queries_per_cpu_sec;
    }

    /**
     * Queries per CPU-sec over all servers or clients
     *
     * Generated from protobuf field <code>double server_queries_per_cpu_sec = 17;</code>
     * @param float $var
     * @return $this
     */
    public function setServerQueriesPerCpuSec($var)
    {
        GPBUtil::checkDouble($var);
        $this->server_queries_per_cpu_sec = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>double client_queries_per_cpu_sec = 18;</code>
     * @return float
     */
    public function getClientQueriesPerCpuSec()
    {
        return $this->client_queries_per_cpu_sec;
    }

    /**
     * Generated from protobuf field <code>double client_queries_per_cpu_sec = 18;</code>
     * @param float $var
     * @return $this
     */
    public function setClientQueriesPerCpuSec($var)
    {
        GPBUtil::checkDouble($var);
        $this->client_queries_per_cpu_sec = $var;

        return $this;
    }

}

