PCL project will likely needed a lot virtual functions, and I don't like. So idea dropped for now