
Paul Mensonides wrote:
The better way to go, IMO, is to take the non-template special case out of the generation algorithm--which simplies it.
Yeah, that's probably the easiest option. I'll go with that.
Is there more to this code than what you actually have here? It seems like there should be.
There is indeed a bit more to it than I showed. I am using this technique in two separate places... the one I showed you was in the 'wrapping' layer, which defines the create functions as members of the outermost singleton smart pointer. These merely provide the interface and forward to the create functions generated inside the creator policy. A smart pointer to the creator policy instance is used for forwarding to take care of thread safety concerns. -Jason