I am extending an embedded python using PY++ (a great product, along with Boost, IMHO), my problem is that the C++ function being called from Python takes a (wstring) or wchar argument, but the corresponding function signature assigned to Python seems to take a regular str.  So when I try to make a call I get…


    ClassificationOutput.setApplicationName(ClassificationOutput, str)

did not match C++ signature:

    setApplicationName(struct ClassificationOutput_wrapper {lvalue}, class std::basic_string<unsigne

d short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> > applicationNa


    setApplicationName(class ClassificationOutput {lvalue}, class std::basic_string<unsigned short,s

truct std::char_traits<unsigned short>,class std::allocator<unsigned short> > applicationName)


And obviously that doesn’t work.  The funny thing is while python can’t pass a string into C++, C++ can pass that wchar to Python just fine.   This simple string exchange seems such common place that it must have been solved multiple times before, but I just can’t get a handle on how to deal with it.


Any help is greatly appreciated.