org.knime.core.data.def
Class FuzzyIntervalCell

java.lang.Object
  extended by org.knime.core.data.DataCell
      extended by org.knime.core.data.def.FuzzyIntervalCell
All Implemented Interfaces:
Serializable, DataValue, FuzzyIntervalValue

public final class FuzzyIntervalCell
extends DataCell
implements FuzzyIntervalValue

A data cell implementation holding a fuzzy interval as value by storing this value in four private double members, two for the min/max values of the support, and two for the min/max values of the core of the fuzzy interval.

The height of the membership value in the core region is assumed to be 1.

Author:
Michael Berthold, University of Konstanz
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.knime.core.data.FuzzyIntervalValue
FuzzyIntervalValue.FuzzyIntervalUtilityFactory
 
Nested classes/interfaces inherited from interface org.knime.core.data.DataValue
DataValue.UtilityFactory
 
Field Summary
static DataType TYPE
          Convenience access member for DataType.getType(FuzzyIntervalCell.class).
 
Fields inherited from interface org.knime.core.data.FuzzyIntervalValue
UTILITY
 
Constructor Summary
FuzzyIntervalCell(double minSupp, double minCore, double maxCore, double maxSupp)
          Creates a new fuzzy interval cell based on the min/max of support and of core.
 
Method Summary
protected  boolean equalsDataCell(DataCell dc)
          Derived classes implement their specific equals function here.
static org.knime.core.data.def.FuzzyIntervalCell.FuzzyIntervalSerializer getCellSerializer()
          Returns the factory to read/write DataCells of this class from/to a DataInput/DataOutput.
 double getCenterOfGravity()
           
 double getMaxCore()
           
 double getMaxSupport()
           
 double getMinCore()
           
 double getMinSupport()
           
static Class<? extends DataValue> getPreferredValueClass()
          Returns the preferred value class of this cell implementation.
 int hashCode()
          Computes hash code based on all private members.
 String toString()
          Returns the String representation of this cell's value.
 
Methods inherited from class org.knime.core.data.DataCell
equals, getType, isMissing
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

TYPE

public static final DataType TYPE
Convenience access member for DataType.getType(FuzzyIntervalCell.class).

See Also:
DataType.getType(Class)
Constructor Detail

FuzzyIntervalCell

public FuzzyIntervalCell(double minSupp,
                         double minCore,
                         double maxCore,
                         double maxSupp)
Creates a new fuzzy interval cell based on the min/max of support and of core.

Parameters:
minSupp - Minimum support value.
minCore - Minimum core value.
maxCore - Maximum core value.
maxSupp - Maximum support value.
Throws:
IllegalArgumentException - If not a <= b <= c <= d.
Method Detail

getPreferredValueClass

public static final Class<? extends DataValue> getPreferredValueClass()
Returns the preferred value class of this cell implementation. This method is called per reflection to determine which is the preferred renderer, comparator, etc.

Returns:
FuzzyIntervalValue.class

getCellSerializer

public static final org.knime.core.data.def.FuzzyIntervalCell.FuzzyIntervalSerializer getCellSerializer()
Returns the factory to read/write DataCells of this class from/to a DataInput/DataOutput. This method is called via reflection.

Returns:
A serializer for reading/writing cells of this kind.
See Also:
DataCell

getMinSupport

public double getMinSupport()
Specified by:
getMinSupport in interface FuzzyIntervalValue
Returns:
Minimum support value.

getMinCore

public double getMinCore()
Specified by:
getMinCore in interface FuzzyIntervalValue
Returns:
Minimum core value.

getMaxCore

public double getMaxCore()
Specified by:
getMaxCore in interface FuzzyIntervalValue
Returns:
Maximum core value.

getMaxSupport

public double getMaxSupport()
Specified by:
getMaxSupport in interface FuzzyIntervalValue
Returns:
Maximum support value.

getCenterOfGravity

public double getCenterOfGravity()
Specified by:
getCenterOfGravity in interface FuzzyIntervalValue
Returns:
The center of gravity of this trapezoid membership function which are the weighted (by the area) gravities of each of the three areas (left triangle, core rectangle, right triangle) whereby the triangles' gravity point is 2/3 and 1/3 resp. is computed by the product of the gravity point and area for each interval. This value is divided by the overall membership function volume.

equalsDataCell

protected boolean equalsDataCell(DataCell dc)
Derived classes implement their specific equals function here. The argument is guaranteed to be not null or a missing value, to be of the same class like this.

Specified by:
equalsDataCell in class DataCell
Parameters:
dc - the cell to compare this to
Returns:
true if this is equal to the argument, false if not

hashCode

public int hashCode()
Computes hash code based on all private members. This method must be implemented in order to ensure that two equal DataCell objects return the same hash code.

Specified by:
hashCode in class DataCell
Returns:
the hash code of your specific DataCell
See Also:
Object.hashCode(), DataCell.equals(java.lang.Object)

toString

public String toString()
Returns the String representation of this cell's value.

Specified by:
toString in class DataCell
Returns:
a String representation of this cell's value


Copyright, 2003 - 2010. All rights reserved.
University of Konstanz, Germany.
Chair for Bioinformatics and Information Mining, Prof. Dr. Michael R. Berthold.
You may not modify, publish, transmit, transfer or sell, reproduce, create derivative works from, distribute, perform, display, or in any way exploit any of the content, in whole or in part, except as otherwise expressly permitted in writing by the copyright owner or as specified in the license file distributed with this product.