namespace weka.core.pmml.jaxbbindings;

class NumericPredictor
{
 depend java.math.BigInteger;
 depend java.util.ArrayList;
 depend java.util.List;
 depend javax.xml.bind.annotation.XmlAccessType;
 depend javax.xml.bind.annotation.XmlAccessorType;
 depend javax.xml.bind.annotation.XmlAttribute;
 depend javax.xml.bind.annotation.XmlElement;
 depend javax.xml.bind.annotation.XmlRootElement;
 depend javax.xml.bind.annotation.XmlType;
@XmlElement(name="Extension",namespace="http://www.dmg.org/PMML-4_1",required=true) protected List<Extension> extension;

@XmlAttribute(required=true) protected double coefficient;

@XmlAttribute protected BigInteger exponent;

@XmlAttribute(required=true) protected String name;

public NumericPredictor(){
}

public NumericPredictor(String name,BigInteger exponent,double coefficient){
  this.name=name;
  this.exponent=exponent;
  this.coefficient=coefficient;
}

/** 
 * Gets the value of the extension 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 extension property. <p> For example, to add a new item, do as follows: <pre> getExtension().add(newItem); </pre> <p> Objects of the following type(s) are allowed in the list {@link Extension }
 */
public List<Extension> getExtension(){
  if (extension == null) {
    extension=new ArrayList<Extension>();
  }
  return this.extension;
}

/** 
 * Gets the value of the coefficient property.
 */
public double getCoefficient(){
  return coefficient;
}

/** 
 * Sets the value of the coefficient property.
 */
public void setCoefficient(double value){
  this.coefficient=value;
}

/** 
 * Gets the value of the exponent property.
 * @return possible object is {@link BigInteger }
 */
public BigInteger getExponent(){
  if (exponent == null) {
    return new BigInteger("1");
  }
 else {
    return exponent;
  }
}

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

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

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