Base class for all filters that can be applied to a curve editor tree. Filters are identifyable through their type (seeGetType()), which is a pre-registered static value retrieved throughRegisterFilterType(). Client types can inspect this for supported types, and static_cast<> for implementation details. Filters also contain a pass, which is used to separate filters into separate passes. Filters applied within the same pass are matched as a boolean OR, filters in different passes are matched as a boolean AND.