<?php

namespace EnumType;

/**
 * This class stands for WaterSubmodesOfTransportEnumeration EnumType
 * Meta informations extracted from the WSDL
 * - documentation: Values for Water ModesOfTransport: TPEG pti_table_07.
 * @subpackage Enumerations
 */
class WaterSubmodesOfTransportEnumeration
{
    /**
     * Constant for value 'pti7_0'
     * @return string 'pti7_0'
     */
    const VALUE_PTI_7_0 = 'pti7_0';
    /**
     * Constant for value 'unknown'
     * @return string 'unknown'
     */
    const VALUE_UNKNOWN = 'unknown';
    /**
     * Constant for value 'pti7_1'
     * @return string 'pti7_1'
     */
    const VALUE_PTI_7_1 = 'pti7_1';
    /**
     * Constant for value 'internationalCarFerryService'
     * @return string 'internationalCarFerryService'
     */
    const VALUE_INTERNATIONAL_CAR_FERRY_SERVICE = 'internationalCarFerryService';
    /**
     * Constant for value 'pti7_2'
     * @return string 'pti7_2'
     */
    const VALUE_PTI_7_2 = 'pti7_2';
    /**
     * Constant for value 'nationalCarFerryService'
     * @return string 'nationalCarFerryService'
     */
    const VALUE_NATIONAL_CAR_FERRY_SERVICE = 'nationalCarFerryService';
    /**
     * Constant for value 'pti7_3'
     * @return string 'pti7_3'
     */
    const VALUE_PTI_7_3 = 'pti7_3';
    /**
     * Constant for value 'regionalCarFerryService'
     * @return string 'regionalCarFerryService'
     */
    const VALUE_REGIONAL_CAR_FERRY_SERVICE = 'regionalCarFerryService';
    /**
     * Constant for value 'pti7_4'
     * @return string 'pti7_4'
     */
    const VALUE_PTI_7_4 = 'pti7_4';
    /**
     * Constant for value 'localCarFerryService'
     * @return string 'localCarFerryService'
     */
    const VALUE_LOCAL_CAR_FERRY_SERVICE = 'localCarFerryService';
    /**
     * Constant for value 'pti7_5'
     * @return string 'pti7_5'
     */
    const VALUE_PTI_7_5 = 'pti7_5';
    /**
     * Constant for value 'internationalPassengerFerry'
     * @return string 'internationalPassengerFerry'
     */
    const VALUE_INTERNATIONAL_PASSENGER_FERRY = 'internationalPassengerFerry';
    /**
     * Constant for value 'pti7_6'
     * @return string 'pti7_6'
     */
    const VALUE_PTI_7_6 = 'pti7_6';
    /**
     * Constant for value 'nationalPassengerFerry'
     * @return string 'nationalPassengerFerry'
     */
    const VALUE_NATIONAL_PASSENGER_FERRY = 'nationalPassengerFerry';
    /**
     * Constant for value 'pti7_7'
     * @return string 'pti7_7'
     */
    const VALUE_PTI_7_7 = 'pti7_7';
    /**
     * Constant for value 'regionalPassengerFerry'
     * @return string 'regionalPassengerFerry'
     */
    const VALUE_REGIONAL_PASSENGER_FERRY = 'regionalPassengerFerry';
    /**
     * Constant for value 'pti7_8'
     * @return string 'pti7_8'
     */
    const VALUE_PTI_7_8 = 'pti7_8';
    /**
     * Constant for value 'localPassengerFerry'
     * @return string 'localPassengerFerry'
     */
    const VALUE_LOCAL_PASSENGER_FERRY = 'localPassengerFerry';
    /**
     * Constant for value 'pti7_9'
     * @return string 'pti7_9'
     */
    const VALUE_PTI_7_9 = 'pti7_9';
    /**
     * Constant for value 'postBoat'
     * @return string 'postBoat'
     */
    const VALUE_POST_BOAT = 'postBoat';
    /**
     * Constant for value 'pti7_10'
     * @return string 'pti7_10'
     */
    const VALUE_PTI_7_10 = 'pti7_10';
    /**
     * Constant for value 'trainFerry'
     * @return string 'trainFerry'
     */
    const VALUE_TRAIN_FERRY = 'trainFerry';
    /**
     * Constant for value 'pti7_11'
     * @return string 'pti7_11'
     */
    const VALUE_PTI_7_11 = 'pti7_11';
    /**
     * Constant for value 'roadFerryLink'
     * @return string 'roadFerryLink'
     */
    const VALUE_ROAD_FERRY_LINK = 'roadFerryLink';
    /**
     * Constant for value 'pti7_12'
     * @return string 'pti7_12'
     */
    const VALUE_PTI_7_12 = 'pti7_12';
    /**
     * Constant for value 'airportBoatLink'
     * @return string 'airportBoatLink'
     */
    const VALUE_AIRPORT_BOAT_LINK = 'airportBoatLink';
    /**
     * Constant for value 'pti7_13'
     * @return string 'pti7_13'
     */
    const VALUE_PTI_7_13 = 'pti7_13';
    /**
     * Constant for value 'highSpeedVehicleService'
     * @return string 'highSpeedVehicleService'
     */
    const VALUE_HIGH_SPEED_VEHICLE_SERVICE = 'highSpeedVehicleService';
    /**
     * Constant for value 'pti7_14'
     * @return string 'pti7_14'
     */
    const VALUE_PTI_7_14 = 'pti7_14';
    /**
     * Constant for value 'highSpeedPassengerService'
     * @return string 'highSpeedPassengerService'
     */
    const VALUE_HIGH_SPEED_PASSENGER_SERVICE = 'highSpeedPassengerService';
    /**
     * Constant for value 'pti7_15'
     * @return string 'pti7_15'
     */
    const VALUE_PTI_7_15 = 'pti7_15';
    /**
     * Constant for value 'sightseeingService'
     * @return string 'sightseeingService'
     */
    const VALUE_SIGHTSEEING_SERVICE = 'sightseeingService';
    /**
     * Constant for value 'pti7_16'
     * @return string 'pti7_16'
     */
    const VALUE_PTI_7_16 = 'pti7_16';
    /**
     * Constant for value 'schoolBoat'
     * @return string 'schoolBoat'
     */
    const VALUE_SCHOOL_BOAT = 'schoolBoat';
    /**
     * Constant for value 'pti7_17'
     * @return string 'pti7_17'
     */
    const VALUE_PTI_7_17 = 'pti7_17';
    /**
     * Constant for value 'cableFerry'
     * @return string 'cableFerry'
     */
    const VALUE_CABLE_FERRY = 'cableFerry';
    /**
     * Constant for value 'pti7_18'
     * @return string 'pti7_18'
     */
    const VALUE_PTI_7_18 = 'pti7_18';
    /**
     * Constant for value 'riverBus'
     * @return string 'riverBus'
     */
    const VALUE_RIVER_BUS = 'riverBus';
    /**
     * Constant for value 'pti7_19'
     * @return string 'pti7_19'
     */
    const VALUE_PTI_7_19 = 'pti7_19';
    /**
     * Constant for value 'scheduledFerry'
     * @return string 'scheduledFerry'
     */
    const VALUE_SCHEDULED_FERRY = 'scheduledFerry';
    /**
     * Constant for value 'pti7_20'
     * @return string 'pti7_20'
     */
    const VALUE_PTI_7_20 = 'pti7_20';
    /**
     * Constant for value 'shuttleFerryService'
     * @return string 'shuttleFerryService'
     */
    const VALUE_SHUTTLE_FERRY_SERVICE = 'shuttleFerryService';
    /**
     * Constant for value 'pti7_21'
     * @return string 'pti7_21'
     */
    const VALUE_PTI_7_21 = 'pti7_21';
    /**
     * Constant for value 'allWaterTransportServices'
     * @return string 'allWaterTransportServices'
     */
    const VALUE_ALL_WATER_TRANSPORT_SERVICES = 'allWaterTransportServices';
    /**
     * Constant for value 'pti7_255'
     * @return string 'pti7_255'
     */
    const VALUE_PTI_7_255 = 'pti7_255';
    /**
     * Constant for value 'undefinedWaterTransport'
     * @return string 'undefinedWaterTransport'
     */
    const VALUE_UNDEFINED_WATER_TRANSPORT = 'undefinedWaterTransport';
    /**
     * Return true if value is allowed
     * @uses self::getValidValues()
     * @param mixed $value value
     * @return bool true|false
     */
    public static function valueIsValid($value)
    {
        return ($value === null) || in_array($value, self::getValidValues(), true);
    }
    /**
     * Return allowed values
     * @uses self::VALUE_PTI_7_0
     * @uses self::VALUE_UNKNOWN
     * @uses self::VALUE_PTI_7_1
     * @uses self::VALUE_INTERNATIONAL_CAR_FERRY_SERVICE
     * @uses self::VALUE_PTI_7_2
     * @uses self::VALUE_NATIONAL_CAR_FERRY_SERVICE
     * @uses self::VALUE_PTI_7_3
     * @uses self::VALUE_REGIONAL_CAR_FERRY_SERVICE
     * @uses self::VALUE_PTI_7_4
     * @uses self::VALUE_LOCAL_CAR_FERRY_SERVICE
     * @uses self::VALUE_PTI_7_5
     * @uses self::VALUE_INTERNATIONAL_PASSENGER_FERRY
     * @uses self::VALUE_PTI_7_6
     * @uses self::VALUE_NATIONAL_PASSENGER_FERRY
     * @uses self::VALUE_PTI_7_7
     * @uses self::VALUE_REGIONAL_PASSENGER_FERRY
     * @uses self::VALUE_PTI_7_8
     * @uses self::VALUE_LOCAL_PASSENGER_FERRY
     * @uses self::VALUE_PTI_7_9
     * @uses self::VALUE_POST_BOAT
     * @uses self::VALUE_PTI_7_10
     * @uses self::VALUE_TRAIN_FERRY
     * @uses self::VALUE_PTI_7_11
     * @uses self::VALUE_ROAD_FERRY_LINK
     * @uses self::VALUE_PTI_7_12
     * @uses self::VALUE_AIRPORT_BOAT_LINK
     * @uses self::VALUE_PTI_7_13
     * @uses self::VALUE_HIGH_SPEED_VEHICLE_SERVICE
     * @uses self::VALUE_PTI_7_14
     * @uses self::VALUE_HIGH_SPEED_PASSENGER_SERVICE
     * @uses self::VALUE_PTI_7_15
     * @uses self::VALUE_SIGHTSEEING_SERVICE
     * @uses self::VALUE_PTI_7_16
     * @uses self::VALUE_SCHOOL_BOAT
     * @uses self::VALUE_PTI_7_17
     * @uses self::VALUE_CABLE_FERRY
     * @uses self::VALUE_PTI_7_18
     * @uses self::VALUE_RIVER_BUS
     * @uses self::VALUE_PTI_7_19
     * @uses self::VALUE_SCHEDULED_FERRY
     * @uses self::VALUE_PTI_7_20
     * @uses self::VALUE_SHUTTLE_FERRY_SERVICE
     * @uses self::VALUE_PTI_7_21
     * @uses self::VALUE_ALL_WATER_TRANSPORT_SERVICES
     * @uses self::VALUE_PTI_7_255
     * @uses self::VALUE_UNDEFINED_WATER_TRANSPORT
     * @return string[]
     */
    public static function getValidValues()
    {
        return array(
            self::VALUE_PTI_7_0,
            self::VALUE_UNKNOWN,
            self::VALUE_PTI_7_1,
            self::VALUE_INTERNATIONAL_CAR_FERRY_SERVICE,
            self::VALUE_PTI_7_2,
            self::VALUE_NATIONAL_CAR_FERRY_SERVICE,
            self::VALUE_PTI_7_3,
            self::VALUE_REGIONAL_CAR_FERRY_SERVICE,
            self::VALUE_PTI_7_4,
            self::VALUE_LOCAL_CAR_FERRY_SERVICE,
            self::VALUE_PTI_7_5,
            self::VALUE_INTERNATIONAL_PASSENGER_FERRY,
            self::VALUE_PTI_7_6,
            self::VALUE_NATIONAL_PASSENGER_FERRY,
            self::VALUE_PTI_7_7,
            self::VALUE_REGIONAL_PASSENGER_FERRY,
            self::VALUE_PTI_7_8,
            self::VALUE_LOCAL_PASSENGER_FERRY,
            self::VALUE_PTI_7_9,
            self::VALUE_POST_BOAT,
            self::VALUE_PTI_7_10,
            self::VALUE_TRAIN_FERRY,
            self::VALUE_PTI_7_11,
            self::VALUE_ROAD_FERRY_LINK,
            self::VALUE_PTI_7_12,
            self::VALUE_AIRPORT_BOAT_LINK,
            self::VALUE_PTI_7_13,
            self::VALUE_HIGH_SPEED_VEHICLE_SERVICE,
            self::VALUE_PTI_7_14,
            self::VALUE_HIGH_SPEED_PASSENGER_SERVICE,
            self::VALUE_PTI_7_15,
            self::VALUE_SIGHTSEEING_SERVICE,
            self::VALUE_PTI_7_16,
            self::VALUE_SCHOOL_BOAT,
            self::VALUE_PTI_7_17,
            self::VALUE_CABLE_FERRY,
            self::VALUE_PTI_7_18,
            self::VALUE_RIVER_BUS,
            self::VALUE_PTI_7_19,
            self::VALUE_SCHEDULED_FERRY,
            self::VALUE_PTI_7_20,
            self::VALUE_SHUTTLE_FERRY_SERVICE,
            self::VALUE_PTI_7_21,
            self::VALUE_ALL_WATER_TRANSPORT_SERVICES,
            self::VALUE_PTI_7_255,
            self::VALUE_UNDEFINED_WATER_TRANSPORT,
        );
    }
    /**
     * Method returning the class name
     * @return string __CLASS__
     */
    public function __toString()
    {
        return __CLASS__;
    }
}
