Como passar o ponteiro de função java para código nativo c ++
Eu quero chamar um método c ++ nativo do código java (android), e passar uma função java como um parâmetro, então eu serei capaz de salvar o ponteiro de função no código c + +, e ativá-lo a partir do código nativo.
Eu escolhi implementar o ponteiro de função em java usando uma classe anônima, e chamo a função nativa de java da seguinte forma:
interface FunctionPtrHelper {
bool function(String param);
}
NativeFunc(param1,param2,new FunctionPtrHelper() {
public bool myFunction(String param) {
//body of my function
}});
Como posso fazer o swig / jni conhecer o terceiro parâmetro (que é na verdade uma classe) e traduzi-lo para um ponteiro de função em c ++ (que conterá 'myFunction')?
Caso não seja possível, existe outra maneira de passar um ponteiro de função de java para c ++?