package mil.nga.giat.geowave.adapter.raster.adapter.merge.nodata;
import java.util.Set;
import mil.nga.giat.geowave.core.index.Persistable;
public interface NoDataMetadata extends
Persistable
{
public static class SampleIndex
{
private final int x;
private final int y;
private final int b;
public SampleIndex(
final int x,
final int y,
final int b ) {
this.x = x;
this.y = y;
this.b = b;
}
public int getX() {
return x;
}
public int getY() {
return y;
}
public int getBand() {
return b;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + b;
result = prime * result + x;
result = prime * result + y;
return result;
}
@Override
public boolean equals(
Object obj ) {
if (this == obj) return true;
if (obj == null) return false;
if (getClass() != obj.getClass()) return false;
SampleIndex other = (SampleIndex) obj;
if (b != other.b) return false;
if (x != other.x) return false;
if (y != other.y) return false;
return true;
}
}
public boolean isNoData(
SampleIndex index,
double sampleValue );
public Set<SampleIndex> getNoDataIndices();
}