En realidad ese puntero no es mi problema, ya que es parte de la API
de la camara. Es decir que la funcion de la API lleva como parametro
un puntero Void. (La API de Canon es MUY fea, si van a desarrollar
software para camarás digitales, no compren Canon).
Mi verdadero problema es que esta funcion:
prResponse prSTDCALL ViewImage( prHandle CameraHandle,
prContext Context,
prUInt32 Size,
prVoid *pVFData)
vuelve como una funcion de callback y si yo hago:
prResponse prSTDCALL Camara::ViewImage
no me compila.
Ahora no tengo el codigo a mano (está en el trabajo), pero despues lo
envio.
Saludos y gracias
--- En cbuilderdeargentinaparaelmundo@..., Almu PG
<almupeich_pg1982@...> escribió:
>
>
>
> Veo que estas usando un puntero a vacio (Void *) para tomar la
imagen. Prueba a usar un formato mas simple que este incluido en un
TImage, como un bmp o un rgb, en lugar de un Void, de forma que
capture directamente sobre esa variable del TImage y puedas acceder
directamente, sin castings peligrosos.
>
> Si necesitas mas ayuda, pasame ese tramo de codigo a ver si te puede
ayudar mejor.
>
> Un Saludo, Almu
>
> ----- Mensaje original ----
> De: mlitorichard <litorichard@...>
> Para: cbuilderdeargentinaparaelmundo@...
> Enviado: sábado, 27 de septiembre, 2008 0:08:44
> Asunto: [bcb-arg] Eventos
>
>
> Hola:
>
> Tengo un problema. Estoy desarrollando una aplicacion con BCB6 que se
> conecta con una camara de fotos. Ya he logardo conectarme a la misma
> pero no puedo acceder a los datos que me manda.
>
> Estos datos los envia a traves de funciones tipo callback, por ejemplo:
>
> error = PR_SetEventCallBack ( hCamara, 0, &ManejaEventos) ;
>
> y
>
> prResponse prSTDCALL ManejaEventos( prHandle CameraHandle,
> prContext Context,
> prVoid* pEventData)
> {
> EVENT_GENERIC_ CONTAINER *pEventDataTemp;
>
> pEventDataTemp = (EVENT_GENERIC_ CONTAINER *)pEventData;
>
> if (pEventDataTemp- >Code == prPTP_FULL_VIEW_ RELEASED) {
> g_ObjectHandle = (prObjectHandle) pEventDataTemp- >Parameter[ 0];
> }
>
> return prOK;
> }
>
> Mi problema es que el evento ManejaEventos no puede acceder a
> objetos de un formulario por ejemplo.
>
> Lo mismo me ocurre con:
>
> StartControlRemoto( hCamara, Buffer, ViewImage);
>
> donde
>
> prResponse prSTDCALL ViewImage( prHandle CameraHandle,
> prContext Context,
> prUInt32 Size,
> prVoid *pVFData)
> {
> }
> Aqui pVFData es el puntero a la imagen que tomo la camará, pero
> este dato no lo puedo mandar a un TImage del form principal.
>
> Alguien sabe como puedo "capturar" estos eventos?
>