<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: keyapis/vc/v1/keyapis_vc_monitoring_v1.proto

namespace Keyapis\Vc\V1;

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

/**
 * Мониторинг камеры
 *
 * Generated from protobuf message <code>keyapis.vc.v1.MonitoringData</code>
 */
class MonitoringData extends \Google\Protobuf\Internal\Message
{
    /**
     * uid видеопотока камеры
     *
     * Generated from protobuf field <code>string camera_uid = 1;</code>
     */
    protected $camera_uid = '';
    /**
     * Идентификатор компании
     *
     * Generated from protobuf field <code>int32 company_id = 2;</code>
     */
    protected $company_id = 0;
    /**
     * Флаг наличия каналов
     *
     * Generated from protobuf field <code>bool is_channel_presence = 3;</code>
     */
    protected $is_channel_presence = false;
    /**
     * Название дата-центра
     *
     * Generated from protobuf field <code>string data_center_name = 4;</code>
     */
    protected $data_center_name = '';
    /**
     * Бейдж состояния vuf
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge vuf_status_badge = 5;</code>
     */
    protected $vuf_status_badge = null;
    /**
     * Бейдж состояния фиалки
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge violet_status_badge = 6;</code>
     */
    protected $violet_status_badge = null;
    /**
     * Бейдж кол-ва камер фиалки
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge violet_cameras_count_badge = 7;</code>
     */
    protected $violet_cameras_count_badge = null;
    /**
     * Бейдж кол-ва камер розы
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge rose_status_badge = 8;</code>
     */
    protected $rose_status_badge = null;
    /**
     * Бейдж состояния RabbitMQ
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge rabbit_status_badge = 9;</code>
     */
    protected $rabbit_status_badge = null;
    /**
     * Бейдж состояния камеры vuf
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge vuf_camera_status_badge = 10;</code>
     */
    protected $vuf_camera_status_badge = null;
    /**
     * Бейдж приёма данных камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_receiving_status_badge = 11;</code>
     */
    protected $camera_receiving_status_badge = null;
    /**
     * Бейдж трансляции данных камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_streaming_status_badge = 12;</code>
     */
    protected $camera_streaming_status_badge = null;
    /**
     * Бейдж активного времени камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_uptime_status_badge = 13;</code>
     */
    protected $camera_uptime_status_badge = null;
    /**
     * Бейдж состояния камеры пользователя
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_uuc_status_badge = 14;</code>
     */
    protected $camera_uuc_status_badge = null;
    /**
     * Бейдж состояния pg
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge pg_status_badge = 15;</code>
     */
    protected $pg_status_badge = null;
    /**
     * Бейдж состояния redis
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge redis_status_badge = 16;</code>
     */
    protected $redis_status_badge = null;
    /**
     * Бейдж онлайн состояния камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_online_badge = 17;</code>
     */
    protected $camera_online_badge = null;
    /**
     * Бейдж состояния канала камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge channel_status_badge = 18;</code>
     */
    protected $channel_status_badge = null;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type string $camera_uid
     *           uid видеопотока камеры
     *     @type int $company_id
     *           Идентификатор компании
     *     @type bool $is_channel_presence
     *           Флаг наличия каналов
     *     @type string $data_center_name
     *           Название дата-центра
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $vuf_status_badge
     *           Бейдж состояния vuf
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $violet_status_badge
     *           Бейдж состояния фиалки
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $violet_cameras_count_badge
     *           Бейдж кол-ва камер фиалки
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $rose_status_badge
     *           Бейдж кол-ва камер розы
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $rabbit_status_badge
     *           Бейдж состояния RabbitMQ
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $vuf_camera_status_badge
     *           Бейдж состояния камеры vuf
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $camera_receiving_status_badge
     *           Бейдж приёма данных камеры
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $camera_streaming_status_badge
     *           Бейдж трансляции данных камеры
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $camera_uptime_status_badge
     *           Бейдж активного времени камеры
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $camera_uuc_status_badge
     *           Бейдж состояния камеры пользователя
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $pg_status_badge
     *           Бейдж состояния pg
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $redis_status_badge
     *           Бейдж состояния redis
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $camera_online_badge
     *           Бейдж онлайн состояния камеры
     *     @type \Keyapis\Vc\V1\CameraMonitoringBadge $channel_status_badge
     *           Бейдж состояния канала камеры
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\Keyapis\Vc\V1\KeyapisVcMonitoringV1::initOnce();
        parent::__construct($data);
    }

    /**
     * uid видеопотока камеры
     *
     * Generated from protobuf field <code>string camera_uid = 1;</code>
     * @return string
     */
    public function getCameraUid()
    {
        return $this->camera_uid;
    }

    /**
     * uid видеопотока камеры
     *
     * Generated from protobuf field <code>string camera_uid = 1;</code>
     * @param string $var
     * @return $this
     */
    public function setCameraUid($var)
    {
        GPBUtil::checkString($var, True);
        $this->camera_uid = $var;

        return $this;
    }

    /**
     * Идентификатор компании
     *
     * Generated from protobuf field <code>int32 company_id = 2;</code>
     * @return int
     */
    public function getCompanyId()
    {
        return $this->company_id;
    }

    /**
     * Идентификатор компании
     *
     * Generated from protobuf field <code>int32 company_id = 2;</code>
     * @param int $var
     * @return $this
     */
    public function setCompanyId($var)
    {
        GPBUtil::checkInt32($var);
        $this->company_id = $var;

        return $this;
    }

    /**
     * Флаг наличия каналов
     *
     * Generated from protobuf field <code>bool is_channel_presence = 3;</code>
     * @return bool
     */
    public function getIsChannelPresence()
    {
        return $this->is_channel_presence;
    }

    /**
     * Флаг наличия каналов
     *
     * Generated from protobuf field <code>bool is_channel_presence = 3;</code>
     * @param bool $var
     * @return $this
     */
    public function setIsChannelPresence($var)
    {
        GPBUtil::checkBool($var);
        $this->is_channel_presence = $var;

        return $this;
    }

    /**
     * Название дата-центра
     *
     * Generated from protobuf field <code>string data_center_name = 4;</code>
     * @return string
     */
    public function getDataCenterName()
    {
        return $this->data_center_name;
    }

    /**
     * Название дата-центра
     *
     * Generated from protobuf field <code>string data_center_name = 4;</code>
     * @param string $var
     * @return $this
     */
    public function setDataCenterName($var)
    {
        GPBUtil::checkString($var, True);
        $this->data_center_name = $var;

        return $this;
    }

    /**
     * Бейдж состояния vuf
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge vuf_status_badge = 5;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getVufStatusBadge()
    {
        return $this->vuf_status_badge;
    }

    public function hasVufStatusBadge()
    {
        return isset($this->vuf_status_badge);
    }

    public function clearVufStatusBadge()
    {
        unset($this->vuf_status_badge);
    }

    /**
     * Бейдж состояния vuf
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge vuf_status_badge = 5;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setVufStatusBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->vuf_status_badge = $var;

        return $this;
    }

    /**
     * Бейдж состояния фиалки
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge violet_status_badge = 6;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getVioletStatusBadge()
    {
        return $this->violet_status_badge;
    }

    public function hasVioletStatusBadge()
    {
        return isset($this->violet_status_badge);
    }

    public function clearVioletStatusBadge()
    {
        unset($this->violet_status_badge);
    }

    /**
     * Бейдж состояния фиалки
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge violet_status_badge = 6;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setVioletStatusBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->violet_status_badge = $var;

        return $this;
    }

    /**
     * Бейдж кол-ва камер фиалки
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge violet_cameras_count_badge = 7;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getVioletCamerasCountBadge()
    {
        return $this->violet_cameras_count_badge;
    }

    public function hasVioletCamerasCountBadge()
    {
        return isset($this->violet_cameras_count_badge);
    }

    public function clearVioletCamerasCountBadge()
    {
        unset($this->violet_cameras_count_badge);
    }

    /**
     * Бейдж кол-ва камер фиалки
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge violet_cameras_count_badge = 7;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setVioletCamerasCountBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->violet_cameras_count_badge = $var;

        return $this;
    }

    /**
     * Бейдж кол-ва камер розы
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge rose_status_badge = 8;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getRoseStatusBadge()
    {
        return $this->rose_status_badge;
    }

    public function hasRoseStatusBadge()
    {
        return isset($this->rose_status_badge);
    }

    public function clearRoseStatusBadge()
    {
        unset($this->rose_status_badge);
    }

    /**
     * Бейдж кол-ва камер розы
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge rose_status_badge = 8;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setRoseStatusBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->rose_status_badge = $var;

        return $this;
    }

    /**
     * Бейдж состояния RabbitMQ
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge rabbit_status_badge = 9;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getRabbitStatusBadge()
    {
        return $this->rabbit_status_badge;
    }

    public function hasRabbitStatusBadge()
    {
        return isset($this->rabbit_status_badge);
    }

    public function clearRabbitStatusBadge()
    {
        unset($this->rabbit_status_badge);
    }

    /**
     * Бейдж состояния RabbitMQ
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge rabbit_status_badge = 9;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setRabbitStatusBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->rabbit_status_badge = $var;

        return $this;
    }

    /**
     * Бейдж состояния камеры vuf
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge vuf_camera_status_badge = 10;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getVufCameraStatusBadge()
    {
        return $this->vuf_camera_status_badge;
    }

    public function hasVufCameraStatusBadge()
    {
        return isset($this->vuf_camera_status_badge);
    }

    public function clearVufCameraStatusBadge()
    {
        unset($this->vuf_camera_status_badge);
    }

    /**
     * Бейдж состояния камеры vuf
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge vuf_camera_status_badge = 10;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setVufCameraStatusBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->vuf_camera_status_badge = $var;

        return $this;
    }

    /**
     * Бейдж приёма данных камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_receiving_status_badge = 11;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getCameraReceivingStatusBadge()
    {
        return $this->camera_receiving_status_badge;
    }

    public function hasCameraReceivingStatusBadge()
    {
        return isset($this->camera_receiving_status_badge);
    }

    public function clearCameraReceivingStatusBadge()
    {
        unset($this->camera_receiving_status_badge);
    }

    /**
     * Бейдж приёма данных камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_receiving_status_badge = 11;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setCameraReceivingStatusBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->camera_receiving_status_badge = $var;

        return $this;
    }

    /**
     * Бейдж трансляции данных камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_streaming_status_badge = 12;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getCameraStreamingStatusBadge()
    {
        return $this->camera_streaming_status_badge;
    }

    public function hasCameraStreamingStatusBadge()
    {
        return isset($this->camera_streaming_status_badge);
    }

    public function clearCameraStreamingStatusBadge()
    {
        unset($this->camera_streaming_status_badge);
    }

    /**
     * Бейдж трансляции данных камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_streaming_status_badge = 12;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setCameraStreamingStatusBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->camera_streaming_status_badge = $var;

        return $this;
    }

    /**
     * Бейдж активного времени камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_uptime_status_badge = 13;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getCameraUptimeStatusBadge()
    {
        return $this->camera_uptime_status_badge;
    }

    public function hasCameraUptimeStatusBadge()
    {
        return isset($this->camera_uptime_status_badge);
    }

    public function clearCameraUptimeStatusBadge()
    {
        unset($this->camera_uptime_status_badge);
    }

    /**
     * Бейдж активного времени камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_uptime_status_badge = 13;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setCameraUptimeStatusBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->camera_uptime_status_badge = $var;

        return $this;
    }

    /**
     * Бейдж состояния камеры пользователя
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_uuc_status_badge = 14;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getCameraUucStatusBadge()
    {
        return $this->camera_uuc_status_badge;
    }

    public function hasCameraUucStatusBadge()
    {
        return isset($this->camera_uuc_status_badge);
    }

    public function clearCameraUucStatusBadge()
    {
        unset($this->camera_uuc_status_badge);
    }

    /**
     * Бейдж состояния камеры пользователя
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_uuc_status_badge = 14;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setCameraUucStatusBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->camera_uuc_status_badge = $var;

        return $this;
    }

    /**
     * Бейдж состояния pg
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge pg_status_badge = 15;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getPgStatusBadge()
    {
        return $this->pg_status_badge;
    }

    public function hasPgStatusBadge()
    {
        return isset($this->pg_status_badge);
    }

    public function clearPgStatusBadge()
    {
        unset($this->pg_status_badge);
    }

    /**
     * Бейдж состояния pg
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge pg_status_badge = 15;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setPgStatusBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->pg_status_badge = $var;

        return $this;
    }

    /**
     * Бейдж состояния redis
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge redis_status_badge = 16;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getRedisStatusBadge()
    {
        return $this->redis_status_badge;
    }

    public function hasRedisStatusBadge()
    {
        return isset($this->redis_status_badge);
    }

    public function clearRedisStatusBadge()
    {
        unset($this->redis_status_badge);
    }

    /**
     * Бейдж состояния redis
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge redis_status_badge = 16;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setRedisStatusBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->redis_status_badge = $var;

        return $this;
    }

    /**
     * Бейдж онлайн состояния камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_online_badge = 17;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getCameraOnlineBadge()
    {
        return $this->camera_online_badge;
    }

    public function hasCameraOnlineBadge()
    {
        return isset($this->camera_online_badge);
    }

    public function clearCameraOnlineBadge()
    {
        unset($this->camera_online_badge);
    }

    /**
     * Бейдж онлайн состояния камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge camera_online_badge = 17;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setCameraOnlineBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->camera_online_badge = $var;

        return $this;
    }

    /**
     * Бейдж состояния канала камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge channel_status_badge = 18;</code>
     * @return \Keyapis\Vc\V1\CameraMonitoringBadge|null
     */
    public function getChannelStatusBadge()
    {
        return $this->channel_status_badge;
    }

    public function hasChannelStatusBadge()
    {
        return isset($this->channel_status_badge);
    }

    public function clearChannelStatusBadge()
    {
        unset($this->channel_status_badge);
    }

    /**
     * Бейдж состояния канала камеры
     *
     * Generated from protobuf field <code>.keyapis.vc.v1.CameraMonitoringBadge channel_status_badge = 18;</code>
     * @param \Keyapis\Vc\V1\CameraMonitoringBadge $var
     * @return $this
     */
    public function setChannelStatusBadge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Vc\V1\CameraMonitoringBadge::class);
        $this->channel_status_badge = $var;

        return $this;
    }

}

