El dimecres, 10 d’agost de 2016, a les 23:00:19 CEST, Aditya Sharma va escriure: > Hey ! > > I'm trying to pass a QVariantMap as a D-Bus signal parameter so that the > intended application gets the updated data every time that signal is > emitted.
Do you have a branch/repository or sample code where this happens? Much easier to debug if the code is ready for tetsing than if we have to re-create the problem scenario you have from scratch. Cheers, Albert > > I have a class A, in which I have a Q_SIGNAL, as: > > void update(QVariantMap map) > > Inside CMakeLists.txt, I call qt5_generate_dbus_interface with OPTIONS -M -S > The generated XML snippet is something like this :- > > <signal name="update"> > <arg name="map" type="a{sv}" direction="out"/> > <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" > value="QVariantMap"/> > > > Further in CMake, I do a qt5_add_dbus_adaptor on the generated xml file. On > compilation, I get the following error although (and make fails): > > " You should add <annotation name="org.qtproject.QtDBus.QtTypeName.In0" > value="<type>"/> to the XML description " > > > (Notice the In0 and Out0 in the two annotations) > > > Now, I proceeded and did what the compilation error said, and changed the > annotation accordingly in the signal. And everything worked. > > Does anyone have an idea, what's happening ? And why it's happening ? > Should I just use this xml file as such, instead of generating it during > make ? > > > Thanks > Aditya