Subversion Repositories SmartDukaan

Rev

Blame | Last modification | View Log | RSS feed

//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6 
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2013.03.04 at 03:49:29 PM IST 
//


package in.shop2020.feeds.products;

import java.math.BigInteger;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.NormalizedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;


/**
 * <p>Java class for anonymous complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * &lt;complexType>
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="AnalogFormats" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="general"/>
 *               &lt;enumeration value="8mm"/>
 *               &lt;enumeration value="betacam-sp"/>
 *               &lt;enumeration value="hi-8"/>
 *               &lt;enumeration value="s-vhs"/>
 *               &lt;enumeration value="s-vhs-c"/>
 *               &lt;enumeration value="vhs"/>
 *               &lt;enumeration value="vhs-c"/>
 *               &lt;enumeration value="other"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="DigitalFormats" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="general"/>
 *               &lt;enumeration value="digital-betacam"/>
 *               &lt;enumeration value="dv"/>
 *               &lt;enumeration value="dvcam"/>
 *               &lt;enumeration value="dvcpro"/>
 *               &lt;enumeration value="minidv"/>
 *               &lt;enumeration value="micromv"/>
 *               &lt;enumeration value="digital8"/>
 *               &lt;enumeration value="dvd"/>
 *               &lt;enumeration value="minidisc"/>
 *               &lt;enumeration value="other"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="SensorType" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="ccd"/>
 *               &lt;enumeration value="3-chip-ccd"/>
 *               &lt;enumeration value="cmos"/>
 *               &lt;enumeration value="progressive-scan-ccd"/>
 *               &lt;enumeration value="fixed-zoom-lens"/>
 *               &lt;enumeration value="interchangeable-lens"/>
 *               &lt;enumeration value="other-lens"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="FilmFormats" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="general"/>
 *               &lt;enumeration value="8mm"/>
 *               &lt;enumeration value="16mm"/>
 *               &lt;enumeration value="35mm"/>
 *               &lt;enumeration value="65mm"/>
 *               &lt;enumeration value="70mm"/>
 *               &lt;enumeration value="other"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="LensType" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="fixed-non-zoom"/>
 *               &lt;enumeration value="fixed-zoom"/>
 *               &lt;enumeration value="interchangeable"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="OpticalZoom" type="{}ZoomDimension" minOccurs="0"/>
 *         &lt;element name="DigitalZoom" type="{}ZoomDimension" minOccurs="0"/>
 *         &lt;element name="VideoResolution" type="{}PixelDimension" minOccurs="0"/>
 *         &lt;element name="ThreeDTechnology" type="{}ThreeDTechnologyTypeValues" minOccurs="0"/>
 *         &lt;element name="AlarmClock" type="{}LongString" minOccurs="0"/>
 *         &lt;element name="AnalogRBGInput" type="{}LongString" minOccurs="0"/>
 *         &lt;element name="Audio" type="{}AudioTypeValues" minOccurs="0"/>
 *         &lt;element name="LCDScreenSize" type="{}LengthDimension" minOccurs="0"/>
 *         &lt;element name="LCDSwivel" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="Viewfinder" type="{}StringNotNull" maxOccurs="3" minOccurs="0"/>
 *         &lt;element name="MinAperture" type="{}ApertureDimension" minOccurs="0"/>
 *         &lt;element name="MaxAperture" type="{}ApertureDimension" minOccurs="0"/>
 *         &lt;element name="ImageStabilization" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="InfraredCapability" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="FirewireOutput" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="S-VideoOutput" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="USBOutput" maxOccurs="2" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="usb1.1"/>
 *               &lt;enumeration value="usb2.0"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="AVOutput" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="Connectivity" type="{}LongString" minOccurs="0"/>
 *         &lt;element name="DigitalStillCapability" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="DigitalStillResolution" type="{}StringNotNull" minOccurs="0"/>
 *         &lt;element name="Durability" type="{}LongString" maxOccurs="5" minOccurs="0"/>
 *         &lt;element name="ExternalMemoryType" type="{}ExternalMemoryTypeValues" minOccurs="0"/>
 *         &lt;element name="ExternalMemoryIncluded" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="ExternalMemorySize" type="{}MemorySizeDimension" minOccurs="0"/>
 *         &lt;element name="FixedFocalLength" type="{}LengthDimension" minOccurs="0"/>
 *         &lt;element name="FocusFeatures" type="{}LongString" minOccurs="0"/>
 *         &lt;element name="ImageFormat" type="{}ImageFormatTypeValues" maxOccurs="2" minOccurs="0"/>
 *         &lt;element name="InternalMemorySize" type="{}MemorySizeDimension" minOccurs="0"/>
 *         &lt;element name="InternalMemoryType" type="{}LongString" minOccurs="0"/>
 *         &lt;element name="ISORange" type="{}LongString" minOccurs="0"/>
 *         &lt;element name="MaximumFocalLength" type="{}LengthDimension" minOccurs="0"/>
 *         &lt;element name="MediaStorage" type="{}LongString" minOccurs="0"/>
 *         &lt;element name="MinimumFocalLength" type="{}LengthDimension" minOccurs="0"/>
 *         &lt;element name="MPEGMovieMode" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="mpeg"/>
 *               &lt;enumeration value="mpeg2"/>
 *               &lt;enumeration value="mpeg4"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="USBStreaming" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="HeadphoneJack" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="FlyingEraseHeads" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="Autolight" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="HotShoe" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element ref="{}ComputerPlatform" maxOccurs="3" minOccurs="0"/>
 *         &lt;element name="SoftwareIncluded" type="{}StringNotNull" minOccurs="0"/>
 *         &lt;element name="BatteryType" type="{}StringNotNull" minOccurs="0"/>
 *         &lt;element name="RechargeableBatteryIncluded" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="ACAdapterIncluded" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="Remote" type="{}LongString" minOccurs="0"/>
 *         &lt;element name="RemoteIncluded" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="PlaybackFormat" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="pal"/>
 *               &lt;enumeration value="ntsc"/>
 *               &lt;enumeration value="multisystem"/>
 *               &lt;enumeration value="secam"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="Features" maxOccurs="7" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="lcd-screen"/>
 *               &lt;enumeration value="mpeg"/>
 *               &lt;enumeration value="digital-still"/>
 *               &lt;enumeration value="memory-card-compatible"/>
 *               &lt;enumeration value="image-stabilization"/>
 *               &lt;enumeration value="insert-edit"/>
 *               &lt;enumeration value="underwater"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="TotalFirewirePorts" type="{}PositiveInteger" minOccurs="0"/>
 *         &lt;element name="TotalNumberOfHDMIPorts" type="{}PositiveInteger" minOccurs="0"/>
 *         &lt;element name="TotalUSB1.0Ports" type="{}PositiveInteger" minOccurs="0"/>
 *         &lt;element name="TotalUSB1.1Ports" type="{}PositiveInteger" minOccurs="0"/>
 *         &lt;element name="TotalUSB2.0Ports" type="{}PositiveInteger" minOccurs="0"/>
 *         &lt;element name="TotalUSB3.0Ports" type="{}PositiveInteger" minOccurs="0"/>
 *         &lt;element name="TotalUSBPorts" type="{}PositiveInteger" minOccurs="0"/>
 *         &lt;element name="Touchscreen" type="{}TouchscreenTypeValues" minOccurs="0"/>
 *         &lt;element name="UseModes" type="{}StringNotNull" maxOccurs="3" minOccurs="0"/>
 *         &lt;element name="WaterResistanceDepth" type="{}LengthDimension" minOccurs="0"/>
 *         &lt;element name="WaterResistanceLevel" type="{}WaterResistantType" minOccurs="0"/>
 *         &lt;element name="WirelessTechnology" type="{}LongString" maxOccurs="3" minOccurs="0"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "analogFormats",
    "digitalFormats",
    "sensorType",
    "filmFormats",
    "lensType",
    "opticalZoom",
    "digitalZoom",
    "videoResolution",
    "threeDTechnology",
    "alarmClock",
    "analogRBGInput",
    "audio",
    "lcdScreenSize",
    "lcdSwivel",
    "viewfinder",
    "minAperture",
    "maxAperture",
    "imageStabilization",
    "infraredCapability",
    "firewireOutput",
    "sVideoOutput",
    "usbOutput",
    "avOutput",
    "connectivity",
    "digitalStillCapability",
    "digitalStillResolution",
    "durability",
    "externalMemoryType",
    "externalMemoryIncluded",
    "externalMemorySize",
    "fixedFocalLength",
    "focusFeatures",
    "imageFormat",
    "internalMemorySize",
    "internalMemoryType",
    "isoRange",
    "maximumFocalLength",
    "mediaStorage",
    "minimumFocalLength",
    "mpegMovieMode",
    "usbStreaming",
    "headphoneJack",
    "flyingEraseHeads",
    "autolight",
    "hotShoe",
    "computerPlatform",
    "softwareIncluded",
    "batteryType",
    "rechargeableBatteryIncluded",
    "acAdapterIncluded",
    "remote",
    "remoteIncluded",
    "playbackFormat",
    "features",
    "totalFirewirePorts",
    "totalNumberOfHDMIPorts",
    "totalUSB10Ports",
    "totalUSB11Ports",
    "totalUSB20Ports",
    "totalUSB30Ports",
    "totalUSBPorts",
    "touchscreen",
    "useModes",
    "waterResistanceDepth",
    "waterResistanceLevel",
    "wirelessTechnology"
})
@XmlRootElement(name = "Camcorder")
public class Camcorder {

    @XmlElement(name = "AnalogFormats")
    protected String analogFormats;
    @XmlElement(name = "DigitalFormats")
    protected String digitalFormats;
    @XmlElement(name = "SensorType")
    protected String sensorType;
    @XmlElement(name = "FilmFormats")
    protected String filmFormats;
    @XmlElement(name = "LensType")
    protected String lensType;
    @XmlElement(name = "OpticalZoom")
    protected ZoomDimension opticalZoom;
    @XmlElement(name = "DigitalZoom")
    protected ZoomDimension digitalZoom;
    @XmlElement(name = "VideoResolution")
    protected PixelDimension videoResolution;
    @XmlElement(name = "ThreeDTechnology")
    protected ThreeDTechnologyTypeValues threeDTechnology;
    @XmlElement(name = "AlarmClock")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String alarmClock;
    @XmlElement(name = "AnalogRBGInput")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String analogRBGInput;
    @XmlElement(name = "Audio")
    protected AudioTypeValues audio;
    @XmlElement(name = "LCDScreenSize")
    protected LengthDimension lcdScreenSize;
    @XmlElement(name = "LCDSwivel")
    protected Boolean lcdSwivel;
    @XmlElement(name = "Viewfinder")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected List<String> viewfinder;
    @XmlElement(name = "MinAperture")
    protected ApertureDimension minAperture;
    @XmlElement(name = "MaxAperture")
    protected ApertureDimension maxAperture;
    @XmlElement(name = "ImageStabilization")
    protected Boolean imageStabilization;
    @XmlElement(name = "InfraredCapability")
    protected Boolean infraredCapability;
    @XmlElement(name = "FirewireOutput")
    protected Boolean firewireOutput;
    @XmlElement(name = "S-VideoOutput")
    protected Boolean sVideoOutput;
    @XmlElement(name = "USBOutput")
    protected List<String> usbOutput;
    @XmlElement(name = "AVOutput")
    protected Boolean avOutput;
    @XmlElement(name = "Connectivity")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String connectivity;
    @XmlElement(name = "DigitalStillCapability")
    protected Boolean digitalStillCapability;
    @XmlElement(name = "DigitalStillResolution")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String digitalStillResolution;
    @XmlElement(name = "Durability")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected List<String> durability;
    @XmlElement(name = "ExternalMemoryType")
    protected String externalMemoryType;
    @XmlElement(name = "ExternalMemoryIncluded")
    protected Boolean externalMemoryIncluded;
    @XmlElement(name = "ExternalMemorySize")
    protected MemorySizeDimension externalMemorySize;
    @XmlElement(name = "FixedFocalLength")
    protected LengthDimension fixedFocalLength;
    @XmlElement(name = "FocusFeatures")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String focusFeatures;
    @XmlElement(name = "ImageFormat")
    protected List<ImageFormatTypeValues> imageFormat;
    @XmlElement(name = "InternalMemorySize")
    protected MemorySizeDimension internalMemorySize;
    @XmlElement(name = "InternalMemoryType")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String internalMemoryType;
    @XmlElement(name = "ISORange")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String isoRange;
    @XmlElement(name = "MaximumFocalLength")
    protected LengthDimension maximumFocalLength;
    @XmlElement(name = "MediaStorage")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String mediaStorage;
    @XmlElement(name = "MinimumFocalLength")
    protected LengthDimension minimumFocalLength;
    @XmlElement(name = "MPEGMovieMode")
    protected String mpegMovieMode;
    @XmlElement(name = "USBStreaming")
    protected Boolean usbStreaming;
    @XmlElement(name = "HeadphoneJack")
    protected Boolean headphoneJack;
    @XmlElement(name = "FlyingEraseHeads")
    protected Boolean flyingEraseHeads;
    @XmlElement(name = "Autolight")
    protected Boolean autolight;
    @XmlElement(name = "HotShoe")
    protected Boolean hotShoe;
    @XmlElement(name = "ComputerPlatform")
    protected List<ComputerPlatform> computerPlatform;
    @XmlElement(name = "SoftwareIncluded")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String softwareIncluded;
    @XmlElement(name = "BatteryType")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String batteryType;
    @XmlElement(name = "RechargeableBatteryIncluded")
    protected Boolean rechargeableBatteryIncluded;
    @XmlElement(name = "ACAdapterIncluded")
    protected Boolean acAdapterIncluded;
    @XmlElement(name = "Remote")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String remote;
    @XmlElement(name = "RemoteIncluded")
    protected Boolean remoteIncluded;
    @XmlElement(name = "PlaybackFormat")
    protected String playbackFormat;
    @XmlElement(name = "Features")
    protected List<String> features;
    @XmlElement(name = "TotalFirewirePorts")
    protected BigInteger totalFirewirePorts;
    @XmlElement(name = "TotalNumberOfHDMIPorts")
    protected BigInteger totalNumberOfHDMIPorts;
    @XmlElement(name = "TotalUSB1.0Ports")
    protected BigInteger totalUSB10Ports;
    @XmlElement(name = "TotalUSB1.1Ports")
    protected BigInteger totalUSB11Ports;
    @XmlElement(name = "TotalUSB2.0Ports")
    protected BigInteger totalUSB20Ports;
    @XmlElement(name = "TotalUSB3.0Ports")
    protected BigInteger totalUSB30Ports;
    @XmlElement(name = "TotalUSBPorts")
    protected BigInteger totalUSBPorts;
    @XmlElement(name = "Touchscreen")
    protected TouchscreenTypeValues touchscreen;
    @XmlElement(name = "UseModes")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected List<String> useModes;
    @XmlElement(name = "WaterResistanceDepth")
    protected LengthDimension waterResistanceDepth;
    @XmlElement(name = "WaterResistanceLevel")
    protected WaterResistantType waterResistanceLevel;
    @XmlElement(name = "WirelessTechnology")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected List<String> wirelessTechnology;

    /**
     * Gets the value of the analogFormats property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getAnalogFormats() {
        return analogFormats;
    }

    /**
     * Sets the value of the analogFormats property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setAnalogFormats(String value) {
        this.analogFormats = value;
    }

    /**
     * Gets the value of the digitalFormats property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDigitalFormats() {
        return digitalFormats;
    }

    /**
     * Sets the value of the digitalFormats property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDigitalFormats(String value) {
        this.digitalFormats = value;
    }

    /**
     * Gets the value of the sensorType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getSensorType() {
        return sensorType;
    }

    /**
     * Sets the value of the sensorType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setSensorType(String value) {
        this.sensorType = value;
    }

    /**
     * Gets the value of the filmFormats property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFilmFormats() {
        return filmFormats;
    }

    /**
     * Sets the value of the filmFormats property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFilmFormats(String value) {
        this.filmFormats = value;
    }

    /**
     * Gets the value of the lensType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getLensType() {
        return lensType;
    }

    /**
     * Sets the value of the lensType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setLensType(String value) {
        this.lensType = value;
    }

    /**
     * Gets the value of the opticalZoom property.
     * 
     * @return
     *     possible object is
     *     {@link ZoomDimension }
     *     
     */
    public ZoomDimension getOpticalZoom() {
        return opticalZoom;
    }

    /**
     * Sets the value of the opticalZoom property.
     * 
     * @param value
     *     allowed object is
     *     {@link ZoomDimension }
     *     
     */
    public void setOpticalZoom(ZoomDimension value) {
        this.opticalZoom = value;
    }

    /**
     * Gets the value of the digitalZoom property.
     * 
     * @return
     *     possible object is
     *     {@link ZoomDimension }
     *     
     */
    public ZoomDimension getDigitalZoom() {
        return digitalZoom;
    }

    /**
     * Sets the value of the digitalZoom property.
     * 
     * @param value
     *     allowed object is
     *     {@link ZoomDimension }
     *     
     */
    public void setDigitalZoom(ZoomDimension value) {
        this.digitalZoom = value;
    }

    /**
     * Gets the value of the videoResolution property.
     * 
     * @return
     *     possible object is
     *     {@link PixelDimension }
     *     
     */
    public PixelDimension getVideoResolution() {
        return videoResolution;
    }

    /**
     * Sets the value of the videoResolution property.
     * 
     * @param value
     *     allowed object is
     *     {@link PixelDimension }
     *     
     */
    public void setVideoResolution(PixelDimension value) {
        this.videoResolution = value;
    }

    /**
     * Gets the value of the threeDTechnology property.
     * 
     * @return
     *     possible object is
     *     {@link ThreeDTechnologyTypeValues }
     *     
     */
    public ThreeDTechnologyTypeValues getThreeDTechnology() {
        return threeDTechnology;
    }

    /**
     * Sets the value of the threeDTechnology property.
     * 
     * @param value
     *     allowed object is
     *     {@link ThreeDTechnologyTypeValues }
     *     
     */
    public void setThreeDTechnology(ThreeDTechnologyTypeValues value) {
        this.threeDTechnology = value;
    }

    /**
     * Gets the value of the alarmClock property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getAlarmClock() {
        return alarmClock;
    }

    /**
     * Sets the value of the alarmClock property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setAlarmClock(String value) {
        this.alarmClock = value;
    }

    /**
     * Gets the value of the analogRBGInput property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getAnalogRBGInput() {
        return analogRBGInput;
    }

    /**
     * Sets the value of the analogRBGInput property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setAnalogRBGInput(String value) {
        this.analogRBGInput = value;
    }

    /**
     * Gets the value of the audio property.
     * 
     * @return
     *     possible object is
     *     {@link AudioTypeValues }
     *     
     */
    public AudioTypeValues getAudio() {
        return audio;
    }

    /**
     * Sets the value of the audio property.
     * 
     * @param value
     *     allowed object is
     *     {@link AudioTypeValues }
     *     
     */
    public void setAudio(AudioTypeValues value) {
        this.audio = value;
    }

    /**
     * Gets the value of the lcdScreenSize property.
     * 
     * @return
     *     possible object is
     *     {@link LengthDimension }
     *     
     */
    public LengthDimension getLCDScreenSize() {
        return lcdScreenSize;
    }

    /**
     * Sets the value of the lcdScreenSize property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthDimension }
     *     
     */
    public void setLCDScreenSize(LengthDimension value) {
        this.lcdScreenSize = value;
    }

    /**
     * Gets the value of the lcdSwivel property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isLCDSwivel() {
        return lcdSwivel;
    }

    /**
     * Sets the value of the lcdSwivel property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setLCDSwivel(Boolean value) {
        this.lcdSwivel = value;
    }

    /**
     * Gets the value of the viewfinder property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the viewfinder property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getViewfinder().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getViewfinder() {
        if (viewfinder == null) {
            viewfinder = new ArrayList<String>();
        }
        return this.viewfinder;
    }

    /**
     * Gets the value of the minAperture property.
     * 
     * @return
     *     possible object is
     *     {@link ApertureDimension }
     *     
     */
    public ApertureDimension getMinAperture() {
        return minAperture;
    }

    /**
     * Sets the value of the minAperture property.
     * 
     * @param value
     *     allowed object is
     *     {@link ApertureDimension }
     *     
     */
    public void setMinAperture(ApertureDimension value) {
        this.minAperture = value;
    }

    /**
     * Gets the value of the maxAperture property.
     * 
     * @return
     *     possible object is
     *     {@link ApertureDimension }
     *     
     */
    public ApertureDimension getMaxAperture() {
        return maxAperture;
    }

    /**
     * Sets the value of the maxAperture property.
     * 
     * @param value
     *     allowed object is
     *     {@link ApertureDimension }
     *     
     */
    public void setMaxAperture(ApertureDimension value) {
        this.maxAperture = value;
    }

    /**
     * Gets the value of the imageStabilization property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isImageStabilization() {
        return imageStabilization;
    }

    /**
     * Sets the value of the imageStabilization property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setImageStabilization(Boolean value) {
        this.imageStabilization = value;
    }

    /**
     * Gets the value of the infraredCapability property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isInfraredCapability() {
        return infraredCapability;
    }

    /**
     * Sets the value of the infraredCapability property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setInfraredCapability(Boolean value) {
        this.infraredCapability = value;
    }

    /**
     * Gets the value of the firewireOutput property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isFirewireOutput() {
        return firewireOutput;
    }

    /**
     * Sets the value of the firewireOutput property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setFirewireOutput(Boolean value) {
        this.firewireOutput = value;
    }

    /**
     * Gets the value of the sVideoOutput property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isSVideoOutput() {
        return sVideoOutput;
    }

    /**
     * Sets the value of the sVideoOutput property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setSVideoOutput(Boolean value) {
        this.sVideoOutput = value;
    }

    /**
     * Gets the value of the usbOutput property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the usbOutput property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getUSBOutput().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getUSBOutput() {
        if (usbOutput == null) {
            usbOutput = new ArrayList<String>();
        }
        return this.usbOutput;
    }

    /**
     * Gets the value of the avOutput property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isAVOutput() {
        return avOutput;
    }

    /**
     * Sets the value of the avOutput property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setAVOutput(Boolean value) {
        this.avOutput = value;
    }

    /**
     * Gets the value of the connectivity property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getConnectivity() {
        return connectivity;
    }

    /**
     * Sets the value of the connectivity property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setConnectivity(String value) {
        this.connectivity = value;
    }

    /**
     * Gets the value of the digitalStillCapability property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isDigitalStillCapability() {
        return digitalStillCapability;
    }

    /**
     * Sets the value of the digitalStillCapability property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setDigitalStillCapability(Boolean value) {
        this.digitalStillCapability = value;
    }

    /**
     * Gets the value of the digitalStillResolution property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDigitalStillResolution() {
        return digitalStillResolution;
    }

    /**
     * Sets the value of the digitalStillResolution property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDigitalStillResolution(String value) {
        this.digitalStillResolution = value;
    }

    /**
     * Gets the value of the durability property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the durability property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getDurability().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getDurability() {
        if (durability == null) {
            durability = new ArrayList<String>();
        }
        return this.durability;
    }

    /**
     * Gets the value of the externalMemoryType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getExternalMemoryType() {
        return externalMemoryType;
    }

    /**
     * Sets the value of the externalMemoryType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setExternalMemoryType(String value) {
        this.externalMemoryType = value;
    }

    /**
     * Gets the value of the externalMemoryIncluded property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isExternalMemoryIncluded() {
        return externalMemoryIncluded;
    }

    /**
     * Sets the value of the externalMemoryIncluded property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setExternalMemoryIncluded(Boolean value) {
        this.externalMemoryIncluded = value;
    }

    /**
     * Gets the value of the externalMemorySize property.
     * 
     * @return
     *     possible object is
     *     {@link MemorySizeDimension }
     *     
     */
    public MemorySizeDimension getExternalMemorySize() {
        return externalMemorySize;
    }

    /**
     * Sets the value of the externalMemorySize property.
     * 
     * @param value
     *     allowed object is
     *     {@link MemorySizeDimension }
     *     
     */
    public void setExternalMemorySize(MemorySizeDimension value) {
        this.externalMemorySize = value;
    }

    /**
     * Gets the value of the fixedFocalLength property.
     * 
     * @return
     *     possible object is
     *     {@link LengthDimension }
     *     
     */
    public LengthDimension getFixedFocalLength() {
        return fixedFocalLength;
    }

    /**
     * Sets the value of the fixedFocalLength property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthDimension }
     *     
     */
    public void setFixedFocalLength(LengthDimension value) {
        this.fixedFocalLength = value;
    }

    /**
     * Gets the value of the focusFeatures property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFocusFeatures() {
        return focusFeatures;
    }

    /**
     * Sets the value of the focusFeatures property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFocusFeatures(String value) {
        this.focusFeatures = value;
    }

    /**
     * Gets the value of the imageFormat property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the imageFormat property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getImageFormat().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link ImageFormatTypeValues }
     * 
     * 
     */
    public List<ImageFormatTypeValues> getImageFormat() {
        if (imageFormat == null) {
            imageFormat = new ArrayList<ImageFormatTypeValues>();
        }
        return this.imageFormat;
    }

    /**
     * Gets the value of the internalMemorySize property.
     * 
     * @return
     *     possible object is
     *     {@link MemorySizeDimension }
     *     
     */
    public MemorySizeDimension getInternalMemorySize() {
        return internalMemorySize;
    }

    /**
     * Sets the value of the internalMemorySize property.
     * 
     * @param value
     *     allowed object is
     *     {@link MemorySizeDimension }
     *     
     */
    public void setInternalMemorySize(MemorySizeDimension value) {
        this.internalMemorySize = value;
    }

    /**
     * Gets the value of the internalMemoryType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getInternalMemoryType() {
        return internalMemoryType;
    }

    /**
     * Sets the value of the internalMemoryType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setInternalMemoryType(String value) {
        this.internalMemoryType = value;
    }

    /**
     * Gets the value of the isoRange property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getISORange() {
        return isoRange;
    }

    /**
     * Sets the value of the isoRange property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setISORange(String value) {
        this.isoRange = value;
    }

    /**
     * Gets the value of the maximumFocalLength property.
     * 
     * @return
     *     possible object is
     *     {@link LengthDimension }
     *     
     */
    public LengthDimension getMaximumFocalLength() {
        return maximumFocalLength;
    }

    /**
     * Sets the value of the maximumFocalLength property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthDimension }
     *     
     */
    public void setMaximumFocalLength(LengthDimension value) {
        this.maximumFocalLength = value;
    }

    /**
     * Gets the value of the mediaStorage property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getMediaStorage() {
        return mediaStorage;
    }

    /**
     * Sets the value of the mediaStorage property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setMediaStorage(String value) {
        this.mediaStorage = value;
    }

    /**
     * Gets the value of the minimumFocalLength property.
     * 
     * @return
     *     possible object is
     *     {@link LengthDimension }
     *     
     */
    public LengthDimension getMinimumFocalLength() {
        return minimumFocalLength;
    }

    /**
     * Sets the value of the minimumFocalLength property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthDimension }
     *     
     */
    public void setMinimumFocalLength(LengthDimension value) {
        this.minimumFocalLength = value;
    }

    /**
     * Gets the value of the mpegMovieMode property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getMPEGMovieMode() {
        return mpegMovieMode;
    }

    /**
     * Sets the value of the mpegMovieMode property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setMPEGMovieMode(String value) {
        this.mpegMovieMode = value;
    }

    /**
     * Gets the value of the usbStreaming property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isUSBStreaming() {
        return usbStreaming;
    }

    /**
     * Sets the value of the usbStreaming property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setUSBStreaming(Boolean value) {
        this.usbStreaming = value;
    }

    /**
     * Gets the value of the headphoneJack property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isHeadphoneJack() {
        return headphoneJack;
    }

    /**
     * Sets the value of the headphoneJack property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setHeadphoneJack(Boolean value) {
        this.headphoneJack = value;
    }

    /**
     * Gets the value of the flyingEraseHeads property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isFlyingEraseHeads() {
        return flyingEraseHeads;
    }

    /**
     * Sets the value of the flyingEraseHeads property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setFlyingEraseHeads(Boolean value) {
        this.flyingEraseHeads = value;
    }

    /**
     * Gets the value of the autolight property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isAutolight() {
        return autolight;
    }

    /**
     * Sets the value of the autolight property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setAutolight(Boolean value) {
        this.autolight = value;
    }

    /**
     * Gets the value of the hotShoe property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isHotShoe() {
        return hotShoe;
    }

    /**
     * Sets the value of the hotShoe property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setHotShoe(Boolean value) {
        this.hotShoe = value;
    }

    /**
     * Gets the value of the computerPlatform property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the computerPlatform property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getComputerPlatform().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link ComputerPlatform }
     * 
     * 
     */
    public List<ComputerPlatform> getComputerPlatform() {
        if (computerPlatform == null) {
            computerPlatform = new ArrayList<ComputerPlatform>();
        }
        return this.computerPlatform;
    }

    /**
     * Gets the value of the softwareIncluded property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getSoftwareIncluded() {
        return softwareIncluded;
    }

    /**
     * Sets the value of the softwareIncluded property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setSoftwareIncluded(String value) {
        this.softwareIncluded = value;
    }

    /**
     * Gets the value of the batteryType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getBatteryType() {
        return batteryType;
    }

    /**
     * Sets the value of the batteryType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setBatteryType(String value) {
        this.batteryType = value;
    }

    /**
     * Gets the value of the rechargeableBatteryIncluded property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isRechargeableBatteryIncluded() {
        return rechargeableBatteryIncluded;
    }

    /**
     * Sets the value of the rechargeableBatteryIncluded property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setRechargeableBatteryIncluded(Boolean value) {
        this.rechargeableBatteryIncluded = value;
    }

    /**
     * Gets the value of the acAdapterIncluded property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isACAdapterIncluded() {
        return acAdapterIncluded;
    }

    /**
     * Sets the value of the acAdapterIncluded property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setACAdapterIncluded(Boolean value) {
        this.acAdapterIncluded = value;
    }

    /**
     * Gets the value of the remote property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getRemote() {
        return remote;
    }

    /**
     * Sets the value of the remote property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setRemote(String value) {
        this.remote = value;
    }

    /**
     * Gets the value of the remoteIncluded property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isRemoteIncluded() {
        return remoteIncluded;
    }

    /**
     * Sets the value of the remoteIncluded property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setRemoteIncluded(Boolean value) {
        this.remoteIncluded = value;
    }

    /**
     * Gets the value of the playbackFormat property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getPlaybackFormat() {
        return playbackFormat;
    }

    /**
     * Sets the value of the playbackFormat property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setPlaybackFormat(String value) {
        this.playbackFormat = value;
    }

    /**
     * Gets the value of the features property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the features property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getFeatures().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getFeatures() {
        if (features == null) {
            features = new ArrayList<String>();
        }
        return this.features;
    }

    /**
     * Gets the value of the totalFirewirePorts property.
     * 
     * @return
     *     possible object is
     *     {@link BigInteger }
     *     
     */
    public BigInteger getTotalFirewirePorts() {
        return totalFirewirePorts;
    }

    /**
     * Sets the value of the totalFirewirePorts property.
     * 
     * @param value
     *     allowed object is
     *     {@link BigInteger }
     *     
     */
    public void setTotalFirewirePorts(BigInteger value) {
        this.totalFirewirePorts = value;
    }

    /**
     * Gets the value of the totalNumberOfHDMIPorts property.
     * 
     * @return
     *     possible object is
     *     {@link BigInteger }
     *     
     */
    public BigInteger getTotalNumberOfHDMIPorts() {
        return totalNumberOfHDMIPorts;
    }

    /**
     * Sets the value of the totalNumberOfHDMIPorts property.
     * 
     * @param value
     *     allowed object is
     *     {@link BigInteger }
     *     
     */
    public void setTotalNumberOfHDMIPorts(BigInteger value) {
        this.totalNumberOfHDMIPorts = value;
    }

    /**
     * Gets the value of the totalUSB10Ports property.
     * 
     * @return
     *     possible object is
     *     {@link BigInteger }
     *     
     */
    public BigInteger getTotalUSB10Ports() {
        return totalUSB10Ports;
    }

    /**
     * Sets the value of the totalUSB10Ports property.
     * 
     * @param value
     *     allowed object is
     *     {@link BigInteger }
     *     
     */
    public void setTotalUSB10Ports(BigInteger value) {
        this.totalUSB10Ports = value;
    }

    /**
     * Gets the value of the totalUSB11Ports property.
     * 
     * @return
     *     possible object is
     *     {@link BigInteger }
     *     
     */
    public BigInteger getTotalUSB11Ports() {
        return totalUSB11Ports;
    }

    /**
     * Sets the value of the totalUSB11Ports property.
     * 
     * @param value
     *     allowed object is
     *     {@link BigInteger }
     *     
     */
    public void setTotalUSB11Ports(BigInteger value) {
        this.totalUSB11Ports = value;
    }

    /**
     * Gets the value of the totalUSB20Ports property.
     * 
     * @return
     *     possible object is
     *     {@link BigInteger }
     *     
     */
    public BigInteger getTotalUSB20Ports() {
        return totalUSB20Ports;
    }

    /**
     * Sets the value of the totalUSB20Ports property.
     * 
     * @param value
     *     allowed object is
     *     {@link BigInteger }
     *     
     */
    public void setTotalUSB20Ports(BigInteger value) {
        this.totalUSB20Ports = value;
    }

    /**
     * Gets the value of the totalUSB30Ports property.
     * 
     * @return
     *     possible object is
     *     {@link BigInteger }
     *     
     */
    public BigInteger getTotalUSB30Ports() {
        return totalUSB30Ports;
    }

    /**
     * Sets the value of the totalUSB30Ports property.
     * 
     * @param value
     *     allowed object is
     *     {@link BigInteger }
     *     
     */
    public void setTotalUSB30Ports(BigInteger value) {
        this.totalUSB30Ports = value;
    }

    /**
     * Gets the value of the totalUSBPorts property.
     * 
     * @return
     *     possible object is
     *     {@link BigInteger }
     *     
     */
    public BigInteger getTotalUSBPorts() {
        return totalUSBPorts;
    }

    /**
     * Sets the value of the totalUSBPorts property.
     * 
     * @param value
     *     allowed object is
     *     {@link BigInteger }
     *     
     */
    public void setTotalUSBPorts(BigInteger value) {
        this.totalUSBPorts = value;
    }

    /**
     * Gets the value of the touchscreen property.
     * 
     * @return
     *     possible object is
     *     {@link TouchscreenTypeValues }
     *     
     */
    public TouchscreenTypeValues getTouchscreen() {
        return touchscreen;
    }

    /**
     * Sets the value of the touchscreen property.
     * 
     * @param value
     *     allowed object is
     *     {@link TouchscreenTypeValues }
     *     
     */
    public void setTouchscreen(TouchscreenTypeValues value) {
        this.touchscreen = value;
    }

    /**
     * Gets the value of the useModes property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the useModes property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getUseModes().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getUseModes() {
        if (useModes == null) {
            useModes = new ArrayList<String>();
        }
        return this.useModes;
    }

    /**
     * Gets the value of the waterResistanceDepth property.
     * 
     * @return
     *     possible object is
     *     {@link LengthDimension }
     *     
     */
    public LengthDimension getWaterResistanceDepth() {
        return waterResistanceDepth;
    }

    /**
     * Sets the value of the waterResistanceDepth property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthDimension }
     *     
     */
    public void setWaterResistanceDepth(LengthDimension value) {
        this.waterResistanceDepth = value;
    }

    /**
     * Gets the value of the waterResistanceLevel property.
     * 
     * @return
     *     possible object is
     *     {@link WaterResistantType }
     *     
     */
    public WaterResistantType getWaterResistanceLevel() {
        return waterResistanceLevel;
    }

    /**
     * Sets the value of the waterResistanceLevel property.
     * 
     * @param value
     *     allowed object is
     *     {@link WaterResistantType }
     *     
     */
    public void setWaterResistanceLevel(WaterResistantType value) {
        this.waterResistanceLevel = value;
    }

    /**
     * Gets the value of the wirelessTechnology property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the wirelessTechnology property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getWirelessTechnology().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getWirelessTechnology() {
        if (wirelessTechnology == null) {
            wirelessTechnology = new ArrayList<String>();
        }
        return this.wirelessTechnology;
    }

}