please add some boost concept ceheck on the types (CImage, there may be one for TFunctor too..)