Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming
Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming
Pannello QD-OLED da 32 pollici con risoluzione 4K, frequenza di aggiornamento a 240Hz e tempi di risposta rapidissimi: il Gigabyte MO32U24 evolve il progetto del suo predecessore MO32U e alza ulteriormente l'asticella delle prestazioni. È ancora una volta un monitor indirizzato ai giocatori più esigenti
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh
realme 16 5G è un nuovo smartphone con sensore Sony IMX 852 da 50MP sul retro e uno specchio selfie fisico integrato nella camera bar, una prima nel segmento di mercato. Batteria da 6550mAh in un corpo da 8,1mm e 183g, certificazione IP69K e ricarica da 45W completano un pacchetto aggressivo per la fascia media, per uno dei prodotti più interessanti del produttore sul piano commerciale
Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni
Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni
Sono ormai definitive le nuove norme del Codice della Strada per i monopattini elettrici. Non solo targa e assicurazione, le regole sono tante e riguardano diversi aspetti, vi spieghiamo come evitare sanzioni che possono essere salate
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 12-08-2008, 12:29   #1
cisc
Senior Member
 
L'Avatar di cisc
 
Iscritto dal: Nov 2002
Città: Cosenza --> Roma
Messaggi: 853
[C++/Python] Wrapper e Interfacciamento

Ciao a tutti, sto lavorando per interfacciare del codice C++ con python in modo da introdurre un sistema di plugin in python, dato che nell'applicazione in questione c'è una forte architettura ad eventi, sostanzialmente quello che dovrei fare è catturare gli eventi di interesse, creare un wrapper python all'oggetto C++ associato all'evento, e dare la palla al plugin python che dovrebbe avere la possibilità anche di modificare l'oggetto C++ tramite il wrapper.
In questo momento sto usando SWIG, ma sto avendo difficoltà a gestire da python oggetti C++ già creati precedentemente, sembra che il wrapping swig funzioni solo creando nuovi oggetti da python, ma non con oggetti C++ già esistenti, qualche suggerimento a riguardo?
__________________
GNU MyServer Wants YOU!!
We live thinking we will never die. We die thinking we had never lived. Jason Becker
cisc è offline   Rispondi citando il messaggio o parte di esso
Old 12-08-2008, 13:18   #2
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Non ho mai lavorato con queste cose (e al momento non avrei il tempo per approfondire).

L'unica soluzione che mi viene in mente al momento è creare un oggetto Python che contenga il riferimento all'oggetto C++ in questione e che funga da proxy per i metodi / attributi che debbono essere visibili lato Python.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 12:10   #3
nico159
Senior Member
 
Iscritto dal: Aug 2003
Città: Barletta (BA)
Messaggi: 939
Dai un'occhiata a http://www.riverbankcomputing.co.uk/software/sip/intro
__________________
In a world without fences, who needs Gates?
Power by: Fedora 8 - Mac OS X 10.4.11

Ultima modifica di nico159 : 13-08-2008 alle 12:22.
nico159 è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2008, 19:08   #4
cisc
Senior Member
 
L'Avatar di cisc
 
Iscritto dal: Nov 2002
Città: Cosenza --> Roma
Messaggi: 853
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Non ho mai lavorato con queste cose (e al momento non avrei il tempo per approfondire).

L'unica soluzione che mi viene in mente al momento è creare un oggetto Python che contenga il riferimento all'oggetto C++ in questione e che funga da proxy per i metodi / attributi che debbono essere visibili lato Python.
Si, è sostanzialmente quello che fa swig, il mio problema è fargli capire che non mi serve creare un wrapper su un nuovo oggetto C++, ma mi serve su un oggetto esistente

Quote:
Originariamente inviato da nico159 Guarda i messaggi
Vorrei usare swig perchè vorremmo cercare di creare sistemi di plugin analoghi anche per altri linguaggi quali Ruby e Lua, e swig da questo punto di vista aiuta
__________________
GNU MyServer Wants YOU!!
We live thinking we will never die. We die thinking we had never lived. Jason Becker
cisc è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 19:55   #5
altairz
Member
 
Iscritto dal: May 2004
Messaggi: 84
non sò se può essere d'aiuto (non ho mai provato a fare una cosa del genere) ma forse potresti trovare qualcosa nella documentazione ufficiale:

http://docs.python.org/ext/ext.html
altairz è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2008, 20:12   #6
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da cisc Guarda i messaggi
Si, è sostanzialmente quello che fa swig, il mio problema è fargli capire che non mi serve creare un wrapper su un nuovo oggetto C++, ma mi serve su un oggetto esistente
Capito. Niente, purtroppo non avendoci lavorato non saprei.
Quote:
Vorrei usare swig perchè vorremmo cercare di creare sistemi di plugin analoghi anche per altri linguaggi quali Ruby e Lua, e swig da questo punto di vista aiuta
Ma lasciali perdere, dai. Python basta e avanza.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 20-08-2008, 18:43   #7
cisc
Senior Member
 
L'Avatar di cisc
 
Iscritto dal: Nov 2002
Città: Cosenza --> Roma
Messaggi: 853
Quote:
Originariamente inviato da altairz Guarda i messaggi
non sò se può essere d'aiuto (non ho mai provato a fare una cosa del genere) ma forse potresti trovare qualcosa nella documentazione ufficiale:

http://docs.python.org/ext/ext.html
grazie, già conoscevo, cercavo strumenti più ad alto livello per aumentare la produttività, ma alla fine ho dovuto ripiegare per le API Python/C in quanto mi serve un certo controllo sui thread che swig non offre ( e se lo offre non l'ho capito, grazie anche alla documentazione penosa )

Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Capito. Niente, purtroppo non avendoci lavorato non saprei.

Ma lasciali perdere, dai. Python basta e avanza.
Beh, l'idea sarebbe introdurre architetture di plugin per vari linguaggi in modo da catturare il maggior numero di programmatori esterni disposti a programmare plugin
__________________
GNU MyServer Wants YOU!!
We live thinking we will never die. We die thinking we had never lived. Jason Becker
cisc è offline   Rispondi citando il messaggio o parte di esso
Old 20-08-2008, 19:52   #8
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Sì, l'avevo capito. Era solo una battuta (anche se rimango dell'idea di costringerli a usare Python ).
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming Gigabyte MO32U24 OLED: il 4K a 240Hz su un panne...
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh Recensione realme 16 5G: lo smartphone con Selfi...
Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni Come rispettare tutte le nuove regole per i mono...
DLSS 4.5: con Dynamic Frame Generation e MFG 6X NVIDIA alza la posta DLSS 4.5: con Dynamic Frame Generation e MFG 6X ...
Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere) Plaud NotePin S, il registratore IA si fa indoss...
Il drone NASA Dragonfly, che voler&agrav...
Stop immediato a Fable 5 e Mythos 5: il ...
"Prime Day Amazon il 23-26 giugno": sì e...
Oggi 2 super MacBook Pro M5 e M5 Pro, 24...
Tineco Floor One Station S9 Artist: il s...
Raggiunte nuove altitudine e velocit&agr...
Apple Watch Series 11 GPS a 339€ su Amaz...
Come un MacBook, ma con la RTX 5070: MSI...
Paolo Zaccardi: "Smettere di assume...
Finalmente a buon prezzo 2 mini PC con R...
Samsung Galaxy Watch 7: uno crolla a 146...
NVIDIA pronta al 'piano B' per la Cina: ...
Xiaomi TV A Pro 55 a soli 366€: è...
No, i tuoi dati di Pokémon Go non sono f...
XBOX potrebbe diventare una societ&agrav...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:53.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v