我正在使用名为Mitsuba的软件。它附带了一个用Boost包装的Python实现。 Python中的这一行:使用Boost生成的Python模块:与C++签名不匹配
scene = SceneHandler.loadScene(fileResolver.resolve("model.xml"), paramMap)
产生一个错误。根据文档,fileResolver.resolve的类型是fs :: path,paramMap的类型是ParameterMap。
在C++代码的函数签名是:
SceneHandler::loadScene(const fs::path &filename, const ParameterMap ¶ms)
的错误是:
Traceback (most recent call last):
File "...\foo.py", line 22, in
scene = SceneHandler.loadScene(fileResolver.resolve("model.xml"), paramMap)
ArgumentError: Python argument types in
SceneHandler.loadScene(str, StringMap)
did not match C++ signature:
loadScene(class boost::filesystem2::basic_path,class std::allocator >,struct boost::filesystem2::path_traits>, class std::map,class std::allocator >,class std::basic_string,class std::allocator >,struct mitsuba::SimpleStringOrdering,class std::allocator,class std::allocator > const ,class std::basic_string,class std::allocator > > > >)
我可以做什么进一步的调查?你知道问题来自哪里吗?