Interfejs SWIG do otrzymywania nieprzejrzystego odwołania strukturalnego w Java poprzez argument funkcji
Próbuję użyć SWIG, aby korzystać z Spotify API (libspotify) dla Androida:https://developer.spotify.com/technologies/libspotify/
Mam problem z zdefiniowaniem pliku interfejsu SWIG, aby móc pomyślnie wywołać następującą rodzimą funkcję C:
sp_error sp_session_create(const sp_session_config * config, sp_session ** sess);
Które w C będą nazywane w ten sposób:
//config struct defined previously
sp_session *sess;
sp_session_create(&config, &sess);
Ale w Javie musiałbym nazwać to tak:
//config object defined previously
sp_session javaSess = new sp_session();
sp_session_create(config, javaSess);
sp_session jest nieprzezroczystą strukturą i jest zdefiniowany tylko w pliku API.h libspotify jako:
typedef struct sp_session sp_session;
Spodziewam się, że biblioteka libspotify go utworzy i poda mi odniesienie. Jedyne, czego potrzebuję wtedy, to przekazać do innych funkcji w API.
Wierzę, że odpowiedź leży w interfejsie SWIG i typach, ale nie udało mi się zastosowaćprzykłady I uznany w dokumentacji.