001    /*
002     * JNI_SVM-light - A Java Native Interface for SVM-light
003     * 
004     * Copyright (C) 2005 
005     * Tom Crecelius & Martin Theobald 
006     * Max-Planck Institute for Computer Science
007     * 
008     * This program is free software; you can redistribute it and/or modify it under
009     * the terms of the GNU General Public License as published by the Free Software
010     * Foundation.
011     * 
012     * This program is distributed in the hope that it will be useful, but WITHOUT
013     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
014     * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
015     * details.
016     * 
017     * You should have received a copy of the GNU General Public License along with
018     * this program; if not, write to the Free Software Foundation, Inc., 51
019     * Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
020     */
021    
022    package jnisvmlight;
023    
024    /**
025     * A labeled feature vector.
026     * 
027     * @author Tom Crecelius & Martin Theobald
028     */
029    public class LabeledFeatureVector extends FeatureVector implements
030        java.io.Serializable {
031    
032      protected double m_label;
033    
034      protected LabeledFeatureVector() {
035        this(0, null, null);
036      }
037    
038      public LabeledFeatureVector(double label, int size) {
039        super(size);
040        this.m_label = label;
041      }
042    
043      public LabeledFeatureVector(double label, int[] dims, double[] vals) {
044        super(dims, vals);
045        this.m_label = label;
046      }
047    
048      public double getLabel() {
049        return m_label;
050      }
051    
052      public void setFeatures(double label, int[] dims, double[] vals) {
053        this.m_label = label;
054        setFeatures(dims, vals);
055      }
056    
057      public void setLabel(double label) {
058        this.m_label = label;
059      }
060    
061      public String toString() {
062        return m_label + " " + super.toString() + "\n";
063      }
064    }