URL: https://linuxfr.org/forums/programmation-c/posts/wrapper Title: Wrapper Authors: tmp Date: 2016年04月03日T10:45:22+02:00 License: CC By-SA Tags: c++, composition, cairo et cairomm Score: 2 Bonjour, Je développe principalement en C++, mais je dois régulièrement appeler des API C (gstreamer par exemple). Jusque là, je ne me posais pas trop de question et je faisais toujours attention à ne pas mélanger les allocation mémoires (pour les GstBuffer par exemple). Là j'ai besoin de dessiner en overlay sur une surface vidéo. J'ai créé une première version qui wrappe la mémoire d'un GstBuffer vers une QImage Qt, et je dessine facilement à l'aide d'un QPainter. Cette solution convenait bien mais je voudrais supprimer cette dépendance à Qt. Je choisis donc cairo, qui a de forte chance d'être présent si gstreamer est là. Je vois qu'un binding cairomm existe mais le package de ma distribution a une version de retard (Gentoo). Se pose donc le problème de l'avancé du binding par rapport à la bibliothèque. Ma question est donc quel intérêt (au delà de la syntaxe) ai-je à favoriser le binding C++ plutôt qu'utiliser directement cairo ? D'autre part, si vous connaissez une lib C++ à la CImg pour faire ce genre de chose ? (CImg ne convient pas car la composition nécessite un buffer argb classique entrelacé (A1R1G1B1, A2R2G2B2...) alors que CImg utilise un buffer de pixel par bloc (R1R2R3..,G1G2G3..,B1B2B3..,A1A2A3..) et que je veux dessiner directement sur la composition pour éviter les copies de buffers.