<?php

namespace StructType;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for CandidateType StructType
 * Meta information extracted from the WSDL
 * - documentation: Contains Candidate data.
 * @subpackage Structs
 */
class CandidateType extends AbstractStructBase
{
    /**
     * The Candidate_Reference
     * Meta information extracted from the WSDL
     * - documentation: Reference to a Candidate.
     * - minOccurs: 0
     * @var \StructType\CandidateObjectType
     */
    public $Candidate_Reference;
    /**
     * The Candidate_Data
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\Candidate_DataType
     */
    public $Candidate_Data;
    /**
     * Constructor method for CandidateType
     * @uses CandidateType::setCandidate_Reference()
     * @uses CandidateType::setCandidate_Data()
     * @param \StructType\CandidateObjectType $candidate_Reference
     * @param \StructType\Candidate_DataType $candidate_Data
     */
    public function __construct(\StructType\CandidateObjectType $candidate_Reference = null, \StructType\Candidate_DataType $candidate_Data = null)
    {
        $this
            ->setCandidate_Reference($candidate_Reference)
            ->setCandidate_Data($candidate_Data);
    }
    /**
     * Get Candidate_Reference value
     * @return \StructType\CandidateObjectType|null
     */
    public function getCandidate_Reference()
    {
        return $this->Candidate_Reference;
    }
    /**
     * Set Candidate_Reference value
     * @param \StructType\CandidateObjectType $candidate_Reference
     * @return \StructType\CandidateType
     */
    public function setCandidate_Reference(\StructType\CandidateObjectType $candidate_Reference = null)
    {
        $this->Candidate_Reference = $candidate_Reference;
        return $this;
    }
    /**
     * Get Candidate_Data value
     * @return \StructType\Candidate_DataType|null
     */
    public function getCandidate_Data()
    {
        return $this->Candidate_Data;
    }
    /**
     * Set Candidate_Data value
     * @param \StructType\Candidate_DataType $candidate_Data
     * @return \StructType\CandidateType
     */
    public function setCandidate_Data(\StructType\Candidate_DataType $candidate_Data = null)
    {
        $this->Candidate_Data = $candidate_Data;
        return $this;
    }
}
