Hello Water:
I'm afraid I've no experience with IMAQ 1394. I do, however, have some experience calling C APIs from C++, so perhaps I can help out with your callback issues.
In general, you can only pass global functions or static member functions to C APIs for callbacks. You can't pass instance methods because there is effectively an extra parameter in this case (the 'this' pointer) that the caller wouldn't know about. So if you want a C API to call a method in your class as a callback, that method must be static.
Most C APIs that use callbacks provide a "user data" parameter (usually a void *) that you specify when installing the callback; the "user data" parameter is passed back to you when the callback fires. C++ users commonly use this "user data" parameter to pass around the 'this' pointer and just cast it to void* and back.
Hope this helps, Water
-- Chris W