From aoc at helixcommunity.org Sun Dec 2 02:24:49 2007
From: aoc at helixcommunity.org (Stefan)
Date: Sat Dec 1 22:54:56 2007
Subject: [Common-cvs] Clickthrough to achieve recoginition
Message-ID: <0b2701c8348a$8391c9c0$16828e43@mail.helixcommunity.org>
Your new Diploma!
No examinations!
NO classes!
NO textbooks!
AND
100% Discrete!
Satisfaction guaranteed!
+1(206)-309-03-36
Regards!
From lijunreal at helixcommunity.org Sun Dec 2 22:03:45 2007
From: lijunreal at helixcommunity.org (lijunreal@helixcommunity.org)
Date: Sun Dec 2 21:33:17 2007
Subject: [Common-cvs] build/BIF helix.bif,1.654,1.655
Message-ID:
Update of /cvsroot/common/build/BIF
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv8148
Modified Files:
helix.bif
Log Message:
adding ra8hbr codec in dependlist of wince_wm50_play_local so as to provide support for atrc
Index: helix.bif
===================================================================
RCS file: /cvsroot/common/build/BIF/helix.bif,v
retrieving revision 1.654
retrieving revision 1.655
diff -u -d -r1.654 -r1.655
--- helix.bif 29 Nov 2007 13:27:14 -0000 1.654
+++ helix.bif 3 Dec 2007 06:03:42 -0000 1.655
@@ -8065,7 +8065,7 @@
wince
-
+
client_medpltfm
datatype_rm_audio_renderer
datatype_rm_video_codec_rv89combo
@@ -8836,7 +8836,7 @@
datatype_rm_audio_renderer
datatype_rm_audio_codec_ra8lbr
- datatype_rm_audio_codec_ra8lbr
+ datatype_rm_audio_codec_ra8hbr
datatype_rm_audio_codec_sipro
video
From tqx at helixcommunity.org Wed Dec 5 04:36:43 2007
From: tqx at helixcommunity.org (Fletcher)
Date: Wed Dec 5 04:08:05 2007
Subject: [Common-cvs] rich and flesh
Message-ID: <23a401c83754$a3708520$40b750d5@helixcommunity.org>
õ-mass 2007! huge gift-collections
http://dearhaxnifia.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.helixcommunity.org/pipermail/common-cvs/attachments/20071205/56060b7d/attachment.html
From ehyche at helixcommunity.org Wed Dec 5 12:27:24 2007
From: ehyche at helixcommunity.org (ehyche@helixcommunity.org)
Date: Wed Dec 5 11:56:19 2007
Subject: [Common-cvs] include hxiids.h, 1.78.2.9, 1.78.2.10 hxwintyp.h, 1.4,
1.4.6.1 ihxtlogsystem.h, 1.11.2.7, 1.11.2.8
Message-ID:
Update of /cvsroot/common/include
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv23856/common/include
Modified Files:
Tag: hxclient_1_5_0_cayenne
hxiids.h hxwintyp.h ihxtlogsystem.h
Log Message:
Merge from HEAD to 150Cay.
Description
-----------------------------------
Recently an IHXSite3 interface was added which gave
the user of a site the ability to set a clipping rect
on the site. However, when it was added, it was assumed
that the sites were zero-based (that is, they did not
have a parent) since the clip rect was not offset
by site's coordinates. So if you only set a clip
rect on the top-level site, then it worked fine.
However, for SMIL where you might want to set
clip rects on sites with non-zero offsets, then
there was a bug. This change fixes that bug.
Files Modified
-----------------------------------
video/sitelib/basesite.cpp
Branches
-----------------------------------
HEAD, 150Cay, 203Cay, 204Cay, 310Atlas
Index: hxwintyp.h
===================================================================
RCS file: /cvsroot/common/include/hxwintyp.h,v
retrieving revision 1.4
retrieving revision 1.4.6.1
diff -u -d -r1.4 -r1.4.6.1
--- hxwintyp.h 9 Jul 2004 18:20:48 -0000 1.4
+++ hxwintyp.h 5 Dec 2007 20:27:21 -0000 1.4.6.1
@@ -168,6 +168,14 @@
( rect.top >= rect.bottom );
}
+inline void HXxRect_Offset( HXxRect& rect, INT32 x, INT32 y )
+{
+ rect.left += x;
+ rect.top += y;
+ rect.right += x;
+ rect.bottom += y;
+}
+
inline void HXxRect_Intersection( const HXxRect& r1, const HXxRect& r2, HXxRect* result )
{
result->left = ( r1.left > r2.left ) ? r1.left : r2.left;
Index: hxiids.h
===================================================================
RCS file: /cvsroot/common/include/hxiids.h,v
retrieving revision 1.78.2.9
retrieving revision 1.78.2.10
diff -u -d -r1.78.2.9 -r1.78.2.10
--- hxiids.h 25 Oct 2007 18:56:07 -0000 1.78.2.9
+++ hxiids.h 5 Dec 2007 20:27:21 -0000 1.78.2.10
@@ -652,6 +652,7 @@
DEFINE_GUID_ENUM(IID_IHXSiteManager, 0x00000D08, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
DEFINE_GUID_ENUM(IID_IHXMultiInstanceSiteUserSupplier, 0x00000D09, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
DEFINE_GUID_ENUM(IID_IHXSite2, 0x00000D0A, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
+DEFINE_GUID_ENUM(IID_IHXSite3, 0x00000D0A, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x69)
DEFINE_GUID_ENUM(IID_IHXSiteTreeNavigation, 0xb52abc41, 0xa919, 0x11d8, 0xb8, 0xa3, 0x0, 0x03, 0x93, 0x9b, 0xa9, 0x5e)
// $Private:
DEFINE_GUID_ENUM(IID_IHXSiteControl, 0xdd25ca2e, 0x73a5, 0x4811, 0x99, 0x6f, 0x7e, 0x67, 0x26, 0xe7, 0x66, 0x8f)
Index: ihxtlogsystem.h
===================================================================
RCS file: /cvsroot/common/include/ihxtlogsystem.h,v
retrieving revision 1.11.2.7
retrieving revision 1.11.2.8
diff -u -d -r1.11.2.7 -r1.11.2.8
--- ihxtlogsystem.h 18 May 2007 15:15:21 -0000 1.11.2.7
+++ ihxtlogsystem.h 5 Dec 2007 20:27:21 -0000 1.11.2.8
@@ -184,7 +184,8 @@
HXLOG_FPHR = HX_MAKE4CC('F','P','H','R'), // Flash player hosted renderer
HXLOG_FLVF = HX_MAKE4CC('F','L','V','F'), // FLV file format plugin
HXLOG_FLVR = HX_MAKE4CC('F','L','V','R'), // FLV renderer
- HXLOG_DTDR = HX_MAKE4CC('D','T','D','R') // dtdrive
+ HXLOG_DTDR = HX_MAKE4CC('D','T','D','R'), // dtdrive
+ HXLOG_RMFF = HX_MAKE4CC('R','M','F','F') // RealMedia File Format
};
#include "hxtsmartpointer.h"
From ehyche at helixcommunity.org Wed Dec 5 12:42:20 2007
From: ehyche at helixcommunity.org (ehyche@helixcommunity.org)
Date: Wed Dec 5 12:11:25 2007
Subject: [Common-cvs] include hxiids.h, 1.78.2.6.14.1,
1.78.2.6.14.2 hxwintyp.h, 1.4, 1.4.98.1
Message-ID:
Update of /cvsroot/common/include
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv4990/common/include
Modified Files:
Tag: hxclient_2_0_3_cayenne
hxiids.h hxwintyp.h
Log Message:
Merge from HEAD to 203Cay.
Description
-----------------------------------
Recently an IHXSite3 interface was added which gave
the user of a site the ability to set a clipping rect
on the site. However, when it was added, it was assumed
that the sites were zero-based (that is, they did not
have a parent) since the clip rect was not offset
by site's coordinates. So if you only set a clip
rect on the top-level site, then it worked fine.
However, for SMIL where you might want to set
clip rects on sites with non-zero offsets, then
there was a bug. This change fixes that bug.
Files Modified
-----------------------------------
video/sitelib/basesite.cpp
Branches
-----------------------------------
HEAD, 150Cay, 203Cay, 204Cay, 310Atlas
Index: hxwintyp.h
===================================================================
RCS file: /cvsroot/common/include/hxwintyp.h,v
retrieving revision 1.4
retrieving revision 1.4.98.1
diff -u -d -r1.4 -r1.4.98.1
--- hxwintyp.h 9 Jul 2004 18:20:48 -0000 1.4
+++ hxwintyp.h 5 Dec 2007 20:42:18 -0000 1.4.98.1
@@ -168,6 +168,14 @@
( rect.top >= rect.bottom );
}
+inline void HXxRect_Offset( HXxRect& rect, INT32 x, INT32 y )
+{
+ rect.left += x;
+ rect.top += y;
+ rect.right += x;
+ rect.bottom += y;
+}
+
inline void HXxRect_Intersection( const HXxRect& r1, const HXxRect& r2, HXxRect* result )
{
result->left = ( r1.left > r2.left ) ? r1.left : r2.left;
Index: hxiids.h
===================================================================
RCS file: /cvsroot/common/include/hxiids.h,v
retrieving revision 1.78.2.6.14.1
retrieving revision 1.78.2.6.14.2
diff -u -d -r1.78.2.6.14.1 -r1.78.2.6.14.2
--- hxiids.h 5 Jul 2007 22:39:09 -0000 1.78.2.6.14.1
+++ hxiids.h 5 Dec 2007 20:42:18 -0000 1.78.2.6.14.2
@@ -651,6 +651,7 @@
DEFINE_GUID_ENUM(IID_IHXSiteManager, 0x00000D08, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
DEFINE_GUID_ENUM(IID_IHXMultiInstanceSiteUserSupplier, 0x00000D09, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
DEFINE_GUID_ENUM(IID_IHXSite2, 0x00000D0A, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
+DEFINE_GUID_ENUM(IID_IHXSite3, 0x00000D0A, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x69)
DEFINE_GUID_ENUM(IID_IHXSiteTreeNavigation, 0xb52abc41, 0xa919, 0x11d8, 0xb8, 0xa3, 0x0, 0x03, 0x93, 0x9b, 0xa9, 0x5e)
// $Private:
DEFINE_GUID_ENUM(IID_IHXSiteControl, 0xdd25ca2e, 0x73a5, 0x4811, 0x99, 0x6f, 0x7e, 0x67, 0x26, 0xe7, 0x66, 0x8f)
From ehyche at helixcommunity.org Wed Dec 5 12:54:20 2007
From: ehyche at helixcommunity.org (ehyche@helixcommunity.org)
Date: Wed Dec 5 12:23:15 2007
Subject: [Common-cvs]
include hxiids.h, 1.78.2.8.2.1, 1.78.2.8.2.2 hxwintyp.h,
1.4, 1.4.110.1
Message-ID:
Update of /cvsroot/common/include
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv13731/common/include
Modified Files:
Tag: hxclient_2_0_4_cayenne
hxiids.h hxwintyp.h
Log Message:
Merge from HEAD to 204Cay.
Description
-----------------------------------
Recently an IHXSite3 interface was added which gave
the user of a site the ability to set a clipping rect
on the site. However, when it was added, it was assumed
that the sites were zero-based (that is, they did not
have a parent) since the clip rect was not offset
by site's coordinates. So if you only set a clip
rect on the top-level site, then it worked fine.
However, for SMIL where you might want to set
clip rects on sites with non-zero offsets, then
there was a bug. This change fixes that bug.
Files Modified
-----------------------------------
video/sitelib/basesite.cpp
Branches
-----------------------------------
HEAD, 150Cay, 203Cay, 204Cay, 310Atlas
Index: hxwintyp.h
===================================================================
RCS file: /cvsroot/common/include/hxwintyp.h,v
retrieving revision 1.4
retrieving revision 1.4.110.1
diff -u -d -r1.4 -r1.4.110.1
--- hxwintyp.h 9 Jul 2004 18:20:48 -0000 1.4
+++ hxwintyp.h 5 Dec 2007 20:54:17 -0000 1.4.110.1
@@ -168,6 +168,14 @@
( rect.top >= rect.bottom );
}
+inline void HXxRect_Offset( HXxRect& rect, INT32 x, INT32 y )
+{
+ rect.left += x;
+ rect.top += y;
+ rect.right += x;
+ rect.bottom += y;
+}
+
inline void HXxRect_Intersection( const HXxRect& r1, const HXxRect& r2, HXxRect* result )
{
result->left = ( r1.left > r2.left ) ? r1.left : r2.left;
Index: hxiids.h
===================================================================
RCS file: /cvsroot/common/include/hxiids.h,v
retrieving revision 1.78.2.8.2.1
retrieving revision 1.78.2.8.2.2
diff -u -d -r1.78.2.8.2.1 -r1.78.2.8.2.2
--- hxiids.h 25 Oct 2007 18:56:59 -0000 1.78.2.8.2.1
+++ hxiids.h 5 Dec 2007 20:54:17 -0000 1.78.2.8.2.2
@@ -652,6 +652,7 @@
DEFINE_GUID_ENUM(IID_IHXSiteManager, 0x00000D08, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
DEFINE_GUID_ENUM(IID_IHXMultiInstanceSiteUserSupplier, 0x00000D09, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
DEFINE_GUID_ENUM(IID_IHXSite2, 0x00000D0A, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
+DEFINE_GUID_ENUM(IID_IHXSite3, 0x00000D0A, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x69)
DEFINE_GUID_ENUM(IID_IHXSiteTreeNavigation, 0xb52abc41, 0xa919, 0x11d8, 0xb8, 0xa3, 0x0, 0x03, 0x93, 0x9b, 0xa9, 0x5e)
// $Private:
DEFINE_GUID_ENUM(IID_IHXSiteControl, 0xdd25ca2e, 0x73a5, 0x4811, 0x99, 0x6f, 0x7e, 0x67, 0x26, 0xe7, 0x66, 0x8f)
From jerrytansun at helixcommunity.org Thu Dec 6 00:00:21 2007
From: jerrytansun at helixcommunity.org (jerrytansun@helixcommunity.org)
Date: Wed Dec 5 23:29:07 2007
Subject: [Common-cvs] util/platform/unix unix_pref.cpp,1.9.6.2,1.9.6.3
Message-ID:
Update of /cvsroot/common/util/platform/unix
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv10514/common/util/platform/unix
Modified Files:
Tag: hxclient_1_5_0_cayenne
unix_pref.cpp
Log Message:
fix some minor bug using type casting,
patch by jerry.tan@sun.com
reviewed by eric and dyek
Index: unix_pref.cpp
===================================================================
RCS file: /cvsroot/common/util/platform/unix/unix_pref.cpp,v
retrieving revision 1.9.6.2
retrieving revision 1.9.6.3
diff -u -d -r1.9.6.2 -r1.9.6.3
--- unix_pref.cpp 2 Nov 2007 06:53:14 -0000 1.9.6.2
+++ unix_pref.cpp 6 Dec 2007 08:00:09 -0000 1.9.6.3
@@ -149,9 +149,9 @@
CHXSimpleList::Iterator ndx = rEnvList.Begin();
for (; ndx != rEnvList.End(); ++ndx)
{
- if(!strnicmp((*ndx),pArr,strlen(pArr)))
+ if(!strnicmp((char*)(*ndx),pArr,strlen(pArr)))
{
- delete_string(*ndx);
+ delete_string((char*)(*ndx));
rEnvList.RemoveAt(ndx);
break;
}
From jwei at helixcommunity.org Fri Dec 7 11:26:43 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 10:55:08 2007
Subject: [Common-cvs] fileio hxdatasource.cpp,1.6,1.7 symbian.pcf,1.13,1.14
Message-ID:
Update of /cvsroot/common/fileio
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv13344
Modified Files:
hxdatasource.cpp symbian.pcf
Log Message:
Nokia submits this code under the terms of a commercial contribution agreement with RealNetworks, and I am authorized to contribute this code under said agreement."
Modified by: john.wei@nokia.com
Reviewed by:
Date: 03-Dec-2007
Project: SymbianMmf_Rel
TSW: ELDG-73WGS6
Synopsis: Installing Asynchronous Datasource for Audio Controller
Audio controller is currently using synchronous datasource for playing. This CR changes this to asynchronous datasource, which results in audio play more responsive. Please note that video playing is not affected.
Files Modified:
/cvsroot/common/fileio/pub/hxdatasource.h
/cvsroot/common/fileio/hxdatasource.cpp
/cvsroot/common/fileio/symbian.pcf
/cvsroot/common/fileio/platform/symbian/HxMMDataSource.cpp
/cvsroot/common/fileio/pub/platform/symbian/HxMMDataSource.h
/cvsroot/clientapps/symbianMmf/audiocontroller/hxmmfaudioctrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.h
/cvsroot/filesystem/local/mini/minifileobj.cpp
/cvsroot/common/include/ihxmmfdatasource.h
Files New:
/cvsroot/common/fileio/platform/symbian/asynchronousmultireader.cpp
/cvsroot/common/fileio/pub/platform/symbian/asynchronousmultireader.h
Image Size and Heap Use impact: minor
Module Release testing (STIF) : N/A
Test case(s) Added : no
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5, winscw
Branch: Head & 210CayS
Index: hxdatasource.cpp
===================================================================
RCS file: /cvsroot/common/fileio/hxdatasource.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- hxdatasource.cpp 19 Jul 2007 00:34:04 -0000 1.6
+++ hxdatasource.cpp 7 Dec 2007 19:26:40 -0000 1.7
@@ -192,7 +192,7 @@
}
//enable multi read/write
-STDMETHODIMP CHXDataSource::Open2( IHXRequest *pRequest, const char *mode, IHXFileObject* pFileObject )
+STDMETHODIMP CHXDataSource::Open2( IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver, IHXFileObject* pFileObject )
{
HX_RESULT retVal( HXR_FAIL );
TInt index( 0 );
@@ -242,8 +242,18 @@
return retVal;
}
-UINT32 CHXDataSource::Read2( void *pBuf, ULONG32 size, ULONG32 count, IHXFileObject* pFileObject )
+UINT32 CHXDataSource::Read2( IHXBuffer* pBuffer, IHXFileObject* pFileObject )
{
+ UCHAR* pBuf( NULL );
+ ULONG32 size( 0 );
+ ULONG32 count = sizeof( UCHAR );
+
+ if( pBuffer )
+ {
+ pBuf = pBuffer->GetBuffer();
+ size = pBuffer->GetSize();
+ }
+
HX_RESULT retVal = RestoreFileObject( pFileObject );
UINT32 bytesread( 0 );
@@ -303,6 +313,11 @@
return retVal;
}
+STDMETHODIMP CHXDataSource::GetLastError2( IHXFileObject* pFileObject )
+{
+ return m_ulLastError;
+}
+
HX_RESULT CHXDataSource::RestoreFileObject( IHXFileObject* pFileObject )
{
HX_RESULT retVal( HXR_OK );
@@ -357,7 +372,7 @@
}
return retVal;
}
-STDMETHODIMP CHXDataSource::AsyncReadSupported()
+HXBOOL CHXDataSource::AsyncReadSupported()
{
return FALSE;
}
Index: symbian.pcf
===================================================================
RCS file: /cvsroot/common/fileio/symbian.pcf,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -d -r1.13 -r1.14
--- symbian.pcf 19 Jul 2007 00:34:04 -0000 1.13
+++ symbian.pcf 7 Dec 2007 19:26:40 -0000 1.14
@@ -69,5 +69,6 @@
'platform/symbian/hxdatasource_ccontent.cpp',
'platform/symbian/hxdatasource_descriptor.cpp',
'platform/symbian/hxdatasourcemmfclip.cpp',
+ 'platform/symbian/asynchronousmultireader.cpp',
'platform/symbian/HxMMDataSource.cpp')
From jwei at helixcommunity.org Fri Dec 7 11:26:44 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 10:55:09 2007
Subject: [Common-cvs] fileio/platform/symbian HxMMDataSource.cpp,1.5,1.6
Message-ID:
Update of /cvsroot/common/fileio/platform/symbian
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv13344/platform/symbian
Modified Files:
HxMMDataSource.cpp
Log Message:
Nokia submits this code under the terms of a commercial contribution agreement with RealNetworks, and I am authorized to contribute this code under said agreement."
Modified by: john.wei@nokia.com
Reviewed by:
Date: 03-Dec-2007
Project: SymbianMmf_Rel
TSW: ELDG-73WGS6
Synopsis: Installing Asynchronous Datasource for Audio Controller
Audio controller is currently using synchronous datasource for playing. This CR changes this to asynchronous datasource, which results in audio play more responsive. Please note that video playing is not affected.
Files Modified:
/cvsroot/common/fileio/pub/hxdatasource.h
/cvsroot/common/fileio/hxdatasource.cpp
/cvsroot/common/fileio/symbian.pcf
/cvsroot/common/fileio/platform/symbian/HxMMDataSource.cpp
/cvsroot/common/fileio/pub/platform/symbian/HxMMDataSource.h
/cvsroot/clientapps/symbianMmf/audiocontroller/hxmmfaudioctrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.h
/cvsroot/filesystem/local/mini/minifileobj.cpp
/cvsroot/common/include/ihxmmfdatasource.h
Files New:
/cvsroot/common/fileio/platform/symbian/asynchronousmultireader.cpp
/cvsroot/common/fileio/pub/platform/symbian/asynchronousmultireader.h
Image Size and Heap Use impact: minor
Module Release testing (STIF) : N/A
Test case(s) Added : no
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5, winscw
Branch: Head & 210CayS
Index: HxMMDataSource.cpp
===================================================================
RCS file: /cvsroot/common/fileio/platform/symbian/HxMMDataSource.cpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- HxMMDataSource.cpp 15 Oct 2007 15:54:35 -0000 1.5
+++ HxMMDataSource.cpp 7 Dec 2007 19:26:41 -0000 1.6
@@ -257,19 +257,19 @@
HXLOGL4(HXLOG_FILE, "CHxMMDataSource::BufferFilled dataSize = %d m_ulPosition = %d m_pBuffer->LastBuffer()= %d",dataSize,m_ulPosition,m_pBuffer->LastBuffer());
m_ulPosition += dataSize;
- if(m_pObserver != NULL)
- {
- // check protects m_pHXBuffer as well.
- TPtr8 ptr8((TUint8 *)m_pHXBuffer, 0, dataSize);
- ptr8.Copy(m_pBuffer->Data());
- m_pObserver->ReadDone(NULL, dataSize);
- }
+ TPtr8 ptr8((TUint8 *)m_pHXBuffer, 0, dataSize);
+ ptr8.Copy(m_pBuffer->Data());
if(m_pBuffer->LastBuffer())
{
delete m_pBuffer;
m_pBuffer = NULL;
}
+
+ if(m_pObserver != NULL)
+ {
+ m_pObserver->ReadDone(NULL, dataSize);
+ }
}
TInt CHxMMDataSource::GetBitRate(TUint &ulBitRate)
@@ -297,7 +297,7 @@
return HXR_OK;
}
-STDMETHODIMP CHxMMDataSource::AsyncReadSupported()
+HXBOOL CHxMMDataSource::AsyncReadSupported()
{
return TRUE;
}
From jwei at helixcommunity.org Fri Dec 7 11:26:45 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 10:55:10 2007
Subject: [Common-cvs] fileio/pub hxdatasource.h,1.6,1.7
Message-ID:
Update of /cvsroot/common/fileio/pub
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv13344/pub
Modified Files:
hxdatasource.h
Log Message:
Nokia submits this code under the terms of a commercial contribution agreement with RealNetworks, and I am authorized to contribute this code under said agreement."
Modified by: john.wei@nokia.com
Reviewed by:
Date: 03-Dec-2007
Project: SymbianMmf_Rel
TSW: ELDG-73WGS6
Synopsis: Installing Asynchronous Datasource for Audio Controller
Audio controller is currently using synchronous datasource for playing. This CR changes this to asynchronous datasource, which results in audio play more responsive. Please note that video playing is not affected.
Files Modified:
/cvsroot/common/fileio/pub/hxdatasource.h
/cvsroot/common/fileio/hxdatasource.cpp
/cvsroot/common/fileio/symbian.pcf
/cvsroot/common/fileio/platform/symbian/HxMMDataSource.cpp
/cvsroot/common/fileio/pub/platform/symbian/HxMMDataSource.h
/cvsroot/clientapps/symbianMmf/audiocontroller/hxmmfaudioctrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.h
/cvsroot/filesystem/local/mini/minifileobj.cpp
/cvsroot/common/include/ihxmmfdatasource.h
Files New:
/cvsroot/common/fileio/platform/symbian/asynchronousmultireader.cpp
/cvsroot/common/fileio/pub/platform/symbian/asynchronousmultireader.h
Image Size and Heap Use impact: minor
Module Release testing (STIF) : N/A
Test case(s) Added : no
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5, winscw
Branch: Head & 210CayS
Index: hxdatasource.h
===================================================================
RCS file: /cvsroot/common/fileio/pub/hxdatasource.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- hxdatasource.h 19 Jul 2007 00:34:05 -0000 1.6
+++ hxdatasource.h 7 Dec 2007 19:26:42 -0000 1.7
@@ -54,6 +54,7 @@
#include "hxstring.h"
#include "hxfiles.h"
#include "ihxmmfdatasource.h"
+#include "ihxpckts.h" //IHXBuffer
// warnning: This interface and related functionality is under development.
// IHXMMFDataSource API can change anytime.
@@ -84,13 +85,14 @@
virtual UINT32 Write(THIS_ void *, ULONG32 size, ULONG32 count) PURE;
STDMETHOD(GetSize) (THIS_ UINT32 &ulSize) PURE;
STDMETHOD(GetLastError) (THIS_);
- STDMETHOD(AsyncReadSupported) (THIS_);
+ HXBOOL AsyncReadSupported(THIS_);
public: //enable multi read/write
- STDMETHOD(Open2) (THIS_ IHXRequest *pRequest, const char *mode, IHXFileObject* pFileObject);
+ STDMETHOD(Open2) (THIS_ IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver, IHXFileObject* pFileObject);
STDMETHOD(Seek2) (THIS_ UINT32 offset, INT32 fromWhere, IHXFileObject* pFileObject);
STDMETHOD(Close2) (THIS_ IHXFileObject* pFileObject);
- virtual UINT32 Read2(THIS_ void *, ULONG32 size, ULONG32 count, IHXFileObject* pFileObject);
+ virtual UINT32 Read2(THIS_ IHXBuffer* pBuffer, IHXFileObject* pFileObject);
virtual UINT32 Write2(THIS_ void *, ULONG32 size, ULONG32 count, IHXFileObject* pFileObject);
+ STDMETHOD(GetLastError2) ( THIS_ IHXFileObject* pFileObject);
protected: //enable multi read/write
HX_RESULT RestoreFileObject( IHXFileObject* pFileObject );
From jwei at helixcommunity.org Fri Dec 7 11:26:45 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 10:55:10 2007
Subject: [Common-cvs] fileio/pub/platform/symbian HxMMDataSource.h,1.3,1.4
Message-ID:
Update of /cvsroot/common/fileio/pub/platform/symbian
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv13344/pub/platform/symbian
Modified Files:
HxMMDataSource.h
Log Message:
Nokia submits this code under the terms of a commercial contribution agreement with RealNetworks, and I am authorized to contribute this code under said agreement."
Modified by: john.wei@nokia.com
Reviewed by:
Date: 03-Dec-2007
Project: SymbianMmf_Rel
TSW: ELDG-73WGS6
Synopsis: Installing Asynchronous Datasource for Audio Controller
Audio controller is currently using synchronous datasource for playing. This CR changes this to asynchronous datasource, which results in audio play more responsive. Please note that video playing is not affected.
Files Modified:
/cvsroot/common/fileio/pub/hxdatasource.h
/cvsroot/common/fileio/hxdatasource.cpp
/cvsroot/common/fileio/symbian.pcf
/cvsroot/common/fileio/platform/symbian/HxMMDataSource.cpp
/cvsroot/common/fileio/pub/platform/symbian/HxMMDataSource.h
/cvsroot/clientapps/symbianMmf/audiocontroller/hxmmfaudioctrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.h
/cvsroot/filesystem/local/mini/minifileobj.cpp
/cvsroot/common/include/ihxmmfdatasource.h
Files New:
/cvsroot/common/fileio/platform/symbian/asynchronousmultireader.cpp
/cvsroot/common/fileio/pub/platform/symbian/asynchronousmultireader.h
Image Size and Heap Use impact: minor
Module Release testing (STIF) : N/A
Test case(s) Added : no
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5, winscw
Branch: Head & 210CayS
Index: HxMMDataSource.h
===================================================================
RCS file: /cvsroot/common/fileio/pub/platform/symbian/HxMMDataSource.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- HxMMDataSource.h 23 Aug 2007 16:12:26 -0000 1.3
+++ HxMMDataSource.h 7 Dec 2007 19:26:42 -0000 1.4
@@ -99,7 +99,7 @@
STDMETHOD(SetUnderflowTimeoutInMillis)(THIS_ UINT32 timeout);
#endif
static CHxMMDataSource* NewL(MDataSource& aDataSource, UINT32 aCacheSize = 65535);
- STDMETHOD(AsyncReadSupported) (THIS_);
+ HXBOOL AsyncReadSupported(THIS_);
protected: // functions from MMultimediaDataSourceObserver
From jwei at helixcommunity.org Fri Dec 7 11:27:20 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 10:55:45 2007
Subject: [Common-cvs] fileio/pub hxdatasource.h,1.1.2.4,1.1.2.5
Message-ID:
Update of /cvsroot/common/fileio/pub
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv13870/pub
Modified Files:
Tag: hxclient_2_1_0_cayennes
hxdatasource.h
Log Message:
Nokia submits this code under the terms of a commercial contribution agreement with RealNetworks, and I am authorized to contribute this code under said agreement."
Modified by: john.wei@nokia.com
Reviewed by:
Date: 03-Dec-2007
Project: SymbianMmf_Rel
TSW: ELDG-73WGS6
Synopsis: Installing Asynchronous Datasource for Audio Controller
Audio controller is currently using synchronous datasource for playing. This CR changes this to asynchronous datasource, which results in audio play more responsive. Please note that video playing is not affected.
Files Modified:
/cvsroot/common/fileio/pub/hxdatasource.h
/cvsroot/common/fileio/hxdatasource.cpp
/cvsroot/common/fileio/symbian.pcf
/cvsroot/common/fileio/platform/symbian/HxMMDataSource.cpp
/cvsroot/common/fileio/pub/platform/symbian/HxMMDataSource.h
/cvsroot/clientapps/symbianMmf/audiocontroller/hxmmfaudioctrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.h
/cvsroot/filesystem/local/mini/minifileobj.cpp
/cvsroot/common/include/ihxmmfdatasource.h
Files New:
/cvsroot/common/fileio/platform/symbian/asynchronousmultireader.cpp
/cvsroot/common/fileio/pub/platform/symbian/asynchronousmultireader.h
Image Size and Heap Use impact: minor
Module Release testing (STIF) : N/A
Test case(s) Added : no
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5, winscw
Branch: Head & 210CayS
Index: hxdatasource.h
===================================================================
RCS file: /cvsroot/common/fileio/pub/hxdatasource.h,v
retrieving revision 1.1.2.4
retrieving revision 1.1.2.5
diff -u -d -r1.1.2.4 -r1.1.2.5
--- hxdatasource.h 18 Jul 2007 23:06:14 -0000 1.1.2.4
+++ hxdatasource.h 7 Dec 2007 19:27:17 -0000 1.1.2.5
@@ -54,6 +54,7 @@
#include "hxstring.h"
#include "hxfiles.h"
#include "ihxmmfdatasource.h"
+#include "ihxpckts.h" //IHXBuffer
// warnning: This interface and related functionality is under development.
// IHXMMFDataSource API can change anytime.
@@ -84,13 +85,14 @@
virtual UINT32 Write(THIS_ void *, ULONG32 size, ULONG32 count) PURE;
STDMETHOD(GetSize) (THIS_ UINT32 &ulSize) PURE;
STDMETHOD(GetLastError) (THIS_);
- STDMETHOD(AsyncReadSupported) (THIS_);
+ HXBOOL AsyncReadSupported(THIS_);
public: //enable multi read/write
- STDMETHOD(Open2) (THIS_ IHXRequest *pRequest, const char *mode, IHXFileObject* pFileObject);
+ STDMETHOD(Open2) (THIS_ IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver, IHXFileObject* pFileObject);
STDMETHOD(Seek2) (THIS_ UINT32 offset, INT32 fromWhere, IHXFileObject* pFileObject);
STDMETHOD(Close2) (THIS_ IHXFileObject* pFileObject);
- virtual UINT32 Read2(THIS_ void *, ULONG32 size, ULONG32 count, IHXFileObject* pFileObject);
+ virtual UINT32 Read2(THIS_ IHXBuffer* pBuffer, IHXFileObject* pFileObject);
virtual UINT32 Write2(THIS_ void *, ULONG32 size, ULONG32 count, IHXFileObject* pFileObject);
+ STDMETHOD(GetLastError2) ( THIS_ IHXFileObject* pFileObject);
protected: //enable multi read/write
HX_RESULT RestoreFileObject( IHXFileObject* pFileObject );
From jwei at helixcommunity.org Fri Dec 7 11:27:22 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 10:55:47 2007
Subject: [Common-cvs] fileio/pub/platform/symbian HxMMDataSource.h, 1.1.2.2,
1.1.2.3
Message-ID:
Update of /cvsroot/common/fileio/pub/platform/symbian
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv13870/pub/platform/symbian
Modified Files:
Tag: hxclient_2_1_0_cayennes
HxMMDataSource.h
Log Message:
Nokia submits this code under the terms of a commercial contribution agreement with RealNetworks, and I am authorized to contribute this code under said agreement."
Modified by: john.wei@nokia.com
Reviewed by:
Date: 03-Dec-2007
Project: SymbianMmf_Rel
TSW: ELDG-73WGS6
Synopsis: Installing Asynchronous Datasource for Audio Controller
Audio controller is currently using synchronous datasource for playing. This CR changes this to asynchronous datasource, which results in audio play more responsive. Please note that video playing is not affected.
Files Modified:
/cvsroot/common/fileio/pub/hxdatasource.h
/cvsroot/common/fileio/hxdatasource.cpp
/cvsroot/common/fileio/symbian.pcf
/cvsroot/common/fileio/platform/symbian/HxMMDataSource.cpp
/cvsroot/common/fileio/pub/platform/symbian/HxMMDataSource.h
/cvsroot/clientapps/symbianMmf/audiocontroller/hxmmfaudioctrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.h
/cvsroot/filesystem/local/mini/minifileobj.cpp
/cvsroot/common/include/ihxmmfdatasource.h
Files New:
/cvsroot/common/fileio/platform/symbian/asynchronousmultireader.cpp
/cvsroot/common/fileio/pub/platform/symbian/asynchronousmultireader.h
Image Size and Heap Use impact: minor
Module Release testing (STIF) : N/A
Test case(s) Added : no
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5, winscw
Branch: Head & 210CayS
Index: HxMMDataSource.h
===================================================================
RCS file: /cvsroot/common/fileio/pub/platform/symbian/HxMMDataSource.h,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -d -r1.1.2.2 -r1.1.2.3
--- HxMMDataSource.h 23 Aug 2007 15:52:17 -0000 1.1.2.2
+++ HxMMDataSource.h 7 Dec 2007 19:27:18 -0000 1.1.2.3
@@ -99,7 +99,7 @@
STDMETHOD(SetUnderflowTimeoutInMillis)(THIS_ UINT32 timeout);
#endif
static CHxMMDataSource* NewL(MDataSource& aDataSource, UINT32 aCacheSize = 65535);
- STDMETHOD(AsyncReadSupported) (THIS_);
+ HXBOOL AsyncReadSupported(THIS_);
protected: // functions from MMultimediaDataSourceObserver
From jwei at helixcommunity.org Fri Dec 7 11:27:17 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 10:56:13 2007
Subject: [Common-cvs] fileio hxdatasource.cpp, 1.1.2.4, 1.1.2.5 symbian.pcf,
1.10.2.2, 1.10.2.3
Message-ID:
Update of /cvsroot/common/fileio
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv13870
Modified Files:
Tag: hxclient_2_1_0_cayennes
hxdatasource.cpp symbian.pcf
Log Message:
Nokia submits this code under the terms of a commercial contribution agreement with RealNetworks, and I am authorized to contribute this code under said agreement."
Modified by: john.wei@nokia.com
Reviewed by:
Date: 03-Dec-2007
Project: SymbianMmf_Rel
TSW: ELDG-73WGS6
Synopsis: Installing Asynchronous Datasource for Audio Controller
Audio controller is currently using synchronous datasource for playing. This CR changes this to asynchronous datasource, which results in audio play more responsive. Please note that video playing is not affected.
Files Modified:
/cvsroot/common/fileio/pub/hxdatasource.h
/cvsroot/common/fileio/hxdatasource.cpp
/cvsroot/common/fileio/symbian.pcf
/cvsroot/common/fileio/platform/symbian/HxMMDataSource.cpp
/cvsroot/common/fileio/pub/platform/symbian/HxMMDataSource.h
/cvsroot/clientapps/symbianMmf/audiocontroller/hxmmfaudioctrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.h
/cvsroot/filesystem/local/mini/minifileobj.cpp
/cvsroot/common/include/ihxmmfdatasource.h
Files New:
/cvsroot/common/fileio/platform/symbian/asynchronousmultireader.cpp
/cvsroot/common/fileio/pub/platform/symbian/asynchronousmultireader.h
Image Size and Heap Use impact: minor
Module Release testing (STIF) : N/A
Test case(s) Added : no
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5, winscw
Branch: Head & 210CayS
Index: hxdatasource.cpp
===================================================================
RCS file: /cvsroot/common/fileio/hxdatasource.cpp,v
retrieving revision 1.1.2.4
retrieving revision 1.1.2.5
diff -u -d -r1.1.2.4 -r1.1.2.5
--- hxdatasource.cpp 18 Jul 2007 23:06:14 -0000 1.1.2.4
+++ hxdatasource.cpp 7 Dec 2007 19:27:12 -0000 1.1.2.5
@@ -192,7 +192,7 @@
}
//enable multi read/write
-STDMETHODIMP CHXDataSource::Open2( IHXRequest *pRequest, const char *mode, IHXFileObject* pFileObject )
+STDMETHODIMP CHXDataSource::Open2( IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver, IHXFileObject* pFileObject )
{
HX_RESULT retVal( HXR_FAIL );
TInt index( 0 );
@@ -242,8 +242,18 @@
return retVal;
}
-UINT32 CHXDataSource::Read2( void *pBuf, ULONG32 size, ULONG32 count, IHXFileObject* pFileObject )
+UINT32 CHXDataSource::Read2( IHXBuffer* pBuffer, IHXFileObject* pFileObject )
{
+ UCHAR* pBuf( NULL );
+ ULONG32 size( 0 );
+ ULONG32 count = sizeof( UCHAR );
+
+ if( pBuffer )
+ {
+ pBuf = pBuffer->GetBuffer();
+ size = pBuffer->GetSize();
+ }
+
HX_RESULT retVal = RestoreFileObject( pFileObject );
UINT32 bytesread( 0 );
@@ -303,6 +313,11 @@
return retVal;
}
+STDMETHODIMP CHXDataSource::GetLastError2( IHXFileObject* pFileObject )
+{
+ return m_ulLastError;
+}
+
HX_RESULT CHXDataSource::RestoreFileObject( IHXFileObject* pFileObject )
{
HX_RESULT retVal( HXR_OK );
@@ -357,7 +372,7 @@
}
return retVal;
}
-STDMETHODIMP CHXDataSource::AsyncReadSupported()
+HXBOOL CHXDataSource::AsyncReadSupported()
{
return FALSE;
}
Index: symbian.pcf
===================================================================
RCS file: /cvsroot/common/fileio/symbian.pcf,v
retrieving revision 1.10.2.2
retrieving revision 1.10.2.3
diff -u -d -r1.10.2.2 -r1.10.2.3
--- symbian.pcf 18 Jul 2007 23:06:14 -0000 1.10.2.2
+++ symbian.pcf 7 Dec 2007 19:27:12 -0000 1.10.2.3
@@ -69,5 +69,6 @@
'platform/symbian/hxdatasource_ccontent.cpp',
'platform/symbian/hxdatasource_descriptor.cpp',
'platform/symbian/hxdatasourcemmfclip.cpp',
+ 'platform/symbian/asynchronousmultireader.cpp',
'platform/symbian/HxMMDataSource.cpp')
From jwei at helixcommunity.org Fri Dec 7 11:27:18 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 10:56:14 2007
Subject: [Common-cvs] fileio/platform/symbian HxMMDataSource.cpp, 1.1.2.4,
1.1.2.5
Message-ID:
Update of /cvsroot/common/fileio/platform/symbian
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv13870/platform/symbian
Modified Files:
Tag: hxclient_2_1_0_cayennes
HxMMDataSource.cpp
Log Message:
Nokia submits this code under the terms of a commercial contribution agreement with RealNetworks, and I am authorized to contribute this code under said agreement."
Modified by: john.wei@nokia.com
Reviewed by:
Date: 03-Dec-2007
Project: SymbianMmf_Rel
TSW: ELDG-73WGS6
Synopsis: Installing Asynchronous Datasource for Audio Controller
Audio controller is currently using synchronous datasource for playing. This CR changes this to asynchronous datasource, which results in audio play more responsive. Please note that video playing is not affected.
Files Modified:
/cvsroot/common/fileio/pub/hxdatasource.h
/cvsroot/common/fileio/hxdatasource.cpp
/cvsroot/common/fileio/symbian.pcf
/cvsroot/common/fileio/platform/symbian/HxMMDataSource.cpp
/cvsroot/common/fileio/pub/platform/symbian/HxMMDataSource.h
/cvsroot/clientapps/symbianMmf/audiocontroller/hxmmfaudioctrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.h
/cvsroot/filesystem/local/mini/minifileobj.cpp
/cvsroot/common/include/ihxmmfdatasource.h
Files New:
/cvsroot/common/fileio/platform/symbian/asynchronousmultireader.cpp
/cvsroot/common/fileio/pub/platform/symbian/asynchronousmultireader.h
Image Size and Heap Use impact: minor
Module Release testing (STIF) : N/A
Test case(s) Added : no
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5, winscw
Branch: Head & 210CayS
Index: HxMMDataSource.cpp
===================================================================
RCS file: /cvsroot/common/fileio/platform/symbian/HxMMDataSource.cpp,v
retrieving revision 1.1.2.4
retrieving revision 1.1.2.5
diff -u -d -r1.1.2.4 -r1.1.2.5
--- HxMMDataSource.cpp 15 Oct 2007 15:50:11 -0000 1.1.2.4
+++ HxMMDataSource.cpp 7 Dec 2007 19:27:15 -0000 1.1.2.5
@@ -257,19 +257,19 @@
HXLOGL4(HXLOG_FILE, "CHxMMDataSource::BufferFilled dataSize = %d m_ulPosition = %d m_pBuffer->LastBuffer()= %d",dataSize,m_ulPosition,m_pBuffer->LastBuffer());
m_ulPosition += dataSize;
- if(m_pObserver != NULL)
- {
- // check protects m_pHXBuffer as well.
- TPtr8 ptr8((TUint8 *)m_pHXBuffer, 0, dataSize);
- ptr8.Copy(m_pBuffer->Data());
- m_pObserver->ReadDone(NULL, dataSize);
- }
+ TPtr8 ptr8((TUint8 *)m_pHXBuffer, 0, dataSize);
+ ptr8.Copy(m_pBuffer->Data());
if(m_pBuffer->LastBuffer())
{
delete m_pBuffer;
m_pBuffer = NULL;
}
+
+ if(m_pObserver != NULL)
+ {
+ m_pObserver->ReadDone(NULL, dataSize);
+ }
}
TInt CHxMMDataSource::GetBitRate(TUint &ulBitRate)
@@ -297,7 +297,7 @@
return HXR_OK;
}
-STDMETHODIMP CHxMMDataSource::AsyncReadSupported()
+HXBOOL CHxMMDataSource::AsyncReadSupported()
{
return TRUE;
}
From jwei at helixcommunity.org Fri Dec 7 11:29:05 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 10:57:30 2007
Subject: [Common-cvs]
include ihxmmfdatasource.h, 1.1.2.4, 1.1.2.5 platform.h,
1.34.2.2, 1.34.2.3
Message-ID:
Update of /cvsroot/common/include
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv15171
Modified Files:
Tag: hxclient_2_1_0_cayennes
ihxmmfdatasource.h platform.h
Log Message:
Nokia submits this code under the terms of a commercial contribution agreement with RealNetworks, and I am authorized to contribute this code under said agreement."
Modified by: john.wei@nokia.com
Reviewed by:
Date: 03-Dec-2007
Project: SymbianMmf_Rel
TSW: ELDG-73WGS6
Synopsis: Installing Asynchronous Datasource for Audio Controller
Audio controller is currently using synchronous datasource for playing. This CR changes this to asynchronous datasource, which results in audio play more responsive. Please note that video playing is not affected.
Files Modified:
/cvsroot/common/fileio/pub/hxdatasource.h
/cvsroot/common/fileio/hxdatasource.cpp
/cvsroot/common/fileio/symbian.pcf
/cvsroot/common/fileio/platform/symbian/HxMMDataSource.cpp
/cvsroot/common/fileio/pub/platform/symbian/HxMMDataSource.h
/cvsroot/clientapps/symbianMmf/audiocontroller/hxmmfaudioctrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.h
/cvsroot/filesystem/local/mini/minifileobj.cpp
/cvsroot/common/include/ihxmmfdatasource.h
Files New:
/cvsroot/common/fileio/platform/symbian/asynchronousmultireader.cpp
/cvsroot/common/fileio/pub/platform/symbian/asynchronousmultireader.h
Image Size and Heap Use impact: minor
Module Release testing (STIF) : N/A
Test case(s) Added : no
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5, winscw
Branch: Head & 210CayS
Index: ihxmmfdatasource.h
===================================================================
RCS file: /cvsroot/common/include/ihxmmfdatasource.h,v
retrieving revision 1.1.2.4
retrieving revision 1.1.2.5
diff -u -d -r1.1.2.4 -r1.1.2.5
--- ihxmmfdatasource.h 18 Jul 2007 23:24:55 -0000 1.1.2.4
+++ ihxmmfdatasource.h 7 Dec 2007 19:29:02 -0000 1.1.2.5
@@ -88,9 +88,7 @@
/*
Informs datasource observer once read request is complete.
*/
- virtual void ReadDone(THIS_
- void * pBuffer, ULONG32 ulCount
- ) PURE;
+ virtual void ReadDone(void* pBuffer, UINT32 byteCount) PURE;
};
// warnning: This interface and related functionality is under development.
@@ -168,7 +166,7 @@
//enable multi read/write
STDMETHOD(Open2) (THIS_
- IHXRequest *pRequest, const char *mode, IHXFileObject* pFileObject
+ IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver, IHXFileObject* pFileObject
) PURE;
STDMETHOD(Close2) (THIS_ IHXFileObject* pFileObject) PURE;
@@ -177,7 +175,7 @@
reads "count" elements each of size "size".
*/
virtual UINT32 Read2(THIS_
- void * buf, ULONG32 size, ULONG32 count, IHXFileObject* pFileObject
+ IHXBuffer* pBuffer, IHXFileObject* pFileObject
) PURE;
/*
@@ -189,8 +187,9 @@
STDMETHOD(Seek2) (THIS_ UINT32, INT32 fromWhere, IHXFileObject* pFileObject) PURE;
+ STDMETHOD(GetLastError2) (THIS_ IHXFileObject* pFileObject) PURE;
- STDMETHOD(AsyncReadSupported) (THIS_) PURE;
+ virtual HXBOOL AsyncReadSupported(THIS_) PURE;
};
Index: platform.h
===================================================================
RCS file: /cvsroot/common/include/platform.h,v
retrieving revision 1.34.2.2
retrieving revision 1.34.2.3
diff -u -d -r1.34.2.2 -r1.34.2.3
--- platform.h 24 Aug 2006 20:00:52 -0000 1.34.2.2
+++ platform.h 7 Dec 2007 19:29:02 -0000 1.34.2.3
@@ -49,6 +49,6 @@
#ifndef _PLATFORM_H_
#define _PLATFORM_H_
-#define TARVER_STR_PLATFORM "win32"
-#define TARVER_STR_BUILD_BRANCH "SERVER_CURRENT_RN"
+#define TARVER_STR_PLATFORM "symbian"
+#define TARVER_STR_BUILD_BRANCH "hxclient_2_1_0_cayennes_restricted"
#endif
From jwei at helixcommunity.org Fri Dec 7 11:29:11 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 10:57:38 2007
Subject: [Common-cvs] include ihxmmfdatasource.h,1.6,1.7
Message-ID:
Update of /cvsroot/common/include
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv15256
Modified Files:
ihxmmfdatasource.h
Log Message:
Nokia submits this code under the terms of a commercial contribution agreement with RealNetworks, and I am authorized to contribute this code under said agreement."
Modified by: john.wei@nokia.com
Reviewed by:
Date: 03-Dec-2007
Project: SymbianMmf_Rel
TSW: ELDG-73WGS6
Synopsis: Installing Asynchronous Datasource for Audio Controller
Audio controller is currently using synchronous datasource for playing. This CR changes this to asynchronous datasource, which results in audio play more responsive. Please note that video playing is not affected.
Files Modified:
/cvsroot/common/fileio/pub/hxdatasource.h
/cvsroot/common/fileio/hxdatasource.cpp
/cvsroot/common/fileio/symbian.pcf
/cvsroot/common/fileio/platform/symbian/HxMMDataSource.cpp
/cvsroot/common/fileio/pub/platform/symbian/HxMMDataSource.h
/cvsroot/clientapps/symbianMmf/audiocontroller/hxmmfaudioctrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.cpp
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.h
/cvsroot/filesystem/local/mini/minifileobj.cpp
/cvsroot/common/include/ihxmmfdatasource.h
Files New:
/cvsroot/common/fileio/platform/symbian/asynchronousmultireader.cpp
/cvsroot/common/fileio/pub/platform/symbian/asynchronousmultireader.h
Image Size and Heap Use impact: minor
Module Release testing (STIF) : N/A
Test case(s) Added : no
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5, winscw
Branch: Head & 210CayS
Index: ihxmmfdatasource.h
===================================================================
RCS file: /cvsroot/common/include/ihxmmfdatasource.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- ihxmmfdatasource.h 19 Jul 2007 00:35:56 -0000 1.6
+++ ihxmmfdatasource.h 7 Dec 2007 19:29:08 -0000 1.7
@@ -88,9 +88,7 @@
/*
Informs datasource observer once read request is complete.
*/
- virtual void ReadDone(THIS_
- void * pBuffer, ULONG32 ulCount
- ) PURE;
+ virtual void ReadDone(void* pBuffer, UINT32 byteCount) PURE;
};
// warnning: This interface and related functionality is under development.
@@ -168,7 +166,7 @@
//enable multi read/write
STDMETHOD(Open2) (THIS_
- IHXRequest *pRequest, const char *mode, IHXFileObject* pFileObject
+ IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver, IHXFileObject* pFileObject
) PURE;
STDMETHOD(Close2) (THIS_ IHXFileObject* pFileObject) PURE;
@@ -177,7 +175,7 @@
reads "count" elements each of size "size".
*/
virtual UINT32 Read2(THIS_
- void * buf, ULONG32 size, ULONG32 count, IHXFileObject* pFileObject
+ IHXBuffer* pBuffer, IHXFileObject* pFileObject
) PURE;
/*
@@ -189,8 +187,9 @@
STDMETHOD(Seek2) (THIS_ UINT32, INT32 fromWhere, IHXFileObject* pFileObject) PURE;
+ STDMETHOD(GetLastError2) (THIS_ IHXFileObject* pFileObject) PURE;
- STDMETHOD(AsyncReadSupported) (THIS_) PURE;
+ virtual HXBOOL AsyncReadSupported(THIS_) PURE;
};
From jwei at helixcommunity.org Fri Dec 7 12:41:55 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 12:10:18 2007
Subject: [Common-cvs] fileio/pub/platform/symbian asynchronousmultireader.h,
NONE, 1.1.2.1
Message-ID:
Update of /cvsroot/common/fileio/pub/platform/symbian
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv18964
Added Files:
Tag: hxclient_2_1_0_cayennes
asynchronousmultireader.h
Log Message:
--- NEW FILE: asynchronousmultireader.h ---
/* ***** BEGIN LICENSE BLOCK *****
*
* Portions Copyright (c) 2007 RealNetworks, Inc. All Rights Reserved.
*
* Version: $Id: asynchronousmultireader.h,v 1.1.2.1 2007/12/07 20:41:19 jwei Exp $
* The contents of this file, and the files included with this file,
* are subject to the current version of the RealNetworks Public
* Source License (the "RPSL") available at
* http://www.helixcommunity.org/content/rpsl unless you have licensed
* the file under the current version of the RealNetworks Community
* Source License (the "RCSL") available at
* http://www.helixcommunity.org/content/rcsl, in which case the RCSL
* will apply. You may also obtain the license terms directly from
* RealNetworks. You may not use this file except in compliance with
* the RPSL or, if you have a valid RCSL with RealNetworks applicable
* to this file, the RCSL. Please see the applicable RPSL or RCSL for
* the rights, obligations and limitations governing use of the
* contents of the file.
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License Version 2 or later (the
* "GPL") in which case the provisions of the GPL are applicable
* instead of those above. If you wish to allow use of your version of
* this file only under the terms of the GPL, and not to allow others
* to use your version of this file under the terms of either the RPSL
* or RCSL, indicate your decision by deleting the provisions above
* and replace them with the notice and other provisions required by
* the GPL. If you do not delete the provisions above, a recipient may
* use your version of this file under the terms of any one of the
* RPSL, the RCSL or the GPL.
*
* This file is part of the Helix DNA Technology. RealNetworks is the
* developer of the Original Code and owns the copyrights in the
* portions it created.
*
* This file, and the files included with this file, is distributed
* and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
* KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
* ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
* ENJOYMENT OR NON-INFRINGEMENT.
*
* Technology Compatibility Kit Test Suite(s) Location:
* http://www.helixcommunity.org/content/tck
*
* Contributor(s): John Wei
*
* ***** END LICENSE BLOCK ***** */
#ifndef _ASYNCHRONOUSMULTIREADER_H_
#define _ASYNCHRONOUSMULTIREADER_H_
#include //CMMFClip
#include //MDataSink
#include //MAsyncEventHandler
#include "hxcom.h" //STDMETHODIMP
#include "hxfiles.h" //IHXFileObject
#include "ihxmmfdatasource.h" //IHXMMFDataSource
#include "hxtlogutil.h" //HXLOG
#include "hlxclib/sys/stat.h" //struct stat
#include //KMMFErrorCategoryControllerGeneralError
#ifdef HELIX_FEATURE_S60_PROGDOWN
#include "ihxdownloadeventobserver.h" //IHXDownloadEventObserver
#endif
#include "ihxpckts.h" //IHXBuffer
class CReadingScheduler;
class CAsynchronousReader;
/*******************************************************************************
* CReaderCommandBase
********************************************************************************/
class CReaderCommandBase
{
public:
CReaderCommandBase( IHXFileObject* pFileObject, HXBOOL bIsSynchronousCommand );
virtual ~CReaderCommandBase();
public:
virtual HX_RESULT Execute( CAsynchronousReader* pReader ) = 0;
HXBOOL IsSynchronousCommand() const;
void SetSynchronousCommandState( HXBOOL aIsSynchronousCommand );
public: //ring buffer
CReaderCommandBase* GetNextCommand() const;
CReaderCommandBase* GetPreviousCommand() const;
void SetNextCommand( CReaderCommandBase* pCommand );
void SetPreviousCommand( CReaderCommandBase* pCommand );
protected:
IHXFileObject* m_pFileObject;
HXBOOL m_bIsSynchronousCommand;
CReaderCommandBase* m_pNextCommand;
CReaderCommandBase* m_pPreviousCommand;
};
/*******************************************************************************
* CReaderCommandOpen
********************************************************************************/
class CReaderCommandOpen : public CReaderCommandBase
{
public:
CReaderCommandOpen( IHXRequest *pRequest, const char *mode,
IHXMMFDataSourceObserver* pObserver, IHXFileObject* pFileObject );
~CReaderCommandOpen();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
private:
IHXRequest* m_pRequest;
const char* m_pMode;
IHXMMFDataSourceObserver* m_pObserver;
};
/*******************************************************************************
* CReaderCommandSeek
********************************************************************************/
class CReaderCommandSeek : public CReaderCommandBase
{
public:
CReaderCommandSeek( UINT32 offset, INT32 fromWhere, IHXFileObject* pFileObject );
~CReaderCommandSeek();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
private:
UINT32 m_uOffset;
INT32 m_iFromWhere;
};
/*******************************************************************************
* CReaderCommandStat
********************************************************************************/
class CReaderCommandStat : public CReaderCommandBase
{
public:
CReaderCommandStat( struct stat *buf );
~CReaderCommandStat();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
private:
struct stat* m_pBuf;
};
/*******************************************************************************
* CReaderCommandClose
********************************************************************************/
class CReaderCommandClose : public CReaderCommandBase
{
public:
CReaderCommandClose( IHXFileObject* pFileObject );
~CReaderCommandClose();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
};
/*******************************************************************************
* CReaderCommandRead
********************************************************************************/
class CReaderCommandRead : public CReaderCommandBase
{
public:
CReaderCommandRead( IHXBuffer* pBuffer, IHXFileObject* pFileObject );
~CReaderCommandRead();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
private:
IHXBuffer* m_pBuffer;
};
/*******************************************************************************
* CReaderCommandGetSize
********************************************************************************/
class CReaderCommandGetSize : public CReaderCommandBase
{
public:
CReaderCommandGetSize( UINT32& ulSize );
~CReaderCommandGetSize();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
private:
UINT32& m_ulSize;
};
/*******************************************************************************
* CReaderCommandGetLastError
********************************************************************************/
class CReaderCommandGetLastError : public CReaderCommandBase
{
public:
CReaderCommandGetLastError( IHXFileObject* pFileObject );
~CReaderCommandGetLastError();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
};
/*******************************************************************************
* CReaderCommandManager
********************************************************************************/
class CReaderCommandManager
{
public: //(de)constructor
CReaderCommandManager();
virtual ~CReaderCommandManager();
public:
HX_RESULT EnqueueCommand( CReaderCommandBase* m_pCommand );
CReaderCommandBase* RetrieveCommand();
UINT32 GetNumberOfCommands() const;
protected:
CReaderCommandBase* m_pCommandHead;
TUint m_ulNumberOfCommand;
};
/*******************************************************************************
* CSingleReaderState
********************************************************************************/
class CSingleReaderState
{
public:
CSingleReaderState( IHXFileObject* pFileObject );
virtual ~CSingleReaderState();
public:
void SetPosition( ULONG32 ulPosition );
ULONG32 GetPosition() const;
IHXFileObject* GetSupportedFileObject() const;
void SetDataSourceObserver( IHXMMFDataSourceObserver* pObserver );
IHXMMFDataSourceObserver* GetDataSourceObserver() const;
void ResetBuffer( CMMFPtrBuffer* pBuffer );
CMMFPtrBuffer* GetBuffer() const;
void SetLastError( HX_RESULT ulLastError );
HX_RESULT GetLastError();
public: //ring buffer
CSingleReaderState* GetNextReaderState() const;
CSingleReaderState* GetPreviousReaderState() const;
void SetNextReaderState( CSingleReaderState* pReaderState );
void SetPreviousReaderState( CSingleReaderState* pReaderState );
private:
IHXFileObject* m_pSupportedFileObject;
IHXMMFDataSourceObserver* m_pDataSourceObserver;
CSingleReaderState* m_pNextReaderState;
CSingleReaderState* m_pPreviousReaderState;
ULONG32 m_ulPosition; // current offset for the data
HX_RESULT m_ulLastError;
CMMFPtrBuffer* m_pBuffer;
};
/*******************************************************************************
* CAsynchronousReader
********************************************************************************/
class CAsynchronousReader
: public IHXMMFDataSource,
public MAsyncEventHandler,
public MDataSink
{
public: //(de)constructor
CAsynchronousReader( CReadingScheduler* pReadingScheduler, CMMFClip *pImpl );
virtual ~CAsynchronousReader();
public: //IUnknown
STDMETHOD(QueryInterface) ( THIS_ REFIID riid, void** ppvObj );
STDMETHOD_(ULONG32,AddRef) ( THIS);
STDMETHOD_(ULONG32,Release) ( THIS);
public: //IHXMMFDataSource
STDMETHOD(Open) ( THIS_ IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver );
STDMETHOD(Seek) ( THIS_ UINT32 offset, INT32 fromWhere );
STDMETHOD(Stat) ( THIS_ struct stat *buf );
STDMETHOD(GetStringAttribute)( THIS_ UINT32 ulAttibute, REF(IHXBuffer*) pBuffer);
STDMETHOD(GetAttribute)( THIS_ INT32 ulAttribute, INT32 &ulValue );
STDMETHOD(Close) ( THIS_ );
virtual UINT32 Read(THIS_ void *, ULONG32 size, ULONG32 count);
virtual UINT32 Write(THIS_ void *, ULONG32 size, ULONG32 count);
STDMETHOD(GetSize) (THIS_ UINT32 &ulSize);
STDMETHOD(GetLastError) ( THIS_ );
HXBOOL AsyncReadSupported( THIS_ );
STDMETHOD(Open2) (THIS_ IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver, IHXFileObject* pFileObject);
STDMETHOD(Seek2) (THIS_ UINT32 offset, INT32 fromWhere, IHXFileObject* pFileObject);
STDMETHOD(Close2) (THIS_ IHXFileObject* pFileObject);
STDMETHOD(GetLastError2) ( THIS_ IHXFileObject* pFileObject);
virtual UINT32 Read2(THIS_ IHXBuffer* pBuffer, IHXFileObject* pFileObject);
virtual UINT32 Write2(THIS_ void *, ULONG32 size, ULONG32 count, IHXFileObject* pFileObject);
public: //MDataSink
TFourCC SinkDataTypeCode( TMediaId aMediaId );
void EmptyBufferL( CMMFBuffer* aBuffer, MDataSource* aSupplier, TMediaId aMediaId );
TBool CanCreateSinkBuffer();
CMMFBuffer* CreateSinkBufferL( TMediaId aMediaId, TBool& aReference );
void ConstructSinkL( const TDesC8& aInitData );
void BufferFilledL ( CMMFBuffer* aBuffer );
public: //MAsyncEventHandler
TInt SendEventToClient( const TMMFEvent &aEvent );
public:
HX_RESULT Initialize();
HXBOOL IsInitialized() const;
protected:
HX_RESULT AddReaderState( IHXFileObject* pFileObject );
HX_RESULT RemoveReaderState( IHXFileObject* pFileObject );
HXBOOL IsReaderStateAvailable( IHXFileObject* pFileObject ) const;
CSingleReaderState* GetReaderState( IHXFileObject* pFileObject ) const;
CSingleReaderState* GetCurrentReaderState() const;
HX_RESULT SetCurrentReaderState( CSingleReaderState* pReaderState );
void ReadBufferL( CMMFBuffer* aBuffer, TInt aPosition, MDataSink* aConsumer ); //asychronous call
protected:
CReadingScheduler* m_pReadingScheduler;
CSingleReaderState* m_pReaderStateHead;
CSingleReaderState* m_pCurrentReaderState;
UINT32 m_ulNumberOfReader;
CMMFClip* m_pImpl; // actual data source implementation
HXBOOL m_bIsInitialized;
ULONG32 m_ulRefCount;
IHXBuffer* m_pReadingBuffer;
};
/*******************************************************************************
* CReadingScheduler
********************************************************************************/
class CReadingScheduler
{
public: //(de)constructor
CReadingScheduler();
virtual ~CReadingScheduler();
public:
HX_RESULT Initialize( CMMFClip* pCMMfClip );
void NotifyReaderManagerIdle( HXBOOL bReaderManagerIsIdle );
HX_RESULT ProcessCommand( CReaderCommandBase* pCommand );
private:
CAsynchronousReader* m_pReader;
CReaderCommandManager* m_pCommandManager;
HXBOOL m_bReaderIdle;
};
/*******************************************************************************
* CAsynchronousMultiReader
********************************************************************************/
class CAsynchronousMultiReader
: public IHXMMFDataSource
#ifdef HELIX_FEATURE_S60_PROGDOWN
,public IHXDownloadEventObserver
#endif
{
public: //(de)constructor
CAsynchronousMultiReader( CMMFClip* pCMMfClip );
virtual ~CAsynchronousMultiReader();
public: //IUnknown
STDMETHOD(QueryInterface) ( THIS_ REFIID riid, void** ppvObj );
STDMETHOD_(ULONG32,AddRef) ( THIS);
STDMETHOD_(ULONG32,Release) ( THIS);
public: //IHXMMFDataSource
STDMETHOD(Open) ( THIS_ IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver );
STDMETHOD(Seek) ( THIS_ UINT32 offset, INT32 fromWhere );
STDMETHOD(Stat) ( THIS_ struct stat *buf );
STDMETHOD(GetStringAttribute)( THIS_ UINT32 ulAttibute, REF(IHXBuffer*) pBuffer);
STDMETHOD(GetAttribute)( THIS_ INT32 ulAttribute, INT32 &ulValue );
STDMETHOD(Close) ( THIS_ );
virtual UINT32 Read(THIS_ void *, ULONG32 size, ULONG32 count);
virtual UINT32 Write(THIS_ void *, ULONG32 size, ULONG32 count);
STDMETHOD(GetSize) (THIS_ UINT32 &ulSize);
STDMETHOD(GetLastError) ( THIS_ );
HXBOOL AsyncReadSupported( THIS_ );
STDMETHOD(Open2) (THIS_ IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver, IHXFileObject* pFileObject);
STDMETHOD(Seek2) (THIS_ UINT32 offset, INT32 fromWhere, IHXFileObject* pFileObject);
STDMETHOD(Close2) (THIS_ IHXFileObject* pFileObject);
STDMETHOD(GetLastError2) ( THIS_ IHXFileObject* pFileObject);
virtual UINT32 Read2(THIS_ IHXBuffer* pBuffer, IHXFileObject* pFileObject);
virtual UINT32 Write2(THIS_ void *, ULONG32 size, ULONG32 count, IHXFileObject* pFileObject);
#ifdef HELIX_FEATURE_S60_PROGDOWN
public: //IHXDownloadEventObserver
UINT32 IsDownloadComplete (THIS);
UINT32 GetDownloadSize (THIS);
UINT32 GetUnderflowTimeoutInMillis(THIS);
STDMETHOD(SetDownloadComplete) (THIS_ UINT32 downloadComplete);
STDMETHOD(SetDownloadSize) (THIS_ UINT32 downloadSize);
STDMETHOD(SetUnderflowTimeoutInMillis)(THIS_ UINT32 timeout);
#endif
protected:
HX_RESULT Initialize();
private: //probihit
CAsynchronousMultiReader();
protected:
CReadingScheduler* m_pReadingScheduler;
CMMFClip* m_pCMMfClip;
HXBOOL m_bIsInitialized;
ULONG32 m_ulRefCount;
#ifdef HELIX_FEATURE_S60_PROGDOWN
UINT32 m_ulDownloadComplete;
UINT32 m_ulDownloadSize;
UINT32 m_ulUnderflowTimeoutInMillis;
#endif
};
#endif //_ASYNCHRONOUSMULTIREADER_H_
From jwei at helixcommunity.org Fri Dec 7 12:42:52 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 12:11:31 2007
Subject: [Common-cvs] fileio/platform/symbian asynchronousmultireader.cpp,
NONE, 1.1.2.1
Message-ID:
Update of /cvsroot/common/fileio/platform/symbian
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv20667
Added Files:
Tag: hxclient_2_1_0_cayennes
asynchronousmultireader.cpp
Log Message:
--- NEW FILE: asynchronousmultireader.cpp ---
/* ***** BEGIN LICENSE BLOCK *****
*
* Portions Copyright (c) 2007 RealNetworks, Inc. All Rights Reserved.
* Version: $Id: asynchronousmultireader.cpp,v 1.1.2.1 2007/12/07 20:42:23 jwei Exp $
*
* The contents of this file, and the files included with this file,
* are subject to the current version of the RealNetworks Public
* Source License (the "RPSL") available at
* http://www.helixcommunity.org/content/rpsl unless you have licensed
* the file under the current version of the RealNetworks Community
* Source License (the "RCSL") available at
* http://www.helixcommunity.org/content/rcsl, in which case the RCSL
* will apply. You may also obtain the license terms directly from
* RealNetworks. You may not use this file except in compliance with
* the RPSL or, if you have a valid RCSL with RealNetworks applicable
* to this file, the RCSL. Please see the applicable RPSL or RCSL for
* the rights, obligations and limitations governing use of the
* contents of the file.
*
[...1399 lines suppressed...]
if( m_pReadingScheduler )
{
retVal = m_pReadingScheduler->Initialize( m_pCMMfClip );
if( SUCCEEDED( retVal ) )
{
m_bIsInitialized = TRUE;
retVal = HXR_OK;
}
}
}
HXLOGL2( HXLOG_FILE, "CAsynchronousMultiReader::Initialize() 0x%x<-", retVal );
return retVal;
}
From jwei at helixcommunity.org Fri Dec 7 12:43:38 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 12:12:03 2007
Subject: [Common-cvs] fileio/platform/symbian asynchronousmultireader.cpp,
1.1, 1.2
Message-ID:
Update of /cvsroot/common/fileio/platform/symbian
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv22905
Added Files:
asynchronousmultireader.cpp
Log Message:
--- NEW FILE: asynchronousmultireader.cpp ---
/* ***** BEGIN LICENSE BLOCK *****
*
* Portions Copyright (c) 2007 RealNetworks, Inc. All Rights Reserved.
* Version: $Id: asynchronousmultireader.cpp,v 1.2 2007/12/07 20:43:36 jwei Exp $
*
* The contents of this file, and the files included with this file,
* are subject to the current version of the RealNetworks Public
* Source License (the "RPSL") available at
* http://www.helixcommunity.org/content/rpsl unless you have licensed
* the file under the current version of the RealNetworks Community
* Source License (the "RCSL") available at
* http://www.helixcommunity.org/content/rcsl, in which case the RCSL
* will apply. You may also obtain the license terms directly from
* RealNetworks. You may not use this file except in compliance with
* the RPSL or, if you have a valid RCSL with RealNetworks applicable
* to this file, the RCSL. Please see the applicable RPSL or RCSL for
* the rights, obligations and limitations governing use of the
* contents of the file.
*
[...1399 lines suppressed...]
if( m_pReadingScheduler )
{
retVal = m_pReadingScheduler->Initialize( m_pCMMfClip );
if( SUCCEEDED( retVal ) )
{
m_bIsInitialized = TRUE;
retVal = HXR_OK;
}
}
}
HXLOGL2( HXLOG_FILE, "CAsynchronousMultiReader::Initialize() 0x%x<-", retVal );
return retVal;
}
From jwei at helixcommunity.org Fri Dec 7 12:49:25 2007
From: jwei at helixcommunity.org (jwei@helixcommunity.org)
Date: Fri Dec 7 12:17:53 2007
Subject: [Common-cvs] fileio/pub/platform/symbian asynchronousmultireader.h,
1.1, 1.2
Message-ID:
Update of /cvsroot/common/fileio/pub/platform/symbian
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv28498
Added Files:
asynchronousmultireader.h
Log Message:
--- NEW FILE: asynchronousmultireader.h ---
/* ***** BEGIN LICENSE BLOCK *****
*
* Portions Copyright (c) 2007 RealNetworks, Inc. All Rights Reserved.
*
* Version: $Id: asynchronousmultireader.h,v 1.2 2007/12/07 20:49:21 jwei Exp $
* The contents of this file, and the files included with this file,
* are subject to the current version of the RealNetworks Public
* Source License (the "RPSL") available at
* http://www.helixcommunity.org/content/rpsl unless you have licensed
* the file under the current version of the RealNetworks Community
* Source License (the "RCSL") available at
* http://www.helixcommunity.org/content/rcsl, in which case the RCSL
* will apply. You may also obtain the license terms directly from
* RealNetworks. You may not use this file except in compliance with
* the RPSL or, if you have a valid RCSL with RealNetworks applicable
* to this file, the RCSL. Please see the applicable RPSL or RCSL for
* the rights, obligations and limitations governing use of the
* contents of the file.
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License Version 2 or later (the
* "GPL") in which case the provisions of the GPL are applicable
* instead of those above. If you wish to allow use of your version of
* this file only under the terms of the GPL, and not to allow others
* to use your version of this file under the terms of either the RPSL
* or RCSL, indicate your decision by deleting the provisions above
* and replace them with the notice and other provisions required by
* the GPL. If you do not delete the provisions above, a recipient may
* use your version of this file under the terms of any one of the
* RPSL, the RCSL or the GPL.
*
* This file is part of the Helix DNA Technology. RealNetworks is the
* developer of the Original Code and owns the copyrights in the
* portions it created.
*
* This file, and the files included with this file, is distributed
* and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
* KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
* ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
* ENJOYMENT OR NON-INFRINGEMENT.
*
* Technology Compatibility Kit Test Suite(s) Location:
* http://www.helixcommunity.org/content/tck
*
* Contributor(s): John Wei
*
* ***** END LICENSE BLOCK ***** */
#ifndef _ASYNCHRONOUSMULTIREADER_H_
#define _ASYNCHRONOUSMULTIREADER_H_
#include //CMMFClip
#include //MDataSink
#include //MAsyncEventHandler
#include "hxcom.h" //STDMETHODIMP
#include "hxfiles.h" //IHXFileObject
#include "ihxmmfdatasource.h" //IHXMMFDataSource
#include "hxtlogutil.h" //HXLOG
#include "hlxclib/sys/stat.h" //struct stat
#include //KMMFErrorCategoryControllerGeneralError
#ifdef HELIX_FEATURE_S60_PROGDOWN
#include "ihxdownloadeventobserver.h" //IHXDownloadEventObserver
#endif
#include "ihxpckts.h" //IHXBuffer
class CReadingScheduler;
class CAsynchronousReader;
/*******************************************************************************
* CReaderCommandBase
********************************************************************************/
class CReaderCommandBase
{
public:
CReaderCommandBase( IHXFileObject* pFileObject, HXBOOL bIsSynchronousCommand );
virtual ~CReaderCommandBase();
public:
virtual HX_RESULT Execute( CAsynchronousReader* pReader ) = 0;
HXBOOL IsSynchronousCommand() const;
void SetSynchronousCommandState( HXBOOL aIsSynchronousCommand );
public: //ring buffer
CReaderCommandBase* GetNextCommand() const;
CReaderCommandBase* GetPreviousCommand() const;
void SetNextCommand( CReaderCommandBase* pCommand );
void SetPreviousCommand( CReaderCommandBase* pCommand );
protected:
IHXFileObject* m_pFileObject;
HXBOOL m_bIsSynchronousCommand;
CReaderCommandBase* m_pNextCommand;
CReaderCommandBase* m_pPreviousCommand;
};
/*******************************************************************************
* CReaderCommandOpen
********************************************************************************/
class CReaderCommandOpen : public CReaderCommandBase
{
public:
CReaderCommandOpen( IHXRequest *pRequest, const char *mode,
IHXMMFDataSourceObserver* pObserver, IHXFileObject* pFileObject );
~CReaderCommandOpen();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
private:
IHXRequest* m_pRequest;
const char* m_pMode;
IHXMMFDataSourceObserver* m_pObserver;
};
/*******************************************************************************
* CReaderCommandSeek
********************************************************************************/
class CReaderCommandSeek : public CReaderCommandBase
{
public:
CReaderCommandSeek( UINT32 offset, INT32 fromWhere, IHXFileObject* pFileObject );
~CReaderCommandSeek();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
private:
UINT32 m_uOffset;
INT32 m_iFromWhere;
};
/*******************************************************************************
* CReaderCommandStat
********************************************************************************/
class CReaderCommandStat : public CReaderCommandBase
{
public:
CReaderCommandStat( struct stat *buf );
~CReaderCommandStat();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
private:
struct stat* m_pBuf;
};
/*******************************************************************************
* CReaderCommandClose
********************************************************************************/
class CReaderCommandClose : public CReaderCommandBase
{
public:
CReaderCommandClose( IHXFileObject* pFileObject );
~CReaderCommandClose();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
};
/*******************************************************************************
* CReaderCommandRead
********************************************************************************/
class CReaderCommandRead : public CReaderCommandBase
{
public:
CReaderCommandRead( IHXBuffer* pBuffer, IHXFileObject* pFileObject );
~CReaderCommandRead();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
private:
IHXBuffer* m_pBuffer;
};
/*******************************************************************************
* CReaderCommandGetSize
********************************************************************************/
class CReaderCommandGetSize : public CReaderCommandBase
{
public:
CReaderCommandGetSize( UINT32& ulSize );
~CReaderCommandGetSize();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
private:
UINT32& m_ulSize;
};
/*******************************************************************************
* CReaderCommandGetLastError
********************************************************************************/
class CReaderCommandGetLastError : public CReaderCommandBase
{
public:
CReaderCommandGetLastError( IHXFileObject* pFileObject );
~CReaderCommandGetLastError();
public:
HX_RESULT Execute( CAsynchronousReader* pReader );
};
/*******************************************************************************
* CReaderCommandManager
********************************************************************************/
class CReaderCommandManager
{
public: //(de)constructor
CReaderCommandManager();
virtual ~CReaderCommandManager();
public:
HX_RESULT EnqueueCommand( CReaderCommandBase* m_pCommand );
CReaderCommandBase* RetrieveCommand();
UINT32 GetNumberOfCommands() const;
protected:
CReaderCommandBase* m_pCommandHead;
TUint m_ulNumberOfCommand;
};
/*******************************************************************************
* CSingleReaderState
********************************************************************************/
class CSingleReaderState
{
public:
CSingleReaderState( IHXFileObject* pFileObject );
virtual ~CSingleReaderState();
public:
void SetPosition( ULONG32 ulPosition );
ULONG32 GetPosition() const;
IHXFileObject* GetSupportedFileObject() const;
void SetDataSourceObserver( IHXMMFDataSourceObserver* pObserver );
IHXMMFDataSourceObserver* GetDataSourceObserver() const;
void ResetBuffer( CMMFPtrBuffer* pBuffer );
CMMFPtrBuffer* GetBuffer() const;
void SetLastError( HX_RESULT ulLastError );
HX_RESULT GetLastError();
public: //ring buffer
CSingleReaderState* GetNextReaderState() const;
CSingleReaderState* GetPreviousReaderState() const;
void SetNextReaderState( CSingleReaderState* pReaderState );
void SetPreviousReaderState( CSingleReaderState* pReaderState );
private:
IHXFileObject* m_pSupportedFileObject;
IHXMMFDataSourceObserver* m_pDataSourceObserver;
CSingleReaderState* m_pNextReaderState;
CSingleReaderState* m_pPreviousReaderState;
ULONG32 m_ulPosition; // current offset for the data
HX_RESULT m_ulLastError;
CMMFPtrBuffer* m_pBuffer;
};
/*******************************************************************************
* CAsynchronousReader
********************************************************************************/
class CAsynchronousReader
: public IHXMMFDataSource,
public MAsyncEventHandler,
public MDataSink
{
public: //(de)constructor
CAsynchronousReader( CReadingScheduler* pReadingScheduler, CMMFClip *pImpl );
virtual ~CAsynchronousReader();
public: //IUnknown
STDMETHOD(QueryInterface) ( THIS_ REFIID riid, void** ppvObj );
STDMETHOD_(ULONG32,AddRef) ( THIS);
STDMETHOD_(ULONG32,Release) ( THIS);
public: //IHXMMFDataSource
STDMETHOD(Open) ( THIS_ IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver );
STDMETHOD(Seek) ( THIS_ UINT32 offset, INT32 fromWhere );
STDMETHOD(Stat) ( THIS_ struct stat *buf );
STDMETHOD(GetStringAttribute)( THIS_ UINT32 ulAttibute, REF(IHXBuffer*) pBuffer);
STDMETHOD(GetAttribute)( THIS_ INT32 ulAttribute, INT32 &ulValue );
STDMETHOD(Close) ( THIS_ );
virtual UINT32 Read(THIS_ void *, ULONG32 size, ULONG32 count);
virtual UINT32 Write(THIS_ void *, ULONG32 size, ULONG32 count);
STDMETHOD(GetSize) (THIS_ UINT32 &ulSize);
STDMETHOD(GetLastError) ( THIS_ );
HXBOOL AsyncReadSupported( THIS_ );
STDMETHOD(Open2) (THIS_ IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver, IHXFileObject* pFileObject);
STDMETHOD(Seek2) (THIS_ UINT32 offset, INT32 fromWhere, IHXFileObject* pFileObject);
STDMETHOD(Close2) (THIS_ IHXFileObject* pFileObject);
STDMETHOD(GetLastError2) ( THIS_ IHXFileObject* pFileObject);
virtual UINT32 Read2(THIS_ IHXBuffer* pBuffer, IHXFileObject* pFileObject);
virtual UINT32 Write2(THIS_ void *, ULONG32 size, ULONG32 count, IHXFileObject* pFileObject);
public: //MDataSink
TFourCC SinkDataTypeCode( TMediaId aMediaId );
void EmptyBufferL( CMMFBuffer* aBuffer, MDataSource* aSupplier, TMediaId aMediaId );
TBool CanCreateSinkBuffer();
CMMFBuffer* CreateSinkBufferL( TMediaId aMediaId, TBool& aReference );
void ConstructSinkL( const TDesC8& aInitData );
void BufferFilledL ( CMMFBuffer* aBuffer );
public: //MAsyncEventHandler
TInt SendEventToClient( const TMMFEvent &aEvent );
public:
HX_RESULT Initialize();
HXBOOL IsInitialized() const;
protected:
HX_RESULT AddReaderState( IHXFileObject* pFileObject );
HX_RESULT RemoveReaderState( IHXFileObject* pFileObject );
HXBOOL IsReaderStateAvailable( IHXFileObject* pFileObject ) const;
CSingleReaderState* GetReaderState( IHXFileObject* pFileObject ) const;
CSingleReaderState* GetCurrentReaderState() const;
HX_RESULT SetCurrentReaderState( CSingleReaderState* pReaderState );
void ReadBufferL( CMMFBuffer* aBuffer, TInt aPosition, MDataSink* aConsumer ); //asychronous call
protected:
CReadingScheduler* m_pReadingScheduler;
CSingleReaderState* m_pReaderStateHead;
CSingleReaderState* m_pCurrentReaderState;
UINT32 m_ulNumberOfReader;
CMMFClip* m_pImpl; // actual data source implementation
HXBOOL m_bIsInitialized;
ULONG32 m_ulRefCount;
IHXBuffer* m_pReadingBuffer;
};
/*******************************************************************************
* CReadingScheduler
********************************************************************************/
class CReadingScheduler
{
public: //(de)constructor
CReadingScheduler();
virtual ~CReadingScheduler();
public:
HX_RESULT Initialize( CMMFClip* pCMMfClip );
void NotifyReaderManagerIdle( HXBOOL bReaderManagerIsIdle );
HX_RESULT ProcessCommand( CReaderCommandBase* pCommand );
private:
CAsynchronousReader* m_pReader;
CReaderCommandManager* m_pCommandManager;
HXBOOL m_bReaderIdle;
};
/*******************************************************************************
* CAsynchronousMultiReader
********************************************************************************/
class CAsynchronousMultiReader
: public IHXMMFDataSource
#ifdef HELIX_FEATURE_S60_PROGDOWN
,public IHXDownloadEventObserver
#endif
{
public: //(de)constructor
CAsynchronousMultiReader( CMMFClip* pCMMfClip );
virtual ~CAsynchronousMultiReader();
public: //IUnknown
STDMETHOD(QueryInterface) ( THIS_ REFIID riid, void** ppvObj );
STDMETHOD_(ULONG32,AddRef) ( THIS);
STDMETHOD_(ULONG32,Release) ( THIS);
public: //IHXMMFDataSource
STDMETHOD(Open) ( THIS_ IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver );
STDMETHOD(Seek) ( THIS_ UINT32 offset, INT32 fromWhere );
STDMETHOD(Stat) ( THIS_ struct stat *buf );
STDMETHOD(GetStringAttribute)( THIS_ UINT32 ulAttibute, REF(IHXBuffer*) pBuffer);
STDMETHOD(GetAttribute)( THIS_ INT32 ulAttribute, INT32 &ulValue );
STDMETHOD(Close) ( THIS_ );
virtual UINT32 Read(THIS_ void *, ULONG32 size, ULONG32 count);
virtual UINT32 Write(THIS_ void *, ULONG32 size, ULONG32 count);
STDMETHOD(GetSize) (THIS_ UINT32 &ulSize);
STDMETHOD(GetLastError) ( THIS_ );
HXBOOL AsyncReadSupported( THIS_ );
STDMETHOD(Open2) (THIS_ IHXRequest *pRequest, const char *mode, IHXMMFDataSourceObserver* pObserver, IHXFileObject* pFileObject);
STDMETHOD(Seek2) (THIS_ UINT32 offset, INT32 fromWhere, IHXFileObject* pFileObject);
STDMETHOD(Close2) (THIS_ IHXFileObject* pFileObject);
STDMETHOD(GetLastError2) ( THIS_ IHXFileObject* pFileObject);
virtual UINT32 Read2(THIS_ IHXBuffer* pBuffer, IHXFileObject* pFileObject);
virtual UINT32 Write2(THIS_ void *, ULONG32 size, ULONG32 count, IHXFileObject* pFileObject);
#ifdef HELIX_FEATURE_S60_PROGDOWN
public: //IHXDownloadEventObserver
UINT32 IsDownloadComplete (THIS);
UINT32 GetDownloadSize (THIS);
UINT32 GetUnderflowTimeoutInMillis(THIS);
STDMETHOD(SetDownloadComplete) (THIS_ UINT32 downloadComplete);
STDMETHOD(SetDownloadSize) (THIS_ UINT32 downloadSize);
STDMETHOD(SetUnderflowTimeoutInMillis)(THIS_ UINT32 timeout);
#endif
protected:
HX_RESULT Initialize();
private: //probihit
CAsynchronousMultiReader();
protected:
CReadingScheduler* m_pReadingScheduler;
CMMFClip* m_pCMMfClip;
HXBOOL m_bIsInitialized;
ULONG32 m_ulRefCount;
#ifdef HELIX_FEATURE_S60_PROGDOWN
UINT32 m_ulDownloadComplete;
UINT32 m_ulDownloadSize;
UINT32 m_ulUnderflowTimeoutInMillis;
#endif
};
#endif //_ASYNCHRONOUSMULTIREADER_H_
From dyek at helixcommunity.org Mon Dec 10 14:51:28 2007
From: dyek at helixcommunity.org (dyek@helixcommunity.org)
Date: Mon Dec 10 14:19:07 2007
Subject: [Common-cvs] include ihxtlogsystem.h,1.11.2.8,1.11.2.9
Message-ID:
Update of /cvsroot/common/include
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv2948/common/include
Modified Files:
Tag: hxclient_1_5_0_cayenne
ihxtlogsystem.h
Log Message:
Added new Unified Logging functional area 4ccs for use in the player project, for hxclientkit and Superbuffer modules.
New 4cc Added:
CNKT
Used for general logging in hxclientkit.
RECS
Used for general logging in Superbuffer (hxrecordengine) module.
Refer to the following URL for more information.
http://lists.helixcommunity.org/pipermail/common-dev/2007-December/004263.html
Index: ihxtlogsystem.h
===================================================================
RCS file: /cvsroot/common/include/ihxtlogsystem.h,v
retrieving revision 1.11.2.8
retrieving revision 1.11.2.9
diff -u -d -r1.11.2.8 -r1.11.2.9
--- ihxtlogsystem.h 5 Dec 2007 20:27:21 -0000 1.11.2.8
+++ ihxtlogsystem.h 10 Dec 2007 22:51:24 -0000 1.11.2.9
@@ -147,6 +147,7 @@
HXLOG_AVIX = HX_MAKE4CC('A','V','I','X'), // AVI
HXLOG_BAND = HX_MAKE4CC('B','A','N','D'), // Bandwidth manager
HXLOG_BUFF = HX_MAKE4CC('B','U','F','F'), // Buffer Control
+ HXLOG_CNKT = HX_MAKE4CC('C','N','K','T'), // hxclientkit
HXLOG_CORE = HX_MAKE4CC('C','O','R','E'), // Core load time
HXLOG_EVEN = HX_MAKE4CC('E','V','E','N'), // RealEvents
HXLOG_FSRC = HX_MAKE4CC('F','S','R','C'), // File source
@@ -161,6 +162,7 @@
HXLOG_PNAX = HX_MAKE4CC('P','N','A','X'), // PNA protocol
HXLOG_PROT = HX_MAKE4CC('P','R','O','T'), // Protocol generic
HXLOG_RECO = HX_MAKE4CC('R','E','C','O'), // Reconnect
+ HXLOG_RECS = HX_MAKE4CC('R','E','C','S'), // Record Service And Superbuffer
HXLOG_RTSP = HX_MAKE4CC('R','T','S','P'), // RTSP protocol
HXLOG_SITE = HX_MAKE4CC('S','I','T','E'), // Site
HXLOG_SMIL = HX_MAKE4CC('S','M','I','L'), // SMIL
From dyek at helixcommunity.org Mon Dec 10 16:02:15 2007
From: dyek at helixcommunity.org (dyek@helixcommunity.org)
Date: Mon Dec 10 15:29:52 2007
Subject: [Common-cvs] include ihxtlogsystem.h,1.38,1.39
Message-ID:
Update of /cvsroot/common/include
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv4943
Modified Files:
ihxtlogsystem.h
Log Message:
Merging from 150Cay (1.11.2.9).
Added new Unified Logging functional area 4ccs for use in the player project, for hxclientkit and Superbuffer modules.
New 4cc Added:
CNKT
Used for general logging in hxclientkit.
RECS
Used for general logging in Superbuffer (hxrecordengine) module.
Refer to the following URL for more information.
http://lists.helixcommunity.org/pipermail/common-dev/2007-December/004263.html
Index: ihxtlogsystem.h
===================================================================
RCS file: /cvsroot/common/include/ihxtlogsystem.h,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -d -r1.38 -r1.39
--- ihxtlogsystem.h 6 Jul 2007 20:43:42 -0000 1.38
+++ ihxtlogsystem.h 11 Dec 2007 00:02:12 -0000 1.39
@@ -150,6 +150,7 @@
HXLOG_AVIX = HX_MAKE4CC('A','V','I','X'), // AVI
HXLOG_BAND = HX_MAKE4CC('B','A','N','D'), // Bandwidth manager
HXLOG_BUFF = HX_MAKE4CC('B','U','F','F'), // Buffer Control
+ HXLOG_CNKT = HX_MAKE4CC('C','N','K','T'), // hxclientkit
HXLOG_CORE = HX_MAKE4CC('C','O','R','E'), // Core load time
HXLOG_EVEN = HX_MAKE4CC('E','V','E','N'), // RealEvents
HXLOG_FSRC = HX_MAKE4CC('F','S','R','C'), // File source
@@ -164,6 +165,7 @@
HXLOG_PNAX = HX_MAKE4CC('P','N','A','X'), // PNA protocol
HXLOG_PROT = HX_MAKE4CC('P','R','O','T'), // Protocol generic
HXLOG_RECO = HX_MAKE4CC('R','E','C','O'), // Reconnect
+ HXLOG_RECS = HX_MAKE4CC('R','E','C','S'), // Record Service And Superbuffer
HXLOG_RTSP = HX_MAKE4CC('R','T','S','P'), // RTSP protocol
HXLOG_SITE = HX_MAKE4CC('S','I','T','E'), // Site
HXLOG_SMIL = HX_MAKE4CC('S','M','I','L'), // SMIL
From dyek at helixcommunity.org Mon Dec 10 16:03:35 2007
From: dyek at helixcommunity.org (dyek@helixcommunity.org)
Date: Mon Dec 10 15:31:13 2007
Subject: [Common-cvs] include ihxtlogsystem.h,1.38,1.38.2.1
Message-ID:
Update of /cvsroot/common/include
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv6271
Modified Files:
Tag: hxclient_3_1_0_atlas
ihxtlogsystem.h
Log Message:
Merging from 150Cay (1.11.2.9).
Added new Unified Logging functional area 4ccs for use in the player project, for hxclientkit and Superbuffer modules.
New 4cc Added:
CNKT
Used for general logging in hxclientkit.
RECS
Used for general logging in Superbuffer (hxrecordengine) module.
Refer to the following URL for more information.
http://lists.helixcommunity.org/pipermail/common-dev/2007-December/004263.html
Index: ihxtlogsystem.h
===================================================================
RCS file: /cvsroot/common/include/ihxtlogsystem.h,v
retrieving revision 1.38
retrieving revision 1.38.2.1
diff -u -d -r1.38 -r1.38.2.1
--- ihxtlogsystem.h 6 Jul 2007 20:43:42 -0000 1.38
+++ ihxtlogsystem.h 11 Dec 2007 00:03:33 -0000 1.38.2.1
@@ -150,6 +150,7 @@
HXLOG_AVIX = HX_MAKE4CC('A','V','I','X'), // AVI
HXLOG_BAND = HX_MAKE4CC('B','A','N','D'), // Bandwidth manager
HXLOG_BUFF = HX_MAKE4CC('B','U','F','F'), // Buffer Control
+ HXLOG_CNKT = HX_MAKE4CC('C','N','K','T'), // hxclientkit
HXLOG_CORE = HX_MAKE4CC('C','O','R','E'), // Core load time
HXLOG_EVEN = HX_MAKE4CC('E','V','E','N'), // RealEvents
HXLOG_FSRC = HX_MAKE4CC('F','S','R','C'), // File source
@@ -164,6 +165,7 @@
HXLOG_PNAX = HX_MAKE4CC('P','N','A','X'), // PNA protocol
HXLOG_PROT = HX_MAKE4CC('P','R','O','T'), // Protocol generic
HXLOG_RECO = HX_MAKE4CC('R','E','C','O'), // Reconnect
+ HXLOG_RECS = HX_MAKE4CC('R','E','C','S'), // Record Service And Superbuffer
HXLOG_RTSP = HX_MAKE4CC('R','T','S','P'), // RTSP protocol
HXLOG_SITE = HX_MAKE4CC('S','I','T','E'), // Site
HXLOG_SMIL = HX_MAKE4CC('S','M','I','L'), // SMIL
From otk at helixcommunity.org Tue Dec 11 15:05:22 2007
From: otk at helixcommunity.org (Melissa)
Date: Tue Dec 11 14:32:08 2007
Subject: [Common-cvs] new 2007 watches models
Message-ID:
Hi, Tania, CrWUquCGsFBf
http://www.zjchemical.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.helixcommunity.org/pipermail/common-cvs/attachments/20071212/bf3d5a13/attachment-0001.html
From ping at helixcommunity.org Tue Dec 11 15:55:55 2007
From: ping at helixcommunity.org (ping@helixcommunity.org)
Date: Tue Dec 11 15:23:17 2007
Subject: [Common-cvs] netio/pub/platform/posix nettypes.h,1.32,1.32.2.1
Message-ID:
Update of /cvsroot/common/netio/pub/platform/posix
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv15019/pub/platform/posix
Modified Files:
Tag: hxclient_3_1_0_atlas
nettypes.h
Log Message:
Fixed re-definition in VC8 on Vista using MS Windows SDK
Index: nettypes.h
===================================================================
RCS file: /cvsroot/common/netio/pub/platform/posix/nettypes.h,v
retrieving revision 1.32
retrieving revision 1.32.2.1
diff -u -d -r1.32 -r1.32.2.1
--- nettypes.h 6 Jul 2007 20:43:59 -0000 1.32
+++ nettypes.h 11 Dec 2007 23:55:53 -0000 1.32.2.1
@@ -338,8 +338,12 @@
int inet_aton(const char* cp, struct in_addr* inp);
+// inet_ntop and inet_pton are defined in MS Windows SDK for Vista
+// Microsoft SDKs\Windows\v6.0\Include\ws2tcpip.h
+#if (NTDDI_VERSION < NTDDI_LONGHORN)
const char* inet_ntop(int af, const void* src, char* dst, socklen_t len);
int inet_pton(int af, const char* src, void* dst);
+#endif
#endif /* defined(_WIN32) */
// Some platforms have strange and/or outdated headers.
From ping at helixcommunity.org Tue Dec 11 15:58:30 2007
From: ping at helixcommunity.org (ping@helixcommunity.org)
Date: Tue Dec 11 15:25:52 2007
Subject: [Common-cvs] netio/pub/platform/posix nettypes.h,1.32,1.33
Message-ID:
Update of /cvsroot/common/netio/pub/platform/posix
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv17058/pub/platform/posix
Modified Files:
nettypes.h
Log Message:
Fixed re-definition in VC8 on Vista with MS Windows SDK
Index: nettypes.h
===================================================================
RCS file: /cvsroot/common/netio/pub/platform/posix/nettypes.h,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -d -r1.32 -r1.33
--- nettypes.h 6 Jul 2007 20:43:59 -0000 1.32
+++ nettypes.h 11 Dec 2007 23:58:27 -0000 1.33
@@ -338,8 +338,12 @@
int inet_aton(const char* cp, struct in_addr* inp);
+// inet_ntop and inet_pton are defined in MS Windows SDK for Vista
+// Microsoft SDKs\Windows\v6.0\Include\ws2tcpip.h
+#if (NTDDI_VERSION < NTDDI_LONGHORN)
const char* inet_ntop(int af, const void* src, char* dst, socklen_t len);
int inet_pton(int af, const char* src, void* dst);
+#endif
#endif /* defined(_WIN32) */
// Some platforms have strange and/or outdated headers.
From ping at helixcommunity.org Wed Dec 12 10:34:06 2007
From: ping at helixcommunity.org (ping@helixcommunity.org)
Date: Wed Dec 12 10:01:16 2007
Subject: [Common-cvs] fileio/platform/win cwinfile.cpp,1.9,1.9.2.1
Message-ID:
Update of /cvsroot/common/fileio/platform/win
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv13476
Modified Files:
Tag: hxclient_3_1_0_atlas
cwinfile.cpp
Log Message:
Reset mFD to prevent the same file handle from being closed twice.
Index: cwinfile.cpp
===================================================================
RCS file: /cvsroot/common/fileio/platform/win/cwinfile.cpp,v
retrieving revision 1.9
retrieving revision 1.9.2.1
diff -u -d -r1.9 -r1.9.2.1
--- cwinfile.cpp 6 Jul 2007 20:35:17 -0000 1.9
+++ cwinfile.cpp 12 Dec 2007 18:34:03 -0000 1.9.2.1
@@ -227,18 +227,18 @@
HX_RESULT CWinFile::Close(void)
{
- // close previous file if necessary
- if ( mFD >= 0 )
- {
- mLastError = HXR_OK;
- if ( close( mFD ) < 0 )
- {
- mLastError = HXR_INVALID_FILE;
- return HXR_INVALID_FILE;
- }
- return HXR_OK;
- }
- return HXR_INVALID_FILE;
+ // close previous file if necessary
+ if ( mFD >= 0 )
+ {
+ mLastError = HXR_OK;
+ if ( close( mFD ) < 0 )
+ {
+ mLastError = HXR_INVALID_FILE;
+ }
+ mFD = HX_FILE_NOT_OPEN;
+ return mLastError;
+ }
+ return HXR_INVALID_FILE;
}
From ping at helixcommunity.org Wed Dec 12 10:44:38 2007
From: ping at helixcommunity.org (ping@helixcommunity.org)
Date: Wed Dec 12 10:11:49 2007
Subject: [Common-cvs] fileio/platform/win cwinfile.cpp,1.9,1.10
Message-ID:
Update of /cvsroot/common/fileio/platform/win
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv22884/platform/win
Modified Files:
cwinfile.cpp
Log Message:
Reset mFD to prevent the same file handle from being closed twice.
Index: cwinfile.cpp
===================================================================
RCS file: /cvsroot/common/fileio/platform/win/cwinfile.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- cwinfile.cpp 6 Jul 2007 20:35:17 -0000 1.9
+++ cwinfile.cpp 12 Dec 2007 18:44:34 -0000 1.10
@@ -227,18 +227,18 @@
HX_RESULT CWinFile::Close(void)
{
- // close previous file if necessary
- if ( mFD >= 0 )
- {
- mLastError = HXR_OK;
- if ( close( mFD ) < 0 )
- {
- mLastError = HXR_INVALID_FILE;
- return HXR_INVALID_FILE;
- }
- return HXR_OK;
- }
- return HXR_INVALID_FILE;
+ // close previous file if necessary
+ if ( mFD >= 0 )
+ {
+ mLastError = HXR_OK;
+ if ( close( mFD ) < 0 )
+ {
+ mLastError = HXR_INVALID_FILE;
+ }
+ mFD = HX_FILE_NOT_OPEN;
+ return mLastError;
+ }
+ return HXR_INVALID_FILE;
}
From admin at helixcommunity.org Thu Dec 13 11:45:44 2007
From: admin at helixcommunity.org (admin@helixcommunity.org)
Date: Thu Dec 13 11:12:39 2007
Subject: [Common-cvs] CVSROOT loginfo,1.9,1.10
Message-ID:
Update of /cvsroot/common/CVSROOT
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv4956
Modified Files:
loginfo
Log Message:
Rollbacked chgrp -R CVSROOT in loginfo
Index: loginfo
===================================================================
RCS file: /cvsroot/common/CVSROOT/loginfo,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- loginfo 31 Oct 2007 21:02:05 -0000 1.9
+++ loginfo 13 Dec 2007 19:45:42 -0000 1.10
@@ -40,4 +40,3 @@
ALL chgrp helix $CVSROOT/`echo %s | sed 's/^ //g' | sed 's/ /\//g'`,v 2> /dev/null
ALL chgrp helix $CVSROOT/`echo %s | sed 's/ - New directory//g' | sed 's/^ //g' | sed 's/ /\//g'` 2> /dev/null
-ALL chgrp -R helix $CVSROOT/CVSROOT
From cdunn at helixcommunity.org Thu Dec 13 13:00:50 2007
From: cdunn at helixcommunity.org (cdunn@helixcommunity.org)
Date: Thu Dec 13 12:27:44 2007
Subject: [Common-cvs] include hxiids.h, 1.132.2.4, 1.132.2.5 ihxcookies.h,
1.4, 1.4.2.1
Message-ID:
Update of /cvsroot/common/include
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv10606
Modified Files:
Tag: hxclient_3_1_0_atlas
hxiids.h ihxcookies.h
Log Message:
Add IHXCookies3::SyncRMCookies
Index: ihxcookies.h
===================================================================
RCS file: /cvsroot/common/include/ihxcookies.h,v
retrieving revision 1.4
retrieving revision 1.4.2.1
diff -u -d -r1.4 -r1.4.2.1
--- ihxcookies.h 6 Jul 2007 20:43:42 -0000 1.4
+++ ihxcookies.h 13 Dec 2007 21:00:43 -0000 1.4.2.1
@@ -172,4 +172,43 @@
REF(IHXBuffer*) pCookies) PURE;
};
+/****************************************************************************
+ *
+ * Interface:
+ *
+ * IHXCookies3
+ *
+ * Purpose:
+ *
+ * Interface the method SyncRMCookies from HXCookies
+ *
+ * IID_IHXCookies3
+ *
+ * {CBECD0D8-8F68-4f07-917C-B972E7FCF530}
+ *
+ */
+DEFINE_GUID(IID_IHXCookies3, 0xcbecd0d8, 0x8f68, 0x4f07, 0x91, 0x7c, 0xb9,
+ 0x72, 0xe7, 0xfc, 0xf5, 0x30);
+#undef INTERFACE
+#define INTERFACE IHXCookies3
+
+DECLARE_INTERFACE_(IHXCookies3, IUnknown)
+{
+ /*
+ * IUnknown methods
+ */
+ STDMETHOD(QueryInterface) (THIS_
+ REFIID riid,
+ void** ppvObj) PURE;
+
+ STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
+
+ STDMETHOD_(ULONG32,Release) (THIS) PURE;
+
+ /*
+ * IHXCookies3 methods
+ */
+ STDMETHOD(SyncRMCookies) (THIS_ HXBOOL bSave) PURE;
+};
+
#endif /* _IHXCOOKIES_H_ */
Index: hxiids.h
===================================================================
RCS file: /cvsroot/common/include/hxiids.h,v
retrieving revision 1.132.2.4
retrieving revision 1.132.2.5
diff -u -d -r1.132.2.4 -r1.132.2.5
--- hxiids.h 13 Dec 2007 18:50:15 -0000 1.132.2.4
+++ hxiids.h 13 Dec 2007 21:00:43 -0000 1.132.2.5
@@ -1498,13 +1498,16 @@
* Interfaces for Plugins:
* IHXCookies - Cookie database management APIs
* IHXCookiesHelper - Cookie output helper APIs
+ * IHXCookies3 - Interface for SyncRMCookies
*
* Interfaces:
* IID_IHXCookies: {00003200-0901-11d1-8B06-00A024406D59}
* IID_IHXCookiesHelper: {00003201-0901-11d1-8B06-00A024406D59}
+ * IID_IHXCookies3: {CBECD0D8-8F68-4f07-917C-B972E7FCF530}
*/
-DEFINE_GUID_ENUM(IID_IHXCookies, 0x00003200, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
-DEFINE_GUID_ENUM(IID_IHXCookiesHelper, 0x00003201, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
+DEFINE_GUID_ENUM(IID_IHXCookies, 0x00003200, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
+DEFINE_GUID_ENUM(IID_IHXCookiesHelper, 0x00003201, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
+DEFINE_GUID_ENUM(IID_IHXCookies3, 0xcbecd0d8, 0x8f68, 0x4f07, 0x91, 0x7c, 0xb9, 0x72, 0xe7, 0xfc, 0xf5, 0x30)
/*
* File: addrpool.h
From cdunn at helixcommunity.org Thu Dec 13 13:01:38 2007
From: cdunn at helixcommunity.org (cdunn@helixcommunity.org)
Date: Thu Dec 13 12:28:31 2007
Subject: [Common-cvs] include hxiids.h,1.140,1.141 ihxcookies.h,1.4,1.5
Message-ID:
Update of /cvsroot/common/include
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv11790
Modified Files:
hxiids.h ihxcookies.h
Log Message:
Add IHXCookies3::SyncRMCookies
Index: ihxcookies.h
===================================================================
RCS file: /cvsroot/common/include/ihxcookies.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- ihxcookies.h 6 Jul 2007 20:43:42 -0000 1.4
+++ ihxcookies.h 13 Dec 2007 21:01:34 -0000 1.5
@@ -172,4 +172,43 @@
REF(IHXBuffer*) pCookies) PURE;
};
+/****************************************************************************
+ *
+ * Interface:
+ *
+ * IHXCookies3
+ *
+ * Purpose:
+ *
+ * Interface the method SyncRMCookies from HXCookies
+ *
+ * IID_IHXCookies3
+ *
+ * {CBECD0D8-8F68-4f07-917C-B972E7FCF530}
+ *
+ */
+DEFINE_GUID(IID_IHXCookies3, 0xcbecd0d8, 0x8f68, 0x4f07, 0x91, 0x7c, 0xb9,
+ 0x72, 0xe7, 0xfc, 0xf5, 0x30);
+#undef INTERFACE
+#define INTERFACE IHXCookies3
+
+DECLARE_INTERFACE_(IHXCookies3, IUnknown)
+{
+ /*
+ * IUnknown methods
+ */
+ STDMETHOD(QueryInterface) (THIS_
+ REFIID riid,
+ void** ppvObj) PURE;
+
+ STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
+
+ STDMETHOD_(ULONG32,Release) (THIS) PURE;
+
+ /*
+ * IHXCookies3 methods
+ */
+ STDMETHOD(SyncRMCookies) (THIS_ HXBOOL bSave) PURE;
+};
+
#endif /* _IHXCOOKIES_H_ */
Index: hxiids.h
===================================================================
RCS file: /cvsroot/common/include/hxiids.h,v
retrieving revision 1.140
retrieving revision 1.141
diff -u -d -r1.140 -r1.141
--- hxiids.h 13 Dec 2007 17:53:53 -0000 1.140
+++ hxiids.h 13 Dec 2007 21:01:34 -0000 1.141
@@ -1497,13 +1497,16 @@
* Interfaces for Plugins:
* IHXCookies - Cookie database management APIs
* IHXCookiesHelper - Cookie output helper APIs
+ * IHXCookies3 - Interface for SyncRMCookies
*
* Interfaces:
* IID_IHXCookies: {00003200-0901-11d1-8B06-00A024406D59}
* IID_IHXCookiesHelper: {00003201-0901-11d1-8B06-00A024406D59}
+ * IID_IHXCookies3: {CBECD0D8-8F68-4f07-917C-B972E7FCF530}
*/
-DEFINE_GUID_ENUM(IID_IHXCookies, 0x00003200, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
-DEFINE_GUID_ENUM(IID_IHXCookiesHelper, 0x00003201, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
+DEFINE_GUID_ENUM(IID_IHXCookies, 0x00003200, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
+DEFINE_GUID_ENUM(IID_IHXCookiesHelper, 0x00003201, 0x901, 0x11d1, 0x8b, 0x6, 0x0, 0xa0, 0x24, 0x40, 0x6d, 0x59)
+DEFINE_GUID_ENUM(IID_IHXCookies3, 0xcbecd0d8, 0x8f68, 0x4f07, 0x91, 0x7c, 0xb9, 0x72, 0xe7, 0xfc, 0xf5, 0x30)
/*
* File: addrpool.h
From cdunn at helixcommunity.org Thu Dec 13 13:09:31 2007
From: cdunn at helixcommunity.org (cdunn@helixcommunity.org)
Date: Thu Dec 13 12:36:26 2007
Subject: [Common-cvs] util cookies.cpp,1.39,1.39.2.1
Message-ID:
Update of /cvsroot/common/util
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv19877
Modified Files:
Tag: hxclient_3_1_0_atlas
cookies.cpp
Log Message:
Add IHXCookies3, moved SyncRMCookies to new interface.
Index: cookies.cpp
===================================================================
RCS file: /cvsroot/common/util/cookies.cpp,v
retrieving revision 1.39
retrieving revision 1.39.2.1
diff -u -d -r1.39 -r1.39.2.1
--- cookies.cpp 25 Jul 2007 07:29:48 -0000 1.39
+++ cookies.cpp 13 Dec 2007 21:09:28 -0000 1.39.2.1
@@ -180,7 +180,8 @@
{
{ GET_IIDHANDLE(IID_IUnknown), this },
{ GET_IIDHANDLE(IID_IHXCookies), (IHXCookies*) this },
- { GET_IIDHANDLE(IID_IHXCookies2), (IHXCookies2*) this }
+ { GET_IIDHANDLE(IID_IHXCookies2), (IHXCookies2*) this },
+ { GET_IIDHANDLE(IID_IHXCookies3), (IHXCookies3*) this }
};
if (QIFind(qiList, QILISTSIZE(qiList), riid, ppvObj) == HXR_OK)
@@ -2051,7 +2052,7 @@
return hr;
}
-HX_RESULT
+STDMETHODIMP
HXCookies::SyncRMCookies(HXBOOL bSave)
{
HX_RESULT hr = HXR_OK;
From cdunn at helixcommunity.org Thu Dec 13 13:09:32 2007
From: cdunn at helixcommunity.org (cdunn@helixcommunity.org)
Date: Thu Dec 13 12:36:26 2007
Subject: [Common-cvs] util/pub cookies.h,1.8,1.8.2.1
Message-ID:
Update of /cvsroot/common/util/pub
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv19877/pub
Modified Files:
Tag: hxclient_3_1_0_atlas
cookies.h
Log Message:
Add IHXCookies3, moved SyncRMCookies to new interface.
Index: cookies.h
===================================================================
RCS file: /cvsroot/common/util/pub/cookies.h,v
retrieving revision 1.8
retrieving revision 1.8.2.1
diff -u -d -r1.8 -r1.8.2.1
--- cookies.h 6 Jul 2007 20:39:23 -0000 1.8
+++ cookies.h 13 Dec 2007 21:09:29 -0000 1.8.2.1
@@ -88,7 +88,7 @@
HXBOOL bMemoryOnly; //wasn't read from disk, but arrived via SetCookies (usually from playing a stream)
};
-class HXCookies : public IHXCookies, public IHXCookies2
+class HXCookies : public IHXCookies, public IHXCookies2, public IHXCookies3
{
protected:
@@ -217,6 +217,13 @@
REF(IHXBuffer*) pCookies,
REF(IHXBuffer*) pPlayerCookies);
+ /************************************************************************
+ * Method:
+ * IHXCookies3::SyncRMCookies
+ * Purpose:
+ * Synchronize RM cookies
+ */
+ STDMETHOD(SyncRMCookies) (THIS_ HXBOOL bSave);
virtual HX_RESULT SecureCookies();
virtual HX_RESULT CheckCookies();
@@ -225,7 +232,6 @@
void Close(void);
void SetMemoryOnlyFlag(HXBOOL bMemoryOnly) { m_bMemoryOnly = bMemoryOnly; }
HXBOOL GetMemoryOnlyFlag() const { return m_bMemoryOnly; }
- HX_RESULT SyncRMCookies(HXBOOL bSave);
#ifdef _TEST
void DumpCookies();
#endif // _TEST
From cdunn at helixcommunity.org Thu Dec 13 13:14:03 2007
From: cdunn at helixcommunity.org (cdunn@helixcommunity.org)
Date: Thu Dec 13 12:40:57 2007
Subject: [Common-cvs] util cookies.cpp,1.39,1.40
Message-ID:
Update of /cvsroot/common/util
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv24285
Modified Files:
cookies.cpp
Log Message:
Add IHXCookies3, moved SyncRMCookies to an interface.
Index: cookies.cpp
===================================================================
RCS file: /cvsroot/common/util/cookies.cpp,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -d -r1.39 -r1.40
--- cookies.cpp 25 Jul 2007 07:29:48 -0000 1.39
+++ cookies.cpp 13 Dec 2007 21:14:01 -0000 1.40
@@ -180,7 +180,8 @@
{
{ GET_IIDHANDLE(IID_IUnknown), this },
{ GET_IIDHANDLE(IID_IHXCookies), (IHXCookies*) this },
- { GET_IIDHANDLE(IID_IHXCookies2), (IHXCookies2*) this }
+ { GET_IIDHANDLE(IID_IHXCookies2), (IHXCookies2*) this },
+ { GET_IIDHANDLE(IID_IHXCookies3), (IHXCookies3*) this }
};
if (QIFind(qiList, QILISTSIZE(qiList), riid, ppvObj) == HXR_OK)
@@ -2051,7 +2052,7 @@
return hr;
}
-HX_RESULT
+STDMETHODIMP
HXCookies::SyncRMCookies(HXBOOL bSave)
{
HX_RESULT hr = HXR_OK;
From cdunn at helixcommunity.org Thu Dec 13 13:14:04 2007
From: cdunn at helixcommunity.org (cdunn@helixcommunity.org)
Date: Thu Dec 13 12:40:57 2007
Subject: [Common-cvs] util/pub cookies.h,1.8,1.9
Message-ID:
Update of /cvsroot/common/util/pub
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv24285/pub
Modified Files:
cookies.h
Log Message:
Add IHXCookies3, moved SyncRMCookies to an interface.
Index: cookies.h
===================================================================
RCS file: /cvsroot/common/util/pub/cookies.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- cookies.h 6 Jul 2007 20:39:23 -0000 1.8
+++ cookies.h 13 Dec 2007 21:14:01 -0000 1.9
@@ -88,7 +88,7 @@
HXBOOL bMemoryOnly; //wasn't read from disk, but arrived via SetCookies (usually from playing a stream)
};
-class HXCookies : public IHXCookies, public IHXCookies2
+class HXCookies : public IHXCookies, public IHXCookies2, public IHXCookies3
{
protected:
@@ -217,6 +217,13 @@
REF(IHXBuffer*) pCookies,
REF(IHXBuffer*) pPlayerCookies);
+ /************************************************************************
+ * Method:
+ * IHXCookies3::SyncRMCookies
+ * Purpose:
+ * Synchronize RM cookies
+ */
+ STDMETHOD(SyncRMCookies) (THIS_ HXBOOL bSave);
virtual HX_RESULT SecureCookies();
virtual HX_RESULT CheckCookies();
@@ -225,7 +232,6 @@
void Close(void);
void SetMemoryOnlyFlag(HXBOOL bMemoryOnly) { m_bMemoryOnly = bMemoryOnly; }
HXBOOL GetMemoryOnlyFlag() const { return m_bMemoryOnly; }
- HX_RESULT SyncRMCookies(HXBOOL bSave);
#ifdef _TEST
void DumpCookies();
#endif // _TEST
From kliu at helixcommunity.org Fri Dec 14 13:49:58 2007
From: kliu at helixcommunity.org (kliu@helixcommunity.org)
Date: Fri Dec 14 13:16:37 2007
Subject: [Common-cvs] CVSROOT avail,1.151,1.152
Message-ID:
Update of /cvsroot/common/CVSROOT
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv6416/CVSROOT
Modified Files:
avail
Log Message:
granting andrew_kv write access for the common project
Index: avail
===================================================================
RCS file: /cvsroot/common/CVSROOT/avail,v
retrieving revision 1.151
retrieving revision 1.152
diff -u -d -r1.151 -r1.152
--- avail 19 Nov 2007 21:55:31 -0000 1.151
+++ avail 14 Dec 2007 21:49:55 -0000 1.152
@@ -1,4 +1,5 @@
unavail
+avail|andrew_kv
avail|jeyarengasamy
avail|sachinkundu
avail|vkathuria
From lijunreal at helixcommunity.org Fri Dec 14 23:02:02 2007
From: lijunreal at helixcommunity.org (lijunreal@helixcommunity.org)
Date: Fri Dec 14 22:28:35 2007
Subject: [Common-cvs] runtime hlxosstr.cpp,1.25,1.25.2.1
Message-ID:
Update of /cvsroot/common/runtime
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv20809
Modified Files:
Tag: hxclient_3_1_0_atlas
hlxosstr.cpp
Log Message:
Provide Chinese characters support on wm50 helixplayer. It may also take effect to other multi-byte characters, but only Chinese characters is tested.
Index: hlxosstr.cpp
===================================================================
RCS file: /cvsroot/common/runtime/hlxosstr.cpp,v
retrieving revision 1.25
retrieving revision 1.25.2.1
diff -u -d -r1.25 -r1.25.2.1
--- hlxosstr.cpp 1 Aug 2007 19:18:45 -0000 1.25
+++ hlxosstr.cpp 15 Dec 2007 07:01:59 -0000 1.25.2.1
@@ -56,7 +56,7 @@
# if !defined(CP_UTF8)
# define CP_UTF8 CP_ACP
# else //!CP_UTF8
-# if defined(_X86_) && (CP_UTF8==65001)
+# if (defined(_X86_) || (WINVER >= 0x500)) && (CP_UTF8==65001)
# undef CP_UTF8
# define CP_UTF8 CP_ACP
# endif //_X86_ && (CP_UTF8==65001)
From lijunreal at helixcommunity.org Fri Dec 14 23:14:36 2007
From: lijunreal at helixcommunity.org (lijunreal@helixcommunity.org)
Date: Fri Dec 14 22:41:09 2007
Subject: [Common-cvs] runtime hlxosstr.cpp,1.26,1.27
Message-ID:
Update of /cvsroot/common/runtime
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv31061
Modified Files:
hlxosstr.cpp
Log Message:
Provide Chinese characters support on wm50 helixplayer. It may also take effect to other multi-byte characters, but only Chinese characters is tested.
Index: hlxosstr.cpp
===================================================================
RCS file: /cvsroot/common/runtime/hlxosstr.cpp,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -d -r1.26 -r1.27
--- hlxosstr.cpp 5 Nov 2007 21:27:28 -0000 1.26
+++ hlxosstr.cpp 15 Dec 2007 07:14:33 -0000 1.27
@@ -538,7 +538,7 @@
# if !defined(CP_UTF8)
# define CP_UTF8 CP_ACP
# else //!CP_UTF8
-# if defined(_X86_) && (CP_UTF8==65001)
+# if (defined(_X86_) || (WINVER >= 0x500)) && (CP_UTF8==65001)
# undef CP_UTF8
# define CP_UTF8 CP_ACP
# endif //_X86_ && (CP_UTF8==65001)
From lijunreal at helixcommunity.org Fri Dec 14 23:17:22 2007
From: lijunreal at helixcommunity.org (lijunreal@helixcommunity.org)
Date: Fri Dec 14 22:43:55 2007
Subject: [Common-cvs] runtime hlxosstr.cpp,1.18.2.5,1.18.2.6
Message-ID:
Update of /cvsroot/common/runtime
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv967
Modified Files:
Tag: hxclient_1_5_0_cayenne
hlxosstr.cpp
Log Message:
Provide Chinese characters support on wm50 helixplayer. It may also take effect to other multi-byte characters, but only Chinese characters is tested.
Index: hlxosstr.cpp
===================================================================
RCS file: /cvsroot/common/runtime/hlxosstr.cpp,v
retrieving revision 1.18.2.5
retrieving revision 1.18.2.6
diff -u -d -r1.18.2.5 -r1.18.2.6
--- hlxosstr.cpp 1 Aug 2007 19:19:43 -0000 1.18.2.5
+++ hlxosstr.cpp 15 Dec 2007 07:17:20 -0000 1.18.2.6
@@ -56,7 +56,7 @@
# if !defined(CP_UTF8)
# define CP_UTF8 (unsigned)CP_ACP
# else //!CP_UTF8
-# if defined(_X86_) && (CP_UTF8==65001)
+# if (defined(_X86_) || (WINVER >= 0x500)) && (CP_UTF8==65001)
# undef CP_UTF8
# define CP_UTF8 CP_ACP
# endif //_X86_ && (CP_UTF8==65001)
From dsingh at helixcommunity.org Tue Dec 18 03:52:29 2007
From: dsingh at helixcommunity.org (dsingh@helixcommunity.org)
Date: Tue Dec 18 03:18:15 2007
Subject: [Common-cvs] include hxqossig.h,1.25,1.25.8.1
Message-ID:
Update of /cvsroot/common/include
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv2862
Modified Files:
Tag: SERVER_12
hxqossig.h
Log Message:
Synopsis
========
Addition of SlowdownParamsSignal to control MDP client buffer usage for FCS.
Branch: SERVER_12_RN, HEAD.
Suggested Reviewer: Jamie Gordon, Nitin , Yadnesh.
Description
===========
A new signal HX_QOS_SIGNAL_SLOWDOWN_PARAMS is added to reduce the MDP client buffer usage to make switch to happen quickly when FCS
is used with MDP. Checkin of this CR is depending on MDP shim changes made by Raj. After Raj's checkin this thing needs to be tested again.
Files Affected
==============
common/hxqossig.h
server-restricted/qos/session/qos_sess_pktqueue.cpp
server/engine/session/clientsession.cpp
Testing Performed
=================
Unit Tests:
- None
Integration Tests:
- Tested without FCS url with MDP. The signal is captured properly. Also the signal is sent from appropriate place as discussed with
Nitin and Yadnesh.
Leak Tests:
- None.
Performance Tests:
- None
Platforms Tested: win32-i386-vc7, linux-rhel4-i686.
Build verified: win32-i386-vc7, linux-rhel4-i686.
QA Hints
===============
- None
Regards
-Dalvinder
Index: hxqossig.h
===================================================================
RCS file: /cvsroot/common/include/hxqossig.h,v
retrieving revision 1.25
retrieving revision 1.25.8.1
diff -u -d -r1.25 -r1.25.8.1
--- hxqossig.h 14 Sep 2007 12:39:39 -0000 1.25
+++ hxqossig.h 18 Dec 2007 11:52:26 -0000 1.25.8.1
@@ -124,6 +124,7 @@
, HX_QOS_SIGNAL_RTCP_NADU
, HX_QOS_SIGNAL_FEEDBACK_TIMEOUT
, HX_QOS_SIGNAL_WINDOWED_RECEIVE_RATE
+ , HX_QOS_SIGNAL_SLOWDOWN_PARAMS
/* Common Profile Signals */
, HX_QOS_SIGNAL_RDT_METRICS
@@ -161,6 +162,13 @@
float m_fWindowedReceiveRate; /* bps */
};
+typedef struct _SlowdownParamsSignalData
+{
+ UINT32 ulMaxAdvance;
+ UINT32 ulSlowdownModeExit;
+
+} SlowdownParamsSignalData;
+
typedef struct _LinkCharParams LinkCharSignalData;
typedef struct _StreamAdaptationParams StreamAdaptSignalData;
From dsingh at helixcommunity.org Tue Dec 18 04:08:02 2007
From: dsingh at helixcommunity.org (dsingh@helixcommunity.org)
Date: Tue Dec 18 03:33:53 2007
Subject: [Common-cvs] include hxqossig.h,1.25,1.26
Message-ID:
Update of /cvsroot/common/include
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv19529
Modified Files:
hxqossig.h
Log Message:
Synopsis
========
Addition of SlowdownParamsSignal to control MDP client buffer usage for FCS.
Branch: SERVER_12_RN, HEAD.
Suggested Reviewer: Jamie Gordon, Nitin , Yadnesh.
Description
===========
A new signal HX_QOS_SIGNAL_SLOWDOWN_PARAMS is added to reduce the MDP client buffer usage to make switch to happen quickly when FCS
is used with MDP. Checkin of this CR is depending on MDP shim changes made by Raj. After Raj's checkin this thing needs to be tested again.
Files Affected
==============
common/hxqossig.h
server-restricted/qos/session/qos_sess_pktqueue.cpp
server/engine/session/clientsession.cpp
Testing Performed
=================
Unit Tests:
- None
Integration Tests:
- Tested without FCS url with MDP. The signal is captured properly. Also the signal is sent from appropriate place as discussed with
Nitin and Yadnesh.
Leak Tests:
- None.
Performance Tests:
- None
Platforms Tested: win32-i386-vc7.
Build verified: win32-i386-vc7, linux-rhel4-i686.
QA Hints
===============
- None
Regards
-Dalvinder
Index: hxqossig.h
===================================================================
RCS file: /cvsroot/common/include/hxqossig.h,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -d -r1.25 -r1.26
--- hxqossig.h 14 Sep 2007 12:39:39 -0000 1.25
+++ hxqossig.h 18 Dec 2007 12:07:59 -0000 1.26
@@ -124,6 +124,7 @@
, HX_QOS_SIGNAL_RTCP_NADU
, HX_QOS_SIGNAL_FEEDBACK_TIMEOUT
, HX_QOS_SIGNAL_WINDOWED_RECEIVE_RATE
+ , HX_QOS_SIGNAL_SLOWDOWN_PARAMS
/* Common Profile Signals */
, HX_QOS_SIGNAL_RDT_METRICS
@@ -161,6 +162,13 @@
float m_fWindowedReceiveRate; /* bps */
};
+typedef struct _SlowdownParamsSignalData
+{
+ UINT32 ulMaxAdvance;
+ UINT32 ulSlowdownModeExit;
+
+} SlowdownParamsSignalData;
+
typedef struct _LinkCharParams LinkCharSignalData;
typedef struct _StreamAdaptationParams StreamAdaptSignalData;
From stanb at helixcommunity.org Thu Dec 20 17:08:10 2007
From: stanb at helixcommunity.org (stanb@helixcommunity.org)
Date: Thu Dec 20 16:33:17 2007
Subject: [Common-cvs] util hxurlutil.cpp,1.4.2.1,1.4.2.1.54.1
Message-ID:
Update of /cvsroot/common/util
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv12124/common/util
Modified Files:
Tag: hxclient_2_0_4_cayenne
hxurlutil.cpp
Log Message:
Fixed parsing of url options. (PR# 208630)
Index: hxurlutil.cpp
===================================================================
RCS file: /cvsroot/common/util/hxurlutil.cpp,v
retrieving revision 1.4.2.1
retrieving revision 1.4.2.1.54.1
diff -u -d -r1.4.2.1 -r1.4.2.1.54.1
--- hxurlutil.cpp 21 Jun 2005 17:50:48 -0000 1.4.2.1
+++ hxurlutil.cpp 21 Dec 2007 01:08:07 -0000 1.4.2.1.54.1
@@ -109,25 +109,6 @@
}
-static void ScanToken(const char*& pData, char term, CHXString& token /*out*/)
-{
- HX_ASSERT(pData);
-
- const char* pEnd = ::HXFindChar(pData, term);
- if(!pEnd)
- {
- // end is null term
- pEnd = pData + strlen(pData);
- }
-
- HX_ASSERT(pEnd >= pData);
- token = CHXString(pData, pEnd - pData);
- token.TrimLeft();
- token.TrimRight();
-
- pData = pEnd;
-
-}
//XXXLCM move
inline
bool IsNumber(const char* pszValue)
@@ -156,70 +137,43 @@
}
// look for ="" or =
-
- const char* pBegin = pszEscapedQuery;
- const char* pEnd = pszEscapedQuery + strlen(pszEscapedQuery);
-
- while(pBegin != pEnd)
+ CHXString strEscapedQuery = pszEscapedQuery;
+ UINT32 nNumOptions = strEscapedQuery.CountFields('&');
+ for(UINT32 nIndex = 1; nIndex <= nNumOptions; nIndex++)
{
-
- //
- // key
- //
- CHXString key;
- ScanToken(pBegin, '=', key);
- if(*pBegin != '=')
- {
+ CHXString strOption = strEscapedQuery.NthField('&', nIndex);
+ INT32 nPos = strOption.Find('=');
+ if(nPos == -1)
+ {
// error: expected key termination '='
hr = HXR_FAIL;
break;
- }
-
- // set begin to position past '='
- ++pBegin;
-
- // skip space
- while(*pBegin == ' ')
- {
- ++pBegin;
- }
-
- //
- // value
- //
- CHXString value;
+ }
- bool valueIsQuoted = (*pBegin == '"');
- if(valueIsQuoted)
- {
- //"value"
- ++pBegin;
- ScanToken(pBegin, '"', value);
- if(*pBegin != '"')
- {
- // error: expected closing quote
- hr = HXR_FAIL;
- break;
- }
+ CHXString key = strOption.Left(nPos);
+ key.TrimRight();
+ key.TrimLeft();
- // advance to end of value delimiter '&' or EOS
- pBegin = ::HXFindChar(pBegin, '&');
- }
- else
- {
- ScanToken(pBegin, '&', value);
- }
+ CHXString value = strOption.Mid(nPos + 1);
+ value.TrimRight();
+ value.TrimLeft();
- if(*pBegin == '&')
- {
- ++pBegin;
- }
-
// escape possibly URL-encoded query string values
key = HXEscapeUtil::UnEscape(key);
value = HXEscapeUtil::UnEscape(value);
- // add key value to collection
+ HXBOOL valueIsQuoted = FALSE;
+ // remove surrounding ""
+ UINT32 nValueLength = value.GetLength();
+ if(nValueLength >= 2 && value.GetAt(0) == '"' && value.GetAt(nValueLength - 1) == '"')
+ {
+ valueIsQuoted = TRUE;
+ value = value.Mid(1, nValueLength - 2);
+ value.TrimRight();
+ value.TrimLeft();
+ }
+
+ // add key value to collection
if (!key.CompareNoCase("Start")
|| !key.CompareNoCase("End")
|| !key.CompareNoCase("Delay")
From lijunreal at helixcommunity.org Thu Dec 20 17:13:22 2007
From: lijunreal at helixcommunity.org (lijunreal@helixcommunity.org)
Date: Thu Dec 20 16:38:33 2007
Subject: [Common-cvs] build/BIF helix.bif,1.656,1.657
Message-ID:
Update of /cvsroot/common/build/BIF
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv16763
Modified Files:
helix.bif
Log Message:
adding h264 codec in dependlist of wince_wm50_play so as to provide support for h264.
Index: helix.bif
===================================================================
RCS file: /cvsroot/common/build/BIF/helix.bif,v
retrieving revision 1.656
retrieving revision 1.657
diff -u -d -r1.656 -r1.657
--- helix.bif 13 Dec 2007 18:18:30 -0000 1.656
+++ helix.bif 21 Dec 2007 01:13:19 -0000 1.657
@@ -8932,7 +8932,9 @@
datatype_mp3_fileformat
datatype_mp3_renderer
-
+
+ datatype_h264_codec_decoder
+
datatype_group_video
From stanb at helixcommunity.org Thu Dec 20 17:13:30 2007
From: stanb at helixcommunity.org (stanb@helixcommunity.org)
Date: Thu Dec 20 16:38:37 2007
Subject: [Common-cvs] util hxurlutil.cpp,1.7,1.8
Message-ID:
Update of /cvsroot/common/util
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv17087
Modified Files:
hxurlutil.cpp
Log Message:
Fixed parsing of url options. (PR# 208630)
Index: hxurlutil.cpp
===================================================================
RCS file: /cvsroot/common/util/hxurlutil.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- hxurlutil.cpp 27 Nov 2006 17:37:48 -0000 1.7
+++ hxurlutil.cpp 21 Dec 2007 01:13:28 -0000 1.8
@@ -112,25 +112,6 @@
}
-static void ScanToken(const char*& pData, char term, CHXString& token /*out*/)
-{
- HX_ASSERT(pData);
-
- const char* pEnd = ::HXFindChar(pData, term);
- if(!pEnd)
- {
- // end is null term
- pEnd = pData + strlen(pData);
- }
-
- HX_ASSERT(pEnd >= pData);
- token = CHXString(pData, pEnd - pData);
- token.TrimLeft();
- token.TrimRight();
-
- pData = pEnd;
-
-}
//XXXLCM move
inline
bool IsNumber(const char* pszValue)
@@ -160,69 +141,43 @@
// look for ="" or =
- const char* pBegin = pszEscapedQuery;
- const char* pEnd = pszEscapedQuery + strlen(pszEscapedQuery);
-
- while(pBegin != pEnd)
+ CHXString strEscapedQuery = pszEscapedQuery;
+ UINT32 nNumOptions = strEscapedQuery.CountFields('&');
+ for(UINT32 nIndex = 1; nIndex <= nNumOptions; nIndex++)
{
-
- //
- // key
- //
- CHXString key;
- ScanToken(pBegin, '=', key);
- if(*pBegin != '=')
- {
+ CHXString strOption = strEscapedQuery.NthField('&', nIndex);
+ INT32 nPos = strOption.Find('=');
+ if(nPos == -1)
+ {
// error: expected key termination '='
hr = HXR_FAIL;
break;
- }
-
- // set begin to position past '='
- ++pBegin;
-
- // skip space
- while(*pBegin == ' ')
- {
- ++pBegin;
- }
-
- //
- // value
- //
- CHXString value;
+ }
- bool valueIsQuoted = (*pBegin == '"');
- if(valueIsQuoted)
- {
- //"value"
- ++pBegin;
- ScanToken(pBegin, '"', value);
- if(*pBegin != '"')
- {
- // error: expected closing quote
- hr = HXR_FAIL;
- break;
- }
+ CHXString key = strOption.Left(nPos);
+ key.TrimRight();
+ key.TrimLeft();
- // advance to end of value delimiter '&' or EOS
- pBegin = ::HXFindChar(pBegin, '&');
- }
- else
- {
- ScanToken(pBegin, '&', value);
- }
+ CHXString value = strOption.Mid(nPos + 1);
+ value.TrimRight();
+ value.TrimLeft();
- if(*pBegin == '&')
- {
- ++pBegin;
- }
-
// escape possibly URL-encoded query string values
key = HXEscapeUtil::UnEscape(key);
value = HXEscapeUtil::UnEscape(value);
- // add key value to collection
+ HXBOOL valueIsQuoted = FALSE;
+ // remove surrounding ""
+ UINT32 nValueLength = value.GetLength();
+ if(nValueLength >= 2 && value.GetAt(0) == '"' && value.GetAt(nValueLength - 1) == '"')
+ {
+ valueIsQuoted = TRUE;
+ value = value.Mid(1, nValueLength - 2);
+ value.TrimRight();
+ value.TrimLeft();
+ }
+
+ // add key value to collection
if (!key.CompareNoCase("Start")
|| !key.CompareNoCase("End")
|| !key.CompareNoCase("Delay")
From stanb at helixcommunity.org Thu Dec 20 17:24:39 2007
From: stanb at helixcommunity.org (stanb@helixcommunity.org)
Date: Thu Dec 20 16:49:46 2007
Subject: [Common-cvs] util hxurlutil.cpp,1.7,1.7.8.1
Message-ID:
Update of /cvsroot/common/util
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv26658
Modified Files:
Tag: hxclient_3_1_0_atlas
hxurlutil.cpp
Log Message:
Fixed parsing of url options. (PR# 208630)
Index: hxurlutil.cpp
===================================================================
RCS file: /cvsroot/common/util/hxurlutil.cpp,v
retrieving revision 1.7
retrieving revision 1.7.8.1
diff -u -d -r1.7 -r1.7.8.1
--- hxurlutil.cpp 27 Nov 2006 17:37:48 -0000 1.7
+++ hxurlutil.cpp 21 Dec 2007 01:24:03 -0000 1.7.8.1
@@ -112,25 +112,6 @@
}
-static void ScanToken(const char*& pData, char term, CHXString& token /*out*/)
-{
- HX_ASSERT(pData);
-
- const char* pEnd = ::HXFindChar(pData, term);
- if(!pEnd)
- {
- // end is null term
- pEnd = pData + strlen(pData);
- }
-
- HX_ASSERT(pEnd >= pData);
- token = CHXString(pData, pEnd - pData);
- token.TrimLeft();
- token.TrimRight();
-
- pData = pEnd;
-
-}
//XXXLCM move
inline
bool IsNumber(const char* pszValue)
@@ -159,69 +140,42 @@
}
// look for ="" or =
-
- const char* pBegin = pszEscapedQuery;
- const char* pEnd = pszEscapedQuery + strlen(pszEscapedQuery);
-
- while(pBegin != pEnd)
+ CHXString strEscapedQuery = pszEscapedQuery;
+ UINT32 nNumOptions = strEscapedQuery.CountFields('&');
+ for(UINT32 nIndex = 1; nIndex <= nNumOptions; nIndex++)
{
-
- //
- // key
- //
- CHXString key;
- ScanToken(pBegin, '=', key);
- if(*pBegin != '=')
- {
+ CHXString strOption = strEscapedQuery.NthField('&', nIndex);
+ INT32 nPos = strOption.Find('=');
+ if(nPos == -1)
+ {
// error: expected key termination '='
hr = HXR_FAIL;
break;
- }
-
- // set begin to position past '='
- ++pBegin;
-
- // skip space
- while(*pBegin == ' ')
- {
- ++pBegin;
- }
-
- //
- // value
- //
- CHXString value;
+ }
- bool valueIsQuoted = (*pBegin == '"');
- if(valueIsQuoted)
- {
- //"value"
- ++pBegin;
- ScanToken(pBegin, '"', value);
- if(*pBegin != '"')
- {
- // error: expected closing quote
- hr = HXR_FAIL;
- break;
- }
+ CHXString key = strOption.Left(nPos);
+ key.TrimRight();
+ key.TrimLeft();
- // advance to end of value delimiter '&' or EOS
- pBegin = ::HXFindChar(pBegin, '&');
- }
- else
- {
- ScanToken(pBegin, '&', value);
- }
+ CHXString value = strOption.Mid(nPos + 1);
+ value.TrimRight();
+ value.TrimLeft();
- if(*pBegin == '&')
- {
- ++pBegin;
- }
-
// escape possibly URL-encoded query string values
key = HXEscapeUtil::UnEscape(key);
value = HXEscapeUtil::UnEscape(value);
+ HXBOOL valueIsQuoted = FALSE;
+ // remove surrounding ""
+ UINT32 nValueLength = value.GetLength();
+ if(nValueLength >= 2 && value.GetAt(0) == '"' && value.GetAt(nValueLength - 1) == '"')
+ {
+ valueIsQuoted = TRUE;
+ value = value.Mid(1, nValueLength - 2);
+ value.TrimRight();
+ value.TrimLeft();
+ }
+
// add key value to collection
if (!key.CompareNoCase("Start")
|| !key.CompareNoCase("End")
From stanb at helixcommunity.org Thu Dec 20 17:32:54 2007
From: stanb at helixcommunity.org (stanb@helixcommunity.org)
Date: Thu Dec 20 16:58:01 2007
Subject: [Common-cvs] util hxurlutil.cpp,1.4.2.1,1.4.2.2
Message-ID:
Update of /cvsroot/common/util
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv2005
Modified Files:
Tag: hxclient_1_5_0_cayenne
hxurlutil.cpp
Log Message:
Fixed parsing of url options. (PR# 208630)
Index: hxurlutil.cpp
===================================================================
RCS file: /cvsroot/common/util/hxurlutil.cpp,v
retrieving revision 1.4.2.1
retrieving revision 1.4.2.2
diff -u -d -r1.4.2.1 -r1.4.2.2
--- hxurlutil.cpp 21 Jun 2005 17:50:48 -0000 1.4.2.1
+++ hxurlutil.cpp 21 Dec 2007 01:32:52 -0000 1.4.2.2
@@ -109,25 +109,6 @@
}
-static void ScanToken(const char*& pData, char term, CHXString& token /*out*/)
-{
- HX_ASSERT(pData);
-
- const char* pEnd = ::HXFindChar(pData, term);
- if(!pEnd)
- {
- // end is null term
- pEnd = pData + strlen(pData);
- }
-
- HX_ASSERT(pEnd >= pData);
- token = CHXString(pData, pEnd - pData);
- token.TrimLeft();
- token.TrimRight();
-
- pData = pEnd;
-
-}
//XXXLCM move
inline
bool IsNumber(const char* pszValue)
@@ -156,69 +137,42 @@
}
// look for ="" or =
-
- const char* pBegin = pszEscapedQuery;
- const char* pEnd = pszEscapedQuery + strlen(pszEscapedQuery);
-
- while(pBegin != pEnd)
+ CHXString strEscapedQuery = pszEscapedQuery;
+ UINT32 nNumOptions = strEscapedQuery.CountFields('&');
+ for(UINT32 nIndex = 1; nIndex <= nNumOptions; nIndex++)
{
-
- //
- // key
- //
- CHXString key;
- ScanToken(pBegin, '=', key);
- if(*pBegin != '=')
- {
+ CHXString strOption = strEscapedQuery.NthField('&', nIndex);
+ INT32 nPos = strOption.Find('=');
+ if(nPos == -1)
+ {
// error: expected key termination '='
hr = HXR_FAIL;
break;
- }
-
- // set begin to position past '='
- ++pBegin;
-
- // skip space
- while(*pBegin == ' ')
- {
- ++pBegin;
- }
-
- //
- // value
- //
- CHXString value;
+ }
- bool valueIsQuoted = (*pBegin == '"');
- if(valueIsQuoted)
- {
- //"value"
- ++pBegin;
- ScanToken(pBegin, '"', value);
- if(*pBegin != '"')
- {
- // error: expected closing quote
- hr = HXR_FAIL;
- break;
- }
+ CHXString key = strOption.Left(nPos);
+ key.TrimRight();
+ key.TrimLeft();
- // advance to end of value delimiter '&' or EOS
- pBegin = ::HXFindChar(pBegin, '&');
- }
- else
- {
- ScanToken(pBegin, '&', value);
- }
+ CHXString value = strOption.Mid(nPos + 1);
+ value.TrimRight();
+ value.TrimLeft();
- if(*pBegin == '&')
- {
- ++pBegin;
- }
-
// escape possibly URL-encoded query string values
key = HXEscapeUtil::UnEscape(key);
value = HXEscapeUtil::UnEscape(value);
+ HXBOOL valueIsQuoted = FALSE;
+ // remove surrounding ""
+ UINT32 nValueLength = value.GetLength();
+ if(nValueLength >= 2 && value.GetAt(0) == '"' && value.GetAt(nValueLength - 1) == '"')
+ {
+ valueIsQuoted = TRUE;
+ value = value.Mid(1, nValueLength - 2);
+ value.TrimRight();
+ value.TrimLeft();
+ }
+
// add key value to collection
if (!key.CompareNoCase("Start")
|| !key.CompareNoCase("End")
From stanb at helixcommunity.org Fri Dec 28 12:18:39 2007
From: stanb at helixcommunity.org (stanb@helixcommunity.org)
Date: Fri Dec 28 11:41:49 2007
Subject: [Common-cvs] util rlstate.cpp,1.6,1.6.110.1
Message-ID:
Update of /cvsroot/common/util
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv11510
Modified Files:
Tag: hxclient_2_0_4_cayenne
rlstate.cpp
Log Message:
Security vulnerability fix - heap corruption in case number of rule
separator characters is biger then supposed to be. (PR# 208445)
Index: rlstate.cpp
===================================================================
RCS file: /cvsroot/common/util/rlstate.cpp,v
retrieving revision 1.6
retrieving revision 1.6.110.1
diff -u -d -r1.6 -r1.6.110.1
--- rlstate.cpp 9 Jul 2004 18:23:51 -0000 1.6
+++ rlstate.cpp 28 Dec 2007 20:18:24 -0000 1.6.110.1
@@ -154,7 +154,7 @@
char* pOffset = pRuleBook;
UINT16 idxCurrentRule = 0;
- while(*pOffset != '\0' && ((UINT16)(pOffset - pRuleBook) < usBookSize))
+ while(*pOffset != '\0' && ((UINT16)(pOffset - pRuleBook) < usBookSize) && idxCurrentRule < num_rules)
{
while(*pOffset != ';')
{
From mkeax at helixcommunity.org Sat Dec 29 16:03:37 2007
From: mkeax at helixcommunity.org (Marcia)
Date: Sat Dec 29 10:28:07 2007
Subject: [Common-cvs] sinclair less transmute
Message-ID: <40b701c84a34$5f2d2c90$0b09f1d8@helixcommunity.org>
Searching for Christmas gift?
Try this replica.
http://theserxmax.net
Christmas discounts and free shipping program!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.helixcommunity.org/pipermail/common-cvs/attachments/20071229/5864dfce/attachment.html
Copyright © 1995-2007 RealNetworks, Inc. All rights reserved.
RealNetworks and Helix are trademarks of RealNetworks.
All other trademarks or registered trademarks are the property of their respective holders.