If you use set_task, the function it calls must be declared as public. If you are calling the function directly, it can be declared as public or private (not putting anything assumes private)
I do not browse the forums regularly anymore. If you need me for anything (asking questions or anything else), then PM me (be descriptive in your PM, message containing only a link to a thread will be ignored).