I've been trying to code an application that calls clSetEventCallback, but it's not working. Are there any examples that call this function?

Here's my code:

Code :
typedef void (CL_CALLBACK *cb_type)(cl_event, cl_int, void *);
cb_type cb = func;
cl_event e;   
clSetEventCallback(e, CL_COMPLETE, cb(e, CL_COMPLETE, NULL), NULL);

I've tried changing things around, but this won't compile. Any thoughts?