There is one way to let drupal know about a theme function or template. There are two ways to send variables to a template, but one of them has a lot of disadvantages.
We'll use two theme functions, with an identical template setup to illustrate these methods:
Creating Theme Functions and Routing Them to a Template
There's only one way, hook_theme()