//
// Diese Datei wurde mit der JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.7 generiert
// Siehe <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Änderungen an dieser Datei gehen bei einer Neukompilierung des Quellschemas verloren.
// Generiert: 2016.08.10 um 09:13:50 PM CEST
//
package net.opengis.citygml.landuse._1;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlType;
import net.opengis.citygml._1.AbstractCityObjectType;
import net.opengis.gml.MultiSurfacePropertyType;
/**
* Type describing the class for Land Use in all LOD. LandUse objects describe areas of the earth’s surface
* dedicated to a specific land use. The geometry must consist of 3-D surfaces. As subclass of _CityObject, a LandUse
* inherits all attributes and relations, in particular an id, names, external references, and generalization relations.
*
*
* <p>Java-Klasse für LandUseType complex type.
*
* <p>Das folgende Schemafragment gibt den erwarteten Content an, der in dieser Klasse enthalten ist.
*
* <pre>
* <complexType name="LandUseType">
* <complexContent>
* <extension base="{http://www.opengis.net/citygml/1.0}AbstractCityObjectType">
* <sequence>
* <element name="class" type="{http://www.opengis.net/citygml/landuse/1.0}LandUseClassType" minOccurs="0"/>
* <element name="function" type="{http://www.opengis.net/citygml/landuse/1.0}LandUseFunctionType" maxOccurs="unbounded" minOccurs="0"/>
* <element name="usage" type="{http://www.opengis.net/citygml/landuse/1.0}LandUseUsageType" maxOccurs="unbounded" minOccurs="0"/>
* <element name="lod0MultiSurface" type="{http://www.opengis.net/gml}MultiSurfacePropertyType" minOccurs="0"/>
* <element name="lod1MultiSurface" type="{http://www.opengis.net/gml}MultiSurfacePropertyType" minOccurs="0"/>
* <element name="lod2MultiSurface" type="{http://www.opengis.net/gml}MultiSurfacePropertyType" minOccurs="0"/>
* <element name="lod3MultiSurface" type="{http://www.opengis.net/gml}MultiSurfacePropertyType" minOccurs="0"/>
* <element name="lod4MultiSurface" type="{http://www.opengis.net/gml}MultiSurfacePropertyType" minOccurs="0"/>
* <element ref="{http://www.opengis.net/citygml/landuse/1.0}_GenericApplicationPropertyOfLandUse" maxOccurs="unbounded" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "LandUseType", propOrder = {
"clazz",
"function",
"usage",
"lod0MultiSurface",
"lod1MultiSurface",
"lod2MultiSurface",
"lod3MultiSurface",
"lod4MultiSurface",
"_GenericApplicationPropertyOfLandUse"
})
public class LandUseType
extends AbstractCityObjectType
{
@XmlElement(name = "class")
protected String clazz;
protected List<String> function;
protected List<String> usage;
protected MultiSurfacePropertyType lod0MultiSurface;
protected MultiSurfacePropertyType lod1MultiSurface;
protected MultiSurfacePropertyType lod2MultiSurface;
protected MultiSurfacePropertyType lod3MultiSurface;
protected MultiSurfacePropertyType lod4MultiSurface;
@XmlElementRef(name = "_GenericApplicationPropertyOfLandUse", namespace = "http://www.opengis.net/citygml/landuse/1.0", type = JAXBElement.class, required = false)
protected List<JAXBElement<Object>> _GenericApplicationPropertyOfLandUse;
/**
* Ruft den Wert der clazz-Eigenschaft ab.
*
* @return
* possible object is
* {@link String }
*
*/
public String getClazz() {
return clazz;
}
/**
* Legt den Wert der clazz-Eigenschaft fest.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setClazz(String value) {
this.clazz = value;
}
public boolean isSetClazz() {
return (this.clazz!= null);
}
/**
* Gets the value of the function 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 function property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getFunction().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link String }
*
*
*/
public List<String> getFunction() {
if (function == null) {
function = new ArrayList<String>();
}
return this.function;
}
public boolean isSetFunction() {
return ((this.function!= null)&&(!this.function.isEmpty()));
}
public void unsetFunction() {
this.function = null;
}
/**
* Gets the value of the usage 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 usage property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getUsage().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link String }
*
*
*/
public List<String> getUsage() {
if (usage == null) {
usage = new ArrayList<String>();
}
return this.usage;
}
public boolean isSetUsage() {
return ((this.usage!= null)&&(!this.usage.isEmpty()));
}
public void unsetUsage() {
this.usage = null;
}
/**
* Ruft den Wert der lod0MultiSurface-Eigenschaft ab.
*
* @return
* possible object is
* {@link MultiSurfacePropertyType }
*
*/
public MultiSurfacePropertyType getLod0MultiSurface() {
return lod0MultiSurface;
}
/**
* Legt den Wert der lod0MultiSurface-Eigenschaft fest.
*
* @param value
* allowed object is
* {@link MultiSurfacePropertyType }
*
*/
public void setLod0MultiSurface(MultiSurfacePropertyType value) {
this.lod0MultiSurface = value;
}
public boolean isSetLod0MultiSurface() {
return (this.lod0MultiSurface!= null);
}
/**
* Ruft den Wert der lod1MultiSurface-Eigenschaft ab.
*
* @return
* possible object is
* {@link MultiSurfacePropertyType }
*
*/
public MultiSurfacePropertyType getLod1MultiSurface() {
return lod1MultiSurface;
}
/**
* Legt den Wert der lod1MultiSurface-Eigenschaft fest.
*
* @param value
* allowed object is
* {@link MultiSurfacePropertyType }
*
*/
public void setLod1MultiSurface(MultiSurfacePropertyType value) {
this.lod1MultiSurface = value;
}
public boolean isSetLod1MultiSurface() {
return (this.lod1MultiSurface!= null);
}
/**
* Ruft den Wert der lod2MultiSurface-Eigenschaft ab.
*
* @return
* possible object is
* {@link MultiSurfacePropertyType }
*
*/
public MultiSurfacePropertyType getLod2MultiSurface() {
return lod2MultiSurface;
}
/**
* Legt den Wert der lod2MultiSurface-Eigenschaft fest.
*
* @param value
* allowed object is
* {@link MultiSurfacePropertyType }
*
*/
public void setLod2MultiSurface(MultiSurfacePropertyType value) {
this.lod2MultiSurface = value;
}
public boolean isSetLod2MultiSurface() {
return (this.lod2MultiSurface!= null);
}
/**
* Ruft den Wert der lod3MultiSurface-Eigenschaft ab.
*
* @return
* possible object is
* {@link MultiSurfacePropertyType }
*
*/
public MultiSurfacePropertyType getLod3MultiSurface() {
return lod3MultiSurface;
}
/**
* Legt den Wert der lod3MultiSurface-Eigenschaft fest.
*
* @param value
* allowed object is
* {@link MultiSurfacePropertyType }
*
*/
public void setLod3MultiSurface(MultiSurfacePropertyType value) {
this.lod3MultiSurface = value;
}
public boolean isSetLod3MultiSurface() {
return (this.lod3MultiSurface!= null);
}
/**
* Ruft den Wert der lod4MultiSurface-Eigenschaft ab.
*
* @return
* possible object is
* {@link MultiSurfacePropertyType }
*
*/
public MultiSurfacePropertyType getLod4MultiSurface() {
return lod4MultiSurface;
}
/**
* Legt den Wert der lod4MultiSurface-Eigenschaft fest.
*
* @param value
* allowed object is
* {@link MultiSurfacePropertyType }
*
*/
public void setLod4MultiSurface(MultiSurfacePropertyType value) {
this.lod4MultiSurface = value;
}
public boolean isSetLod4MultiSurface() {
return (this.lod4MultiSurface!= null);
}
/**
* Gets the value of the genericApplicationPropertyOfLandUse 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 genericApplicationPropertyOfLandUse property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* get_GenericApplicationPropertyOfLandUse().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link JAXBElement }{@code <}{@link Object }{@code >}
* {@link JAXBElement }{@code <}{@link Object }{@code >}
*
*
*/
public List<JAXBElement<Object>> get_GenericApplicationPropertyOfLandUse() {
if (_GenericApplicationPropertyOfLandUse == null) {
_GenericApplicationPropertyOfLandUse = new ArrayList<JAXBElement<Object>>();
}
return this._GenericApplicationPropertyOfLandUse;
}
public boolean isSet_GenericApplicationPropertyOfLandUse() {
return ((this._GenericApplicationPropertyOfLandUse!= null)&&(!this._GenericApplicationPropertyOfLandUse.isEmpty()));
}
public void unset_GenericApplicationPropertyOfLandUse() {
this._GenericApplicationPropertyOfLandUse = null;
}
public void setFunction(List<String> value) {
this.function = value;
}
public void setUsage(List<String> value) {
this.usage = value;
}
public void set_GenericApplicationPropertyOfLandUse(List<JAXBElement<Object>> value) {
this._GenericApplicationPropertyOfLandUse = value;
}
}