/*
* Geotoolkit - An Open Source Java GIS Toolkit
* http://www.geotoolkit.org
*
* (C) 2008 - 2009, Geomatys
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*/
package org.geotoolkit.gml.xml.v311;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlType;
/**
* This type encapsulates various dynamic properties of moving objects
* (points, lines, regions). It is useful for dealing with features whose
* geometry or topology changes over time.
*
* <p>Java class for MovingObjectStatusType complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* <complexType name="MovingObjectStatusType">
* <complexContent>
* <extension base="{http://www.opengis.net/gml}AbstractTimeSliceType">
* <sequence>
* <element ref="{http://www.opengis.net/gml}location"/>
* <element name="speed" type="{http://www.opengis.net/gml}MeasureType" minOccurs="0"/>
* <element name="bearing" type="{http://www.opengis.net/gml}DirectionPropertyType" minOccurs="0"/>
* <element name="acceleration" type="{http://www.opengis.net/gml}MeasureType" minOccurs="0"/>
* <element name="elevation" type="{http://www.opengis.net/gml}MeasureType" minOccurs="0"/>
* <element ref="{http://www.opengis.net/gml}status" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
* </pre>
*
*
* @module
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "MovingObjectStatusType", propOrder = {
"location",
"speed",
"bearing",
"acceleration",
"elevation",
"status"
})
public class MovingObjectStatusType extends AbstractTimeSliceType {
@XmlElementRef(name = "location", namespace = "http://www.opengis.net/gml", type = JAXBElement.class)
private JAXBElement<? extends LocationPropertyType> location;
private MeasureType speed;
private DirectionPropertyType bearing;
private MeasureType acceleration;
private MeasureType elevation;
private StringOrRefType status;
/**
* Gets the value of the location property.
*
* @return
* possible object is
* {@link JAXBElement }{@code <}{@link PriorityLocationPropertyType }{@code >}
* {@link JAXBElement }{@code <}{@link LocationPropertyType }{@code >}
*
*/
public JAXBElement<? extends LocationPropertyType> getLocation() {
return location;
}
/**
* Sets the value of the location property.
*
* @param value
* allowed object is
* {@link JAXBElement }{@code <}{@link PriorityLocationPropertyType }{@code >}
* {@link JAXBElement }{@code <}{@link LocationPropertyType }{@code >}
*
*/
public void setLocation(final JAXBElement<? extends LocationPropertyType> value) {
this.location = ((JAXBElement<? extends LocationPropertyType> ) value);
}
/**
* Gets the value of the speed property.
*
* @return
* possible object is
* {@link MeasureType }
*
*/
public MeasureType getSpeed() {
return speed;
}
/**
* Sets the value of the speed property.
*
* @param value
* allowed object is
* {@link MeasureType }
*
*/
public void setSpeed(final MeasureType value) {
this.speed = value;
}
/**
* Gets the value of the bearing property.
*
* @return
* possible object is
* {@link DirectionPropertyType }
*
*/
public DirectionPropertyType getBearing() {
return bearing;
}
/**
* Sets the value of the bearing property.
*
* @param value
* allowed object is
* {@link DirectionPropertyType }
*
*/
public void setBearing(final DirectionPropertyType value) {
this.bearing = value;
}
/**
* Gets the value of the acceleration property.
*
* @return
* possible object is
* {@link MeasureType }
*
*/
public MeasureType getAcceleration() {
return acceleration;
}
/**
* Sets the value of the acceleration property.
*
* @param value
* allowed object is
* {@link MeasureType }
*
*/
public void setAcceleration(final MeasureType value) {
this.acceleration = value;
}
/**
* Gets the value of the elevation property.
*
* @return
* possible object is
* {@link MeasureType }
*
*/
public MeasureType getElevation() {
return elevation;
}
/**
* Sets the value of the elevation property.
*
* @param value
* allowed object is
* {@link MeasureType }
*
*/
public void setElevation(final MeasureType value) {
this.elevation = value;
}
/**
* Gets the value of the status property.
*
* @return
* possible object is
* {@link StringOrRefType }
*
*/
public StringOrRefType getStatus() {
return status;
}
/**
* Sets the value of the status property.
*
* @param value
* allowed object is
* {@link StringOrRefType }
*
*/
public void setStatus(final StringOrRefType value) {
this.status = value;
}
}