2010-11-27 18 views
15

Para simplificar, supongamos que tengo un objeto Java que genera un número aleatorio a intervalos de tiempo espaciados al azar. Deseo que se notifique un objeto MATLAB cada vez que se genera uno de estos números aleatorios (para que el objeto MATLAB pueda realizar alguna tarea en los datos).¿Cómo notifico un objeto MATLAB de un evento en un objeto Java?

¿Cómo puedo implementar algo como esto? ¿Cómo puedo hacer que el objeto Java notifique a un objeto MATLAB que algo ha sucedido?

P.S. Soy un programador fuerte en MATLAB pero bastante nuevo en Java.

+0

http://undocumentedmatlab.com/blog/matlab-java-interface-using-static-control/ – Mikhail

+0

http://undocumentedmatlab.com/blog/jmi-java-to-matlab -interface/ – zellus

+0

http://www.mathworks.com/company/newsletters/news_notes/win02/patterns.html – zellus

Respuesta

0

Solo he hecho esto desde C, y parece ser la mejor opción. De todos modos, después de

http://undocumentedmatlab.com/blog/jmi-wrapper-remote-matlabcontrol/

parece que la mejor manera sería hacer uso del apoyo documentado de una interfaz COM (Windows) y tuberías de proceso (Unix/Mac).

creo que sirve

+0

kellogs, tengo que hacer esto en C (no en Java o COM), ¿me puede indicar la dirección correcta? ? Gracias. – dkantowitz

+0

acabo de recibir aquí, si todavía necesita punteros - busque en su documentación cosas como mexFunction - el punto de entrada en el módulo C, mxGetPr, mxCreateDoubleMatrix - funciones para trabajar los datos desde/hacia Matlab ... lo siento, pero he desinstalado Matlab desde mi computadora. Ah, y tenga cuidado con las matrices ya que Matlab trabaja con m [j] [i] donde normalmente trabajaría con m [i] [j] (las columnas son las primeras en Matlab) – kellogs

+0

kellogs, creo que estoy familiarizado con MEX función. De hecho, estoy usando el enfoque loadlibrary/libpointer/libstruct para interactuar con un archivo DLL que se comunica con otro servidor. Esa DLL puede tener eventos asincrónicos, me gustaría poder volver a propagar esos eventos a Matlab. He visto (y de hecho uso) algunos enfoques en Java que hacen esto. Me gustaría encontrar una forma pura de C/C++ para hacer la misma propagación de eventos. – dkantowitz

Cuestiones relacionadas