On Monday 23 March 2015 06:28:01 LongChair . wrote: > <interface name="net.connman.Manager"> > <method name="GetProperties"> > <arg name="properties" type="a{sv}" direction="out"> > <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" > value="QVariantMap"/> </arg> > </method> The argument type which is a{sv} is too complex for the > xml2cpp converter which is fine. it's saying that i should add an > annotation to define the type.As far as i know, a{sv} should convert to > QVariantMap, although the converter doesn't seem happy with it.I have tried > whatever type even more simpler types in the value param of the > <annotation> tag, but i'm always getting the same converter error :Using : > qdbusxml2cpp ./connmanManager.xml -a connmanManager.cpp -vwill give :Got > unknown type `a{sv}'You should add <annotation > name="org.qtproject.QtDBus.QtTypeName.Out0" value="<type>"/> to the XML > description
You placed it in the wrong spot. <arg> tags are not allowed to have annotations inside. You have to place it outside the <arg>, inside the <method> tag. That's why the annotation has "Out0" in the name, indicating which parameter it refers to. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest