A class hierarchy of several different types of filters