On 27 June 2013 21:25, kilon <[email protected]> wrote:
> Ok we solved that problem lest move to the next one.
>
> I have this line of code
>
> Glint status;
>
> to be used in this
>
> glGetShaderiv(shader, GL_COMPILE_STATUS, &status);
>
> Now my first thought was to do this
>
> statusAdress := NativeBoost allocate:  NBOpenGLTypes GLint.
>
> but of course NBOpenGLTypes GLint is not really a message so that fails.
>
> My problem here is that allocate , allocates a specific amount of bytes and
> then returns the address. The problem is that there is no gurantee how many
> bytes a GLint is.  Is there a method somewhere in NBOpengl that can return
> me that amount of bytes of a GLint in the platform that NBOpengl executes ?
>
> Remember I cant use here a constant number cause there is no guarantees that
> GLint will be the same size for every user of NBOpengl.
>
> This is really fun by the way learning so low level stuff :)
>
>

Well, on 32-bit system GLInt is alias for int, int32

To check its size you can do something like following:

 (NBFFICallout new requestor: <put a class which has access to GLInt>;
resolveType: 'GLInt') typeSize

Try
NBExternalType sizeOf: 'GLInt'

>
> --
> View this message in context: 
> http://forum.world.st/Understanding-NBOpenGL-tp4686514p4695790.html
> Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
>



-- 
Best regards,
Igor Stasenko.

Reply via email to