Hi all
I am trying to use boost::function combined with boost::bind in order to be able to pass a callback to another function.
The callback I want to pass is a member function of the class.
The code is below

class CA{
bool IsMemberFunction( const std::string& aLine ){
        return true;
    }

    void testUseFooPtr( boost::function< bool(const std::string& ) > aFooPtr ){
        std::string aLine; // read from somewhere
        if( aFooPtr( aLine ) ){
            std::cout << "is fine" << std::endl;
        }
    }
   
    void testFooPtr(){

        std::string ciao("aa");
        boost::function< bool(const std::string& ) > fooPtr( boost::bind( &CA::IsMemberFunction, this ) ); // create
        // a boost function  using the class memebr

        testUseFooPtr( fooPtr ); //  pass it as callback to another
        // function
    }
};

I have the following compilation error.

/usr/local/include/boost/bind/mem_fn.hpp:342: error: invalid use of non-static member function

Do you know what I am doing wrong?
Is the signature fine?
Thanks