Why the noop? Lets just pass NULL or and check for it and do nothing when the function pointer is NULL