Cargando…
Pyragen - A python wrapper generator to application core libraries
<!--HTML-->Software applications developed in C/C++ and other compiled languages may be split into several executables and shared libraries, so that different components or applications can reuse the same code base. However, reusing shared libraries from applications written in different langu...
Autor principal: | |
---|---|
Lenguaje: | eng |
Publicado: |
2016
|
Materias: | |
Acceso en línea: | http://cds.cern.ch/record/2157857 |
_version_ | 1780950760331149312 |
---|---|
author | Leite Pereira, Fernando |
author_facet | Leite Pereira, Fernando |
author_sort | Leite Pereira, Fernando |
collection | CERN |
description | <!--HTML-->Software applications developed in C/C++ and other compiled languages may be split into several executables and shared libraries, so that different components or applications can reuse the same code base. However, reusing shared libraries from applications written in different languages can be quite challenging, especially if we must keep the original code unchanged.
A specific case within the RP group was to access the core routines of a software directly from Python, enabling for interactive manipulation of the data and building programs on top of that, without re-implementing or even modifying the existing functions.
For that purpose an IPC specification was investigated and a software tool developed in Python which creates Python bindings by directly by inspecting the .h header file. By specifying accessor functions, accordingly named, in the library side, the generated wrapper offers an object-oriented interface to the DLL, handling type conversion and storing objects as necessary.
The current solution differs from existing binding generators as it doesn’t requires changes in the source routines (only the creation of accessor functions) and the generated wrapper is very clean Object-Oriented Python code, very easily customizable. |
id | cern-2157857 |
institution | Organización Europea para la Investigación Nuclear |
language | eng |
publishDate | 2016 |
record_format | invenio |
spelling | cern-21578572022-11-02T22:10:26Zhttp://cds.cern.ch/record/2157857engLeite Pereira, FernandoPyragen - A python wrapper generator to application core libraries2nd Developers@CERN ForumDevelopers@CERN Forum<!--HTML-->Software applications developed in C/C++ and other compiled languages may be split into several executables and shared libraries, so that different components or applications can reuse the same code base. However, reusing shared libraries from applications written in different languages can be quite challenging, especially if we must keep the original code unchanged. A specific case within the RP group was to access the core routines of a software directly from Python, enabling for interactive manipulation of the data and building programs on top of that, without re-implementing or even modifying the existing functions. For that purpose an IPC specification was investigated and a software tool developed in Python which creates Python bindings by directly by inspecting the .h header file. By specifying accessor functions, accordingly named, in the library side, the generated wrapper offers an object-oriented interface to the DLL, handling type conversion and storing objects as necessary. The current solution differs from existing binding generators as it doesn’t requires changes in the source routines (only the creation of accessor functions) and the generated wrapper is very clean Object-Oriented Python code, very easily customizable.oai:cds.cern.ch:21578572016 |
spellingShingle | Developers@CERN Forum Leite Pereira, Fernando Pyragen - A python wrapper generator to application core libraries |
title | Pyragen - A python wrapper generator to application core libraries |
title_full | Pyragen - A python wrapper generator to application core libraries |
title_fullStr | Pyragen - A python wrapper generator to application core libraries |
title_full_unstemmed | Pyragen - A python wrapper generator to application core libraries |
title_short | Pyragen - A python wrapper generator to application core libraries |
title_sort | pyragen - a python wrapper generator to application core libraries |
topic | Developers@CERN Forum |
url | http://cds.cern.ch/record/2157857 |
work_keys_str_mv | AT leitepereirafernando pyragenapythonwrappergeneratortoapplicationcorelibraries AT leitepereirafernando 2nddeveloperscernforum |