Sergio LSI wrote:
> Hi,
> 
> I am a newbie and I would like to know the difference between
> the following ways to create a primary surface
> 
> 1)
> DFBSurfaceDescription dsc;
> IDirectFBSurface *primary;
> IDirectFB *dfb;
> 
> dsc.flags = DSDESC_CAPS;
> dsc.caps  = DSCAPS_PRIMARY | DSCAPS_FLIPPING;
> dfb->CreateSurface( dfb, &dsc, &primary )

pros
- adding one call to dfb->SetCooperativeLevel() makes it behave like 3)
- user can use options like: "force-windowed", "force-desktop",
   "pixelformat", "mode" (also window size)
- has an autograb mode for the mouse cursor (type or click in window)

cons
- no control over implicitly created window, like position
- no events from the window, only raw input events available

> 2)
> IDirectFB *dfb;
> IDirectFBDisplayLayer *layer;
> IDirectFBSurface *primary;
> IDirectFBWindow *window;
> 
> DFBWindowDescription wind_desc;
> 
> dfb->GetDisplayLayer (dfb, DLID_PRIMARY, &layer);
> layer->CreateWindow(layer, &wind_desc, &window);
> window->GetSurface(window, &primary);

pros
- can have more than one window
- direct window creation
- window control
- window events



3)
IDirectFB *dfb;
IDirectFBDisplayLayer *layer;
IDirectFBSurface *primary;

DFBDisplayLayerConfig config;

dfb->GetDisplayLayer (dfb, DLID_PRIMARY, &layer);
layer->SetCooperativeLevel(layer, DLSCL_EXCLUSIVE);
layer->SetConfiguration(layer, &config);
layer->GetSurface(layer, &primary);


pros
- direct layer configuration
- layer control


-- 
Best regards,
   Denis Oliver Kropp

.------------------------------------------.
| DirectFB - Hardware accelerated graphics |
| http://www.directfb.org/                 |
"------------------------------------------"

_______________________________________________
directfb-users mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users

Reply via email to