Thanks Ben, i `ll try that.
 Should "printf" print something on console while calling function form
pharo or is only to check from C example?


2017-09-17 14:12 GMT-03:00 Ben Coman <b...@openinworld.com>:

> On Mon, Sep 18, 2017 at 12:01 AM, alvaro piorno
> <alvaropiorno...@gmail.com> wrote:
> > Pierce: I already see the repo, i kwnow now the difference and is not the
> > problem i have now. I made the suggestion for book draft i found, because
> > theres is no example on it. Thanks for answer.
> >
> > Stephan : Yes, as Esteban said i´m using that, I´m extending (or trying)
> > Esteban´s project. And i´m having the problem that esteban metioned.
> Thanks
> > for answer.
> >
> > Ben: I have in C the same example as in Pharo using the physics of
> Chipmunk,
> > and in C is working fine, there is a problem in the call to the function
> > from Pharo in 64 bits. Thanks for answer.
>
> Replicating the same example in C was not my point.
> You'd said you'd already done that ;)
>
> I meant compile your own shared C library containing...
>     cpBody* myBodyNew(cpFloat m, cpFloat i))
>     {
>         printf( "....\n", m, i );
>         cpBodyNew(cpFloat m, cpFloat i);
>     }
>
> and from Smalltalk use...
>     self ffiCall: #(cpBody* myBodyNew(cpFloat m, cpFloat i))
>
> also changing your existing C example to also use  myBodyNew()
> to confirm it works as expected.
>
> cheers -ben
>
> >
> >
> > 2017-09-17 12:11 GMT-03:00 Ben Coman <b...@openinworld.com>:
> >>
> >>
> >> On Fri, Sep 15, 2017 at 9:42 PM, alvaro piorno <
> alvaropiorno...@gmail.com>
> >> wrote:
> >>>
> >>> Hi everybody, i´m using UnifiedFFI with Chipmunk2D library .
> >>> I want to get a pointer to a C Structure (cpBody) and set a position to
> >>> it.
> >>> I have a subClass of FFIOpaqueObject to handle pointer.
> >>>
> >>> This is the "new " ffiCall :
> >>>     self ffiCall: #(cpBody* cpBodyNew(cpFloat m, cpFloat i))
> >>>
> >>> And this is a "seter" ffiCall:
> >>>
> >>>     self ffiCall: #( void cpBodySetPosition( self, cpVect vector ) ).
> >>>
> >>> I`m not getting any "error" but the position is not updating.
> >>> I tried the same using Chipmunk directly and it works, so there is a
> >>> problem with what i have in Pharo.
> >>
> >>
> >> A general approach might be to write your own C wrapper around Chipmunk
> >> library functions which
> >> just does a debug printout of parameters before calling the wrapped
> >> function.
> >> Use these for both from Pharo and your "direct" trial, and see how they
> >> compare.
> >>
> >> cheers -ben
> >>
> >
>
>

Reply via email to