[Jde-dev] duda

David Lobato dav.lobato en gmail.com
Jue Feb 11 18:03:58 CET 2010


Entiendo que has arrancado un varcolorserver (que pasará a llamarse
cameraserver en breve) para cada camara, en los puertos que indicas
(9999,9998,....).

Para poder conectar con ellos en tu programa basta que conozcas la dirección
del proxy, por ejemplo "varcolorA:tcp -h 127.0.0.1 -p 9999" es una dirección
(hay mas maneras de direccionar los proxys).

En el ejemplo del varcolorview, estoy usando una propiedad que me he
inventado "VarColorView.VarColor.Proxy" para pasar medienate el fichero de
configuración dicha dirección. Dado que en dicho programa sólo usamos una
cámara nos referimos a ella por VarColor. Pero en tu caso que necesitas mas
de una, pues yo añadiría la letra A,B,C,D para diferenciar cada cámara. De
modo que tendrías:

VarColorView.VarColorA.Proxy=varcolorA:tcp -h 127.0.0.1 -p 9999
VarColorView.VarColorB.Proxy=varcolorB:tcp -h 127.0.0.1 -p 9998
VarColorView.VarColorC.Proxy=varcolorC:tcp -h 127.0.0.1 -p 9997
VarColorView.VarColorD.Proxy=varcolorD:tcp -h 127.0.0.1 -p 9996

Usando cada una de las propiedades para obtener el proxy del comunicador, de
la misma manera que antes, salvo que ahora tenemos 4 proxys.

En Orca solucionan esto de manera algo mas sofisticada haciendo algo así:

VarColorView.Camera.NCameras=4
VarColorView.Camera.0.Proxy=varcolorA:tcp -h 127.0.0.1 -p 9999
VarColorView.Camera.1.Proxy=varcolorB:tcp -h 127.0.0.1 -p 9998
VarColorView.Camera.2.Proxy=varcolorC:tcp -h 127.0.0.1 -p 9997
VarColorView.Camera.3.Proxy=varcolorD:tcp -h 127.0.0.1 -p 9996

Esto necesita algo mas de código para leer las propiedades, pero es una
manera bastante elegante de enumerar N dispositivos. A medida que avancemos
en la arquitectura iremos introduciendo cosas como estas para simplificarnos
la vida.

Espero haber solucionado la duda.
David.


2010/2/11 Sara Marugan <s.marugan en alumnos.urjc.es>

> Hola,
>
> estoy intentando averiguar cómo tener más de una instancia de un proxy
> varcolorserver en la misma aplicación.
>
> El fichero de configuración entiendo que debería ser, por ejemplo:
>
> VarColorView.VarColor.Proxy=varcolorA:tcp -h 127.0.0.1 -p 9999
> VarColorView.VarColor.Proxy=varcolorB:tcp -h 127.0.0.1 -p 9998
> VarColorView.VarColor.Proxy=varcolorC:tcp -h 127.0.0.1 -p 9997
> VarColorView.VarColor.Proxy=varcolorD:tcp -h 127.0.0.1 -p 9996
>
> Cómo puedo obtener los distintos proxys del mismo objeto
> Ice::Communicator?ahora mismo se utiliza "VarColorView.VarColor.Proxy"
> para distinguir entre las propiedades. Sin embargo, al ser la misma
> propiedad sólo que  con distinto id no encuentro la manera que a través
> del id se puedan diferenciar.
>
> Gracias,
>
> un saludo
> _______________________________________________
> Jde-developers mailing list
> Jde-developers en gsyc.es
> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://gsyc.escet.urjc.es/pipermail/jde-developers/attachments/20100211/264c057d/attachment.htm 


More information about the Jde-developers mailing list