[plt-scheme] Re: MysterX and arrays/vectors

From: Paul A. Steckler (stecksoft at gmail.com)
Date: Thu Mar 20 01:24:21 EDT 2008

On Wed, Mar 19, 2008 at 5:53 PM, Filipe Cabecinhas <filcab at gmail.com> wrote:
>  I tried that. I would see if all Scheme objects in the vector were of
>  the same type (one can also do some coercions and have it more general
>  but I didn't need it to right now. I just want it to work).
>  If they were all (for example) doubles, I would create a VT_R8
>  SAFEARRAY and put them all there (with marshalSchemeValueToVariant + a
>  helper function to take the pointer to what I wanted off the variant.
>  Kind of a hack, but it should work).
>  But my code doesn't seem to be called. Is there some special magic I
>  have to do, because of the 3M collector? I just opened the solution
>  and started changing the files. I also changed com-method-type to
>  return a pair for each argument so I could see if my code was running,
>  but it just behaved the same way as before.
>  I'm changing the code, then running build.bat to create the new image.
>  I also tried making a small class to create COM Vectors (I only need 3
>  elements in each vector) but the returned vector gets converted to a
>  Scheme vector (which I like, btw) so I have the same problem.

Are you sure your changes are taking effect?  Can you put in print statements
to trace through the code?  Are you using the Run button in DrScheme --
that should reload any changed code.

I'm not sure how the 3m code affects things -- those bits were added after
I wrote MysterX.

-- Paul

Posted on the users mailing list.