Commit to HEAD & Atlas branch. And update the
hxclient_3_1_0_atlas.bif.
Now it can be built from the configuration:
[0] Set BIF branch (hxclient_3_1_0_atlas_restricted)
[1] Set Target(s) (datatype_image_bmp)
[2] Set Profile (helix-client-all-defines)
[3] run: build -trelease
Thanks.
>-----Original Message-----
>From: Eric Hyche [mailto:ehyche real.com]
>Sent: 2007定11埖27晩 0:10
>To: Zhao, Halley; datatype-dev helixcommunity.org
>Cc: Shen, Cathy; Chen, Weian
>Subject: RE: [datatype-dev] CR: add bmp plugin for
Helix
>
>
>Further comments:
>
>1) RGBQUAD also needs a prefix to not conflict with
existing Windows API
>struct.
>
>2) BITMAPINFO also needs a prefix to not conflict
with existing Windows API
>struct.
>
>Rest looks good.
>
>Eric
>
>=============================================
>Eric Hyche (ehyche real.com)
>Technical Lead
>RealNetworks, Inc.
>
>> -----Original Message-----
>> From: Zhao, Halley [mailto:halley.zhao intel.com]
>> Sent: Friday, November 23, 2007 4:17 AM
>> To: ehyche real.com; datatype-dev helixcommunity.org
>> Cc: Shen, Cathy; Zhao, Halley; Chen, Weian
>> Subject: RE: [datatype-dev] CR: add bmp plugin
for Helix
>>
>> Hi Eric:
>> Update the package following you
suggestion.
>> I also include the bif patch file.
>>
>> Thanks.
>>
>>
>> >-----Original Message-----
>> >From: Eric Hyche [mailto:ehyche real.com]
>> >Sent: 2007定11埖19晩 23:52
>> >To: Zhao, Halley; datatype-dev helixcommunity.org
>> >Cc: Shen, Cathy
>> >Subject: RE: [datatype-dev] CR: add bmp
plugin for Helix
>> >
>> >
>> >Here are my comments:
>> >
>> >1) In bmphdr.h, the BITMAPFILEHEADER,
BITMAPINFOHEADER,
>> > RGBQUAD, and BITMAPINFO structs
should be renamed
>> > so that there is no conflict with
Windows API structs
>> > with the same names. Perhaps you
just add a HXBMP_
>> > to the beginning of each one.
>> >
>> >2) In bmpff.cpp:
>> >
>> >
memcpy(&m_bmpFileHeader,pBuffer->GetBuffer(),14);
>> >
>>
>>
>memcpy(&m_bmpInfoHeader,pBuffer->GetBuffer()+14,s
izeof(BITMAP
>> INFOHEADER
>> >));
>> >
m_ulImageWidth=m_bmpInfoHeader.biWidth;
>> >
m_ulImageHeight=m_bmpInfoHeader.biHeight;
>> >
>> > This will only work correctly when
running on little-endian
>> > machines. Instead of just
memcpy'ing, you will have to
>> > using the little-endian unpacking
functions in
>> common/util/pckunpck.cpp
>> > to make this work on both little-
and big- endian machines.
>> >
>> >3) Here:
>> >
>> >
if(m_bmpInfoHeader.biBitCount!=1 &&
>> >m_bmpInfoHeader.biBitCount!=4
&&
>> >
m_bmpInfoHeader.biBitCount!=8 &&
>> >m_bmpInfoHeader.biBitCount!=24)
>> > {
>> > // Set the state
>> > m_ulState =
>> kStateFileHeaderCloseDonePending;
>> > // Close the file
>> > m_pFileObject->Close();
>> > }
>> >
>> > you call Close() which results in a
>> FileHeaderReady(HXR_FAIL,NULL),
>> > so this is an error condition.
However, you still have
>> code below this
>> > that will get executed which will
result in ANOTHER
>> FileHeaderReady()
>> >call.
>> > This should be corrected. If the
error condition above
>> is encountered,
>> >then
>> > the file should be closed as above
but no other code
>> should be executed
>> >below it.
>> >
>> >4) Here:
>> >
>> > // Send
>> the packet
>> >
>> m_pFormatResponse->PacketReady(retVal,
>> >pPacket);
>> >
>> m_GetPaletteDone=1;
>> >
>> > you set m_GetPaletteDone to 1 after
you call PacketReady, but
>> > PacketReady() could result in an
immediate call to GetPacket()
>> > before PacketReady() returns. So you
should set
>> m_GetPaletteDone to
>> > 1 BEFORE you call PacketReady().
>> >
>> >5) In bmprend.cpp,
>> >
>> > m_pBmpPalette=(UINT32
*)malloc(m_ulPaletteSize);
>> >
>> > you should use new/delete rather
than malloc/free in Helix code.
>> >
>> >6) In bmprend.cpp,
>> >
>> >
>>
memcpy(&m_bmpFileHeader,pOpaque->GetBuffer(),14);
>> >
>>
> memcpy(&m_bmpInfoHeader,pOpaque->GetBuffer()
+14,40);
>> >
m_ulImageWidth=m_bmpInfoHeader.biWidth;
>> >
m_ulImageHeight=m_bmpInfoHeader.biHeight;
>> >
>> > Same comment as before. This will
not work on
>> big-endian processors.
>> >
>> >7) In both bmpff.cpp and bmprend.cpp, I
believe the
>> > descriptions need to be changed,
since this is no longer
>> > a "Wireless BMP File
Format" or renderer but just a
>> "BMP File Format"
>> > or renderer.
>> >
>> >The rest looks good.
>> >
>> >Eric
>> >
>> >
>>
>=============================================
>> >Eric Hyche (ehyche real.com)
>> >Technical Lead
>> >RealNetworks, Inc.
>> >
>> >> -----Original Message-----
>> >> From: datatype-dev-bounces helixcommunity.org
>> >> [mailto:datatype-dev-bounces helixcommunity.org] On Behalf Of
>> >> Zhao, Halley
>> >> Sent: Monday, November 19, 2007
4:42 AM
>> >> To: datatype-dev helixcommunity.org
>> >> Cc: Shen, Cathy
>> >> Subject: [datatype-dev] CR: add
bmp plugin for Helix
>> >>
>> >> Synopsis:
>> >>
>> >> Add bmp datatype support for
image
>> >>
>> >> Overview:
>> >>
>> >> Refer to wbmp plugin, we add
bmp plugin for helix
>> >>
>> >> Files Added:
>> >>
>> >> Some files are in the
attachment, they can be put at
>> >> /cvsroot/datatype/image/bmp
>> >>
>> >>
>> >>
>> >> Files Modified:
>> >>
>> >> <No>
>> >>
>> >>
>> >>
>> >> Image Size and Heap Use impact
(Client -Only):
>> >>
>> >> <little>
>> >>
>> >>
>> >>
>> >> Platforms and Profiles Affected:
>> >>
>> >> platform:
linux-2.2-libc6-gcc32-i586
>> >>
>> >> profile:
helix-client-all-defines
>> >>
>> >>
>> >>
>> >> Distribution Libraries Affected:
>> >>
>> >> bmpfformat.so, bmprend.so
>> >>
>> >>
>> >>
>> >> Distribution library impact and
planned action:
>> >>
>> >> None
>> >>
>> >> Platforms and Profiles Build
Verified:
>> >>
>> >> Set BIF branch ->
hxclient_3_1_0_atlas_restricted
>> >>
>> >> Set Target(s) ->
datatype_image_bmp
>> >>
>> >> Set Profile ->
helix-client-all-defines
>> >>
>> >> System ID ->
linux-2.2-libc6-gcc32-i586
>> >>
>> >> Branch:
>> >>
>> >> HEAD, hxclient_3_1_0_atlas
>> >>
>> >> Copyright assignment: <MUST be
one of the following statements >
>> >>
>> >>
>> >>
>> >> 2. Intel has signed and
delivered a Joint
>> Copyright Assignment
>> >>
>> >> to RealNetworks, and
received acknowledgment that the
>> >>
>> >> agreement was
received.
>> >>
>> >> Files Attached:
>> >>
>> >> datatype-image-bmp.tgz
>> >>
>> >>
>> >>
>> >> ZHAO, Halley (Aihua)
>> >>
>> >> Email: halley.zhao intel.com
<mailto:aihua.zhao intel.com>
>> >>
>> >> Tel: +86(21)61166476
>> >>
>> >> iNet: 8821-6476
>> >>
>> >> SSG/OTC/UMD
>> >>
>> >>
>> >>
>> >>
>>
_______________________________________________
Datatype-dev mailing list
Datatype-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/da
tatype-dev
|