<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# NO CHECKED-IN PROTOBUF GENCODE
# source: proApiV1Presentation.proto

namespace Rv\Data;

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

/**
 * Generated from protobuf message <code>rv.data.API_v1_Presentation_Response</code>
 */
class API_v1_Presentation_Response extends \Google\Protobuf\Internal\Message
{
    protected $Response;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type \Rv\Data\API_v1_Presentation_Response\Active $active
     *     @type \Rv\Data\API_v1_Presentation_Response\SlideIndex $slide_index
     *     @type \Rv\Data\API_v1_Presentation_Response\ChordChart $chord_chart
     *     @type \Rv\Data\API_v1_Presentation_Response\ChordChartUpdates $chord_chart_update
     *     @type \Rv\Data\API_v1_Presentation_Response\Presentation $presentation
     *     @type \Rv\Data\API_v1_Presentation_Response\DeletePresentation $delete_presentation
     *     @type \Rv\Data\API_v1_Presentation_Response\TriggerPresentation $trigger_presentation
     *     @type \Rv\Data\API_v1_Presentation_Response\TriggerCue $trigger_cue
     *     @type \Rv\Data\API_v1_Presentation_Response\TimelineOperation $timeline_operation
     *     @type \Rv\Data\API_v1_Presentation_Response\ActivePresentationTimelineOperation $active_presentation_timeline_operation
     *     @type \Rv\Data\API_v1_Presentation_Response\FocusedPresentationTimelineOperation $focused_presentation_timeline_operation
     *     @type \Rv\Data\API_v1_Presentation_Response\ActivePresentationTimelineStatus $active_presentation_timeline_status
     *     @type \Rv\Data\API_v1_Presentation_Response\FocusedPresentationTimelineStatus $focused_presentation_timeline_status
     *     @type \Rv\Data\API_v1_Presentation_Response\Thumbnail $thumbnail
     *     @type \Rv\Data\API_v1_Presentation_Response\Focused $focused
     *     @type \Rv\Data\API_v1_Presentation_Response\EmptyMessage $focus
     *     @type \Rv\Data\API_v1_Presentation_Response\EmptyMessage $trigger
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\ProApiV1Presentation::initOnce();
        parent::__construct($data);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.Active active = 1;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\Active|null
     */
    public function getActive()
    {
        return $this->readOneof(1);
    }

    public function hasActive()
    {
        return $this->hasOneof(1);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.Active active = 1;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\Active $var
     * @return $this
     */
    public function setActive($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\Active::class);
        $this->writeOneof(1, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.SlideIndex slide_index = 2;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\SlideIndex|null
     */
    public function getSlideIndex()
    {
        return $this->readOneof(2);
    }

    public function hasSlideIndex()
    {
        return $this->hasOneof(2);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.SlideIndex slide_index = 2;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\SlideIndex $var
     * @return $this
     */
    public function setSlideIndex($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\SlideIndex::class);
        $this->writeOneof(2, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.ChordChart chord_chart = 3;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\ChordChart|null
     */
    public function getChordChart()
    {
        return $this->readOneof(3);
    }

    public function hasChordChart()
    {
        return $this->hasOneof(3);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.ChordChart chord_chart = 3;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\ChordChart $var
     * @return $this
     */
    public function setChordChart($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\ChordChart::class);
        $this->writeOneof(3, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.ChordChartUpdates chord_chart_update = 4;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\ChordChartUpdates|null
     */
    public function getChordChartUpdate()
    {
        return $this->readOneof(4);
    }

    public function hasChordChartUpdate()
    {
        return $this->hasOneof(4);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.ChordChartUpdates chord_chart_update = 4;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\ChordChartUpdates $var
     * @return $this
     */
    public function setChordChartUpdate($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\ChordChartUpdates::class);
        $this->writeOneof(4, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.Presentation presentation = 5;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\Presentation|null
     */
    public function getPresentation()
    {
        return $this->readOneof(5);
    }

    public function hasPresentation()
    {
        return $this->hasOneof(5);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.Presentation presentation = 5;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\Presentation $var
     * @return $this
     */
    public function setPresentation($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\Presentation::class);
        $this->writeOneof(5, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.DeletePresentation delete_presentation = 6;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\DeletePresentation|null
     */
    public function getDeletePresentation()
    {
        return $this->readOneof(6);
    }

    public function hasDeletePresentation()
    {
        return $this->hasOneof(6);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.DeletePresentation delete_presentation = 6;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\DeletePresentation $var
     * @return $this
     */
    public function setDeletePresentation($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\DeletePresentation::class);
        $this->writeOneof(6, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.TriggerPresentation trigger_presentation = 7;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\TriggerPresentation|null
     */
    public function getTriggerPresentation()
    {
        return $this->readOneof(7);
    }

    public function hasTriggerPresentation()
    {
        return $this->hasOneof(7);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.TriggerPresentation trigger_presentation = 7;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\TriggerPresentation $var
     * @return $this
     */
    public function setTriggerPresentation($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\TriggerPresentation::class);
        $this->writeOneof(7, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.TriggerCue trigger_cue = 8;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\TriggerCue|null
     */
    public function getTriggerCue()
    {
        return $this->readOneof(8);
    }

    public function hasTriggerCue()
    {
        return $this->hasOneof(8);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.TriggerCue trigger_cue = 8;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\TriggerCue $var
     * @return $this
     */
    public function setTriggerCue($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\TriggerCue::class);
        $this->writeOneof(8, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.TimelineOperation timeline_operation = 9;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\TimelineOperation|null
     */
    public function getTimelineOperation()
    {
        return $this->readOneof(9);
    }

    public function hasTimelineOperation()
    {
        return $this->hasOneof(9);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.TimelineOperation timeline_operation = 9;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\TimelineOperation $var
     * @return $this
     */
    public function setTimelineOperation($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\TimelineOperation::class);
        $this->writeOneof(9, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.ActivePresentationTimelineOperation active_presentation_timeline_operation = 10;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\ActivePresentationTimelineOperation|null
     */
    public function getActivePresentationTimelineOperation()
    {
        return $this->readOneof(10);
    }

    public function hasActivePresentationTimelineOperation()
    {
        return $this->hasOneof(10);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.ActivePresentationTimelineOperation active_presentation_timeline_operation = 10;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\ActivePresentationTimelineOperation $var
     * @return $this
     */
    public function setActivePresentationTimelineOperation($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\ActivePresentationTimelineOperation::class);
        $this->writeOneof(10, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.FocusedPresentationTimelineOperation focused_presentation_timeline_operation = 11;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\FocusedPresentationTimelineOperation|null
     */
    public function getFocusedPresentationTimelineOperation()
    {
        return $this->readOneof(11);
    }

    public function hasFocusedPresentationTimelineOperation()
    {
        return $this->hasOneof(11);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.FocusedPresentationTimelineOperation focused_presentation_timeline_operation = 11;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\FocusedPresentationTimelineOperation $var
     * @return $this
     */
    public function setFocusedPresentationTimelineOperation($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\FocusedPresentationTimelineOperation::class);
        $this->writeOneof(11, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.ActivePresentationTimelineStatus active_presentation_timeline_status = 12;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\ActivePresentationTimelineStatus|null
     */
    public function getActivePresentationTimelineStatus()
    {
        return $this->readOneof(12);
    }

    public function hasActivePresentationTimelineStatus()
    {
        return $this->hasOneof(12);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.ActivePresentationTimelineStatus active_presentation_timeline_status = 12;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\ActivePresentationTimelineStatus $var
     * @return $this
     */
    public function setActivePresentationTimelineStatus($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\ActivePresentationTimelineStatus::class);
        $this->writeOneof(12, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.FocusedPresentationTimelineStatus focused_presentation_timeline_status = 13;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\FocusedPresentationTimelineStatus|null
     */
    public function getFocusedPresentationTimelineStatus()
    {
        return $this->readOneof(13);
    }

    public function hasFocusedPresentationTimelineStatus()
    {
        return $this->hasOneof(13);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.FocusedPresentationTimelineStatus focused_presentation_timeline_status = 13;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\FocusedPresentationTimelineStatus $var
     * @return $this
     */
    public function setFocusedPresentationTimelineStatus($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\FocusedPresentationTimelineStatus::class);
        $this->writeOneof(13, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.Thumbnail thumbnail = 14;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\Thumbnail|null
     */
    public function getThumbnail()
    {
        return $this->readOneof(14);
    }

    public function hasThumbnail()
    {
        return $this->hasOneof(14);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.Thumbnail thumbnail = 14;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\Thumbnail $var
     * @return $this
     */
    public function setThumbnail($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\Thumbnail::class);
        $this->writeOneof(14, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.Focused focused = 15;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\Focused|null
     */
    public function getFocused()
    {
        return $this->readOneof(15);
    }

    public function hasFocused()
    {
        return $this->hasOneof(15);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.Focused focused = 15;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\Focused $var
     * @return $this
     */
    public function setFocused($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\Focused::class);
        $this->writeOneof(15, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.EmptyMessage focus = 16;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\EmptyMessage|null
     */
    public function getFocus()
    {
        return $this->readOneof(16);
    }

    public function hasFocus()
    {
        return $this->hasOneof(16);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.EmptyMessage focus = 16;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\EmptyMessage $var
     * @return $this
     */
    public function setFocus($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\EmptyMessage::class);
        $this->writeOneof(16, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.EmptyMessage trigger = 17;</code>
     * @return \Rv\Data\API_v1_Presentation_Response\EmptyMessage|null
     */
    public function getTrigger()
    {
        return $this->readOneof(17);
    }

    public function hasTrigger()
    {
        return $this->hasOneof(17);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Presentation_Response.EmptyMessage trigger = 17;</code>
     * @param \Rv\Data\API_v1_Presentation_Response\EmptyMessage $var
     * @return $this
     */
    public function setTrigger($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Presentation_Response\EmptyMessage::class);
        $this->writeOneof(17, $var);

        return $this;
    }

    /**
     * @return string
     */
    public function getResponse()
    {
        return $this->whichOneof("Response");
    }

}

