Joe,
Included in the EMF project is a template-based code generation framework called JET. JET itself, while packaged along with EMF, is actually a general purpose framework that is independent of EMF and is being used for several other non-EMF purposes. There are two eclipse corner articles about JET that you might want to look at. The
first article is a basic introduction. The
second one describes how to use the generator framework classes to generate code.
As far as template location is concerned, the EMF generator uses compiled forms of the templates (they're JSP-like things), but users can request the generator use dynamic templates and specify a template directory where they provide overrides of any of the templates that they want to change. This is covered in chapter 11 of the book.
Frank.