[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Public WebGL] Typed WebGLArray sequence parameter types

I've uploaded a validated WebGL IDL file at,


This is written in the current Web IDL editor's draft [0] format with one extended keyword 'byte' for 8-bit integers.
Does this look reasonable? Maybe the getter and setter types should be changed as well?

[0] http://dev.w3.org/2006/webapi/WebIDL/

 - Shiki

On Wed, Dec 23, 2009 at 2:28 AM, Kenneth Russell <kbr@google.com> wrote:
On Mon, Dec 21, 2009 at 10:35 PM, Vladimir Vukicevic
<vladimir@mozilla.com> wrote:
> On 12/21/2009 8:38 PM, Shiki Okasaka wrote:
>> Is this possible to modify typed WebGLArray sequence parameter types
>> in the IDL definitions as below?
>> * WebGLByteArray:
>>    sequence<long>  ->  sequence<octet>
>> * WebGLUnsignedByteArray:
>>    sequence<unsigned long>  ->  sequence<octet>
>> * WebGLShortArray:
>>    sequence<long>  ->  sequence<short>
>> * WebGLUnsignedShortArray:
>>    sequence<unsigned long>  ->  sequence<unsigned short>
>> This change would make the generated interfaces for statically typed
>> languages (e.g. Java) more useful.
>> Note currently Web IDL does not have a primitive type for 8-bit signed
>> integer values. If it is useful for WebGL, maybe we can propose an
>> addition of it to Web IDL as Geolocation WG requested to add 'double'
>> in addition to 'float' [0].
> Yep, that's the main reason why long/unsigned long are used instead of octet
> -- if octet was used, then it becomes impossible to actually specify signed
> 8-bit integers.  For short, we decided to follow the same convention.
>  However, maybe a workaround would be to add a typedef somewhere for our own
> signed_octet type, by default typedef'd to unsigned long, but with a
> statement in the spec saying that this should be a signed 8 bit type if the
> language supports it?

Sounds like a good workaround.


You are currently subscribe to public_webgl@khronos.org.
To unsubscribe, send an email to majordomo@khronos.org with
the following command in the body of your email: