Re: [agl-dev-community] Error when starting application on Rpi4 master branch #help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jul 10, 2020 at 03:06:42AM -0700, Dejan Cotra via lists.automotivelinux.org wrote:
> HI Marius,
Hi,
> 
> Yes sorry my head is little bit off these days :)
> I wrote that I will attach config but I forgot.
> 
> Yes there was dependency on windowmanager I removed it and now there is no more error.
> Jul 10 09:51:01 raspberrypi4-64 systemd[1]: afm-appli-sample_app--0.1--main@1001.service: Succeeded.
> 
> But now we can not see application on screen. I guess some adaption of communication with homescreen/windomanager needs to be done? Is there some example how we can do it?

Yeah, there are. Check mediaplayer/HVAC/ondemandnavi.

I suspect that you'd want one for Gstreamer/Qt, for which I have a few
series queued up: 
https://gerrit.automotivelinux.org/gerrit/c/apps/agl-cluster-demo-receiver/+/24949

There's also a native one, without any toolkit variant of the above, waiting
to be submitted.

Before going into those, I *highly* recommend going over the README.md from:
https://gerrit.automotivelinux.org/gerrit/gitweb?p=src/agl-compositor.git;a=blob;f=doc/README.md;h=090b1aea7f9180b558a481cadf193cf709cf7bc2;hb=refs/heads/master

Gives a wider overview of things, and makes the following paragraph much
easier to understand.

Lastly, the compositor hasn't been updated to the latest master changes
in the meta-agl repository. When that happens only certain applications
can bind to private extensions (basically the demo applications). 
I've included some audit logs into /run/platform/display/compositor.log 
that will make this much more visible. 
You'll need edit & rebuild the policy manually until we have some better
integration with AFM.

Hope this helps,

> 
> this is code snippet that I used so far:
> #ifdef HAVE_QLIBWINDOWMANAGER
> QLibWindowmanager* qwm = new QLibWindowmanager ();
> 
> // WindowManager
> if ( qwm -> init (port,secret) != 0 ){
> exit (EXIT_FAILURE);
> }
> // Request a surface as described in layers.json windowmanager’s file
> if ( qwm -> requestSurface (myname) != 0 ) {
> exit (EXIT_FAILURE);
> }
> // Create an event callbnewack against an qwm->activateSurface(myname);event type. Here a lambda is called when SyncDraw event occurs
> qwm -> set_event_handler ( QLibWindowmanager ::Event_SyncDraw, [ qwm , myname ]( json_object * object ) {
> qDebug ( "Surface %s got syncDraw \n " , myname. toStdString (). c_str ());
> qwm -> endDraw (myname);
> });
> #endif
> 
> #ifdef HAVE_LIBHOMESCREEN
> LibHomeScreen* hs = new LibHomeScreen ();
> 
> // HomeScreen
> std ::string token = secret. toStdString ();
> hs -> init (port, token. c_str ());
> 
> // Set the event handler for Event_TapShortcut which will activate the surface for windowmanager
> hs -> set_event_handler ( LibHomeScreen ::Event_ShowWindow, [ qwm , myname ]( json_object * object ){
> qDebug ( "Surface %s got showWindow \n " , myname. toStdString (). c_str ());
> qwm -> activateWindow (myname);
> });
> #endif
> 
> #ifdef HAVE_QLIBWINDOWMANAGER
> QObject :: connect (windowObj, SIGNAL ( frameSwapped ()), qwm, SLOT ( slotActivateSurface ()));
> #else
> 
> Br,
> Dejan
> 
> 
> 

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#8508): https://lists.automotivelinux.org/g/agl-dev-community/message/8508
Mute This Topic: https://lists.automotivelinux.org/mt/75414969/2167316
Mute #help: https://lists.automotivelinux.org/g/AutomotiveLinux+agl-dev-community/mutehashtag/help
Group Owner: agl-dev-community+owner@xxxxxxxxxxxxxxxxxxxxxxxxx
Unsubscribe: https://lists.automotivelinux.org/g/agl-dev-community/leave/4543822/883735764/xyzzy  [list-automotive-discussions82@xxxxxxxxxxx]
-=-=-=-=-=-=-=-=-=-=-=-

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [LARTC]     [Bugtraq]     [Yosemite Forum]     [Photo]

  Powered by Linux