blob: fd58ef0a988a8aed67789a3eb80e11ad6a966477 [file] [log] [blame]
/*
* Copyright (c) 2011 The S4 Project, http://s4.io.
* All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
* either express or implied. See the License for the specific
* language governing permissions and limitations under the
* License. See accompanying LICENSE file.
*/
package io.s4.example.kmeans;
import io.s4.Event;
public class ObsEvent extends Event {
final private float[] obsVector;
final private float distance;
final private long index;
final private int classId;
final private int hypId;
public ObsEvent(long index, float[] obsVector, float distance, int classId,
int hypId) {
this.obsVector = obsVector;
this.distance = distance;
this.index = index;
this.classId = classId;
this.hypId = hypId;
}
/**
* @return the observed data vector.
*/
public float[] getObsVector() {
return obsVector;
}
/**
* @return the distance between the observed vector and the class centroid.
* Use -1.0 when unknown.
*/
public float getDistance() {
return distance;
}
/**
* @return the index of the data vector.
*/
public long getIndex() {
return index;
}
/**
* @return the true class of the vector.
*/
public int getClassId() {
return classId;
}
/**
* @return the hypothesized class of the vector. Use -1 when unknown.
*/
public int getHypId() {
return hypId;
}
public String toString() {
StringBuilder vector = new StringBuilder();
;
for (int i = 0; i < obsVector.length; i++) {
vector.append(obsVector[i] + " ");
}
return "Idx: " + index + ", Class: " + classId + ", Hyp:" + hypId
+ ", Dist: " + distance + ", Obs: " + vector.toString();
}
}