/// **************************************************************************
///
/// $Id: LookUpTableFP.java,v 1.1 2002/07/25 14:56:49 grosbois Exp $
///
/// Copyright Eastman Kodak Company, 343 State Street, Rochester, NY 14650
/// $Date $
/// ***************************************************************************
///
using System;
using ICCCurveType = CSJ2K.Icc.Tags.ICCCurveType;
namespace CSJ2K.Icc.Lut
{
/// Toplevel class for a float [] lut.
///
///
/// 1.0
///
/// Bruce A. Kern
///
public abstract class LookUpTableFP:LookUpTable
{
/// The lut values.
//UPGRADE_NOTE: Final was removed from the declaration of 'lut '. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1003'"
public float[] lut;
/// Factory method for getting a lut from a given curve.
/// the data
///
/// the size of the lut
///
/// the lookup table
///
public static LookUpTableFP createInstance(ICCCurveType curve, int dwNumInput)
{
if (curve.nEntries == 1)
return new LookUpTableFPGamma(curve, dwNumInput);
else
return new LookUpTableFPInterp(curve, dwNumInput);
}
/// Construct an empty lut
/// the size of the lut t lut.
///
/// max output value of the lut
///
protected internal LookUpTableFP(ICCCurveType curve, int dwNumInput):base(curve, dwNumInput)
{
lut = new float[dwNumInput];
}
/// lut accessor
/// of the element
///
/// the lut [index]
///
public float elementAt(int index)
{
return lut[index];
}
/* end class LookUpTableFP */
}
}