Jan Jezabek | 28 Jul 23:20
Favicon

COM progress report

Hi,

I've noticed that other GSoC-ers are posting their updates to the list, 
so if nobody opposes I will do the same. My previous reports are 
available on my blog. I will be grateful for any suggestions regarding 
the director stuff mentioned in the second half of the report.

Thanks,
Jan Jezabek

-----
This week I have been working mostly on smaller enhancements to the COM, 
with no major new features. These enhancements are:
- ability to specify CLSIDs and IIDs by the user on a per-class basis, 
as shown by the following example:

%feature ("iid", "11111111-1111-1111-1111-111111111111") A;
%feature ("clsid", "22222222-2222-2222-2222-222222222222") A;
class A { ... };

GUIDs can also be specified for the module class and also for the type 
library,
- I have implemented a GUID generation algorithm (as specified in RFC 
4122, variant 5). It uses SHA-1 hashing for generating the GUIDs. The 
user can (and should) specify one global GUID which can be thought of as 
a random seed (it is called 'name space ID' in RFC 4122); this GUID in 
binary form is prepended to the class name and afterwards the hash of 
this string is used as a source of bits for the CLSID and IID. This 
should practically guarantee uniqueness and determinism, and also save 
the user some work,
(Continue reading)

William S Fulton | 29 Jul 23:27
Favicon

Re: COM progress report

Jan Jezabek wrote:
> Hi,
>
> I've noticed that other GSoC-ers are posting their updates to the list,
> so if nobody opposes I will do the same. My previous reports are
> available on my blog. I will be grateful for any suggestions regarding
> the director stuff mentioned in the second half of the report.
>
Keeping the rest of us informed is useful, thanks.

> Thanks,
> Jan Jezabek
>
> -----
> This week I have been working mostly on smaller enhancements to the COM,
> with no major new features. These enhancements are:
> - ability to specify CLSIDs and IIDs by the user on a per-class basis,
> as shown by the following example:
>
> %feature ("iid", "11111111-1111-1111-1111-111111111111") A;
> %feature ("clsid", "22222222-2222-2222-2222-222222222222") A;
> class A { ... };
>
> GUIDs can also be specified for the module class and also for the type
> library,
> - I have implemented a GUID generation algorithm (as specified in RFC
> 4122, variant 5). It uses SHA-1 hashing for generating the GUIDs. The
> user can (and should) specify one global GUID which can be thought of as
> a random seed (it is called 'name space ID' in RFC 4122); this GUID in
> binary form is prepended to the class name and afterwards the hash of
(Continue reading)

Jan Jezabek | 30 Jul 01:35
Favicon

Re: COM progress report

William S Fulton wrote:
> Jan Jezabek wrote:
>> Hi,
>>
>> I've noticed that other GSoC-ers are posting their updates to the list,
>> so if nobody opposes I will do the same. My previous reports are
>> available on my blog. I will be grateful for any suggestions regarding
>> the director stuff mentioned in the second half of the report.
>>
> Keeping the rest of us informed is useful, thanks.
> 
>> Thanks,
>> Jan Jezabek
>>
>> -----
>> This week I have been working mostly on smaller enhancements to the COM,
>> with no major new features. These enhancements are:
>> - ability to specify CLSIDs and IIDs by the user on a per-class basis,
>> as shown by the following example:
>>
>> %feature ("iid", "11111111-1111-1111-1111-111111111111") A;
>> %feature ("clsid", "22222222-2222-2222-2222-222222222222") A;
>> class A { ... };
>>
>> GUIDs can also be specified for the module class and also for the type
>> library,
>> - I have implemented a GUID generation algorithm (as specified in RFC
>> 4122, variant 5). It uses SHA-1 hashing for generating the GUIDs. The
>> user can (and should) specify one global GUID which can be thought of as
>> a random seed (it is called 'name space ID' in RFC 4122); this GUID in
(Continue reading)


Gmane