[Jde-dev] Problemas con Implementación de JointsArray
Juan Gonzalez
juan en iearobotics.com
Vie Mar 19 10:55:20 CET 2010
SIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII!!!!!!
It is starting to work!!
Obijuan palomo
El vie, 19-03-2010 a las 09:42 +0100, Juan Gonzalez escribió:
> Hola,
>
> Bueno, leyendo el manual, he conseguido solucionar mis problemas de
> compilación. Ya he conseguido hacer el mapeo entre las articulaciones
> del servidor (JointI) y asignarlas a JointSeq. El exorcismo en cuestión
> es este:
>
> JointIPtr j1 = new JointI(pcontroller);
> JointPrx proxy = JointPrx::uncheckedCast(adapter->addWithUUID(j1));
> _JointSeq.push_back(proxy);
>
> Ahora compila, pero me sale un bonito
>
> /usr/include/IceUtil/Handle.h:46: IceUtil::NullHandleException
>
> en tiempo de ejecución al acceder desde el cliente a las articulaciones.
>
> Se me ha debido pasar algo por alto.... seguiré probando. Pero al menos,
> conseguir que me compilase ha sido todo un logro :-)
>
> os seguiré informando
>
> Saludos, Juan
>
> El vie, 19-03-2010 a las 09:35 +0100, Juan Gonzalez escribió:
> > Hola David,
> >
> > Gracias por la info. Creo que voy a tener que dedicar un más poco de
> > tiempo a la lectura del manual para familiarizarme con toda la
> > terminología de ICE.
> >
> > Me emocioné implementando la interfaz de Joint y pensé que JointsArray
> > me llevaría menos tiempo. Me voy a documentar y luego volveré a la
> > carga ;-)
> >
> > Saludos, Juan
> >
> > El jue, 18-03-2010 a las 13:43 -0400, David Lobato escribió:
> > > Mirate el ejemplo del manual del Filesystem, declaran una secuencia
> > > con la misma pinta.
> > > EL asunto es que tienes que crear las instancias de los Joints,
> > > añadirlas al object adapter y una vez echado a andar preguntar al
> > > object adapter por los proxys de cada una de las instancias.
> > >
> > >
> > > El tema concreto es servant locator.
> > >
> > >
> > > David.
> > >
> > > 2010/3/18 Juan Gonzalez <juan en iearobotics.com>
> > > Hola,
> > >
> > > Todavía estoy muy verde con el ICE y tampoco soy un
> > > programador en C++
> > > experimentado, por lo que estoy encontrando problemas para
> > > implementar
> > > el servidor de jointsArray. Necesito algo de luz ;-)
> > >
> > > De momento, estoy trabajando con esta interfaz:
> > >
> > > module jderobot {
> > >
> > > interface Joint {
> > > idempotent void setPos(short pos);
> > > idempotent short getPos();
> > > };
> > >
> > > sequence<Joint*> JointSeq;
> > >
> > > interface JointsArray{
> > > JointSeq getJoints();
> > > };
> > >
> > > };
> > >
> > > La Interfaz "Joint" la tengo implementada y funciona bien. Mis
> > > problemas
> > > aparecen cuando intento implementar la función getJoints() de
> > > la
> > > interfaz "JointsArray". No sé cómo crear los elementos de
> > > JointSeq.
> > >
> > > Según he leido en el manual de ice, el mapeo de esto:
> > >
> > > sequence<Joint*> JointSeq
> > >
> > > a c++ debería ser:
> > >
> > > vector<Joint*> JointSeq
> > >
> > > Desde aquí tendría fácil acceso a Joint en el servidor. Pero
> > > como Joint
> > > es a su vez una interfaz, el mapeo que hace es:
> > >
> > > typedef ::std::vector< ::jderobot::JointPrx> JointSeq;
> > >
> > > Y ahí ya estoy perdido. Ni idea de cómo puedo acceder a
> > > Joint :-(
> > >
> > > ¿Alguien me arroja luz?
> > >
> > > Mientras tanto voy a seguir leyendo el manual de ICE
> > >
> > > Saludos, Juan
> > >
> > >
> > >
> > > --
> > > Blog: www.iearobotics.com/blog
> > > Web: www.iearobotics.com/juan
> > >
> > > _______________________________________________
> > > Jde-developers mailing list
> > > Jde-developers en gsyc.es
> > > http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers
> > >
> > >
--
Blog: www.iearobotics.com/blog
Web: www.iearobotics.com/juan
More information about the Jde-developers
mailing list