- /// determines next Filter to use from current Filter and Package
- virtual const filter::Base *move(const filter::Base *filter,
- const Package *package) const = 0;
+ virtual RoutePos *createpos() const = 0;
+ };
+
+ class RoutePos : boost::noncopyable {
+ public:
+ virtual const filter::Base *move(const char *route) = 0;
+ virtual RoutePos *clone() = 0;
+ virtual ~RoutePos() {};