Could you make it more clear that the source and out parameters refer to filenames rather than string buffers? Also, why are you using const char* instead of polycode's String?