package uk.co.mmscomputing.image.operators;
import java.awt.image.*;
import java.awt.color.*;
import java.util.*;
abstract public class Operator{
static final int WHITE=0x00FFFFFF;
static final int BLACK=0x00000000;
static final int BWHITE=0xFF;
static final int BBLACK=0x00;
public BufferedImage filter(BufferedImage src){return null;};
/*
int w, h, size; // width height of image data
int[] px; // pixel data
public Operator(){
w=-1; h=-1; size=0;px=null;
}
public Operator(int w, int h, int[] px){
this.w=w;
this.h=h;
size=w*h;
this.px=px;
}
public Operator(BufferedImage image){
w=image.getWidth();
h=image.getHeight();
px=null;
WritableRaster wr=image.getRaster();
px=wr.getPixels(0,0,w,h,px);
}
public int f(int x, int y){
if((x<0)||(y<0)||(x>=w)||(y>=h)){ return BWHITE; }
return px[y*w+x];
}
public void f(int x, int y, int v){
if((x<0)||(y<0)||(x>=w)||(y>=h)){ return; }
px[y*w+x]=v;
}
public int f(int[] px, int x, int y){
if((x<0)||(y<0)||(x>=w)||(y>=h)){ return BWHITE; }
return px[y*w+x];
}
public void f(int[] px, int x, int y, int v){
if((x<0)||(y<0)||(x>=w)||(y>=h)){ return; }
px[y*w+x]=v;
}
*/
}