[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-server-cvs
Subject: [Server-cvs] broadcast/transport/rtp/recv rtpbcobj.cpp, 1.1.2.4,
From: dcollins () helixcommunity ! org
Date: 2011-10-28 21:45:45
[Download RAW message or body]
Update of /cvsroot/server/broadcast/transport/rtp/recv
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv3739
Modified Files:
Tag: DEAN_PERF_2011_10_17
rtpbcobj.cpp rtpbcplin.cpp rtpbcstreams.cpp rtpdirmgr.cpp
rtpworkercb.cpp
Log Message:
experimental DEAN_PERF_2011_10_17 branch checkin: adding more callbacks, misc cleanup
Index: rtpdirmgr.cpp
===================================================================
RCS file: /cvsroot/server/broadcast/transport/rtp/recv/Attic/rtpdirmgr.cpp,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -d -r1.1.2.2 -r1.1.2.3
--- rtpdirmgr.cpp 27 Oct 2011 23:24:48 -0000 1.1.2.2
+++ rtpdirmgr.cpp 28 Oct 2011 21:45:40 -0000 1.1.2.3
@@ -91,7 +91,7 @@
m_pFileInodeMap = new CHXMapStringToOb();
// Only the manager thread should be scanning for SDP files
- HX_ASSERT(g_TLS_threadType == RTP_THR_MANAGER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_MANAGER);
}
RTPDirectoryManager::~RTPDirectoryManager()
@@ -363,8 +363,8 @@
* IHXFileStat2Response::Stat2Done ref: hxfiles.h
*/
STDMETHODIMP
-RTPDirectoryManager::Stat2Done (HX_RESULT status,
- HXSTAT* pStat)
+RTPDirectoryManager::Stat2Done (HX_RESULT status,
+ HXSTAT* pStat)
{
const char* pNameStr = NULL;
char szInodeMapKey[64];
Index: rtpbcstreams.cpp
===================================================================
RCS file: /cvsroot/server/broadcast/transport/rtp/recv/Attic/rtpbcstreams.cpp,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -d -r1.1.2.1 -r1.1.2.2
--- rtpbcstreams.cpp 28 Oct 2011 15:40:29 -0000 1.1.2.1
+++ rtpbcstreams.cpp 28 Oct 2011 21:45:40 -0000 1.1.2.2
@@ -1101,23 +1101,24 @@
}
g_pFileDict->RemoveStreamsObject(m_pRequestedPath);
- RTPDPRINTF(B_INFO, ("RTPBCSObj:CleanupRegistry: unassigning %s DISABLED\n", \
m_pRequestedPath));
- //RTPDPRINTF(B_INFO, ("RTPBCSObj:CleanupRegistry: unassigning %s\n", \
m_pRequestedPath));
- //GlobalRTPBroadcastFormat()->UnassignOwnerThread(m_pRequestedPath);
+ //RTPDPRINTF(B_INFO, ("RTPBCStreamsObject:CleanupRegistry: unassigning %s \
DISABLED\n", m_pRequestedPath)); + RTPDPRINTF(B_INFO, \
("RTPBCStreamsObject:CleanupRegistry: unassigning %s\n", m_pRequestedPath)); + \
GlobalRTPBroadcastFormat()->UnassignOwnerThread(m_pRequestedPath); }
HX_RESULT
-RTPBCStreamsObject::GetFileHeader( REF(IHXValues*) pHeader)
+RTPBCStreamsObject::GetFileHeader(void)
{
- RTPDPRINTF(B_INFO, ("RTPBCSO::GetFileHeader called in thread %llu\n", \
MyOSThreadID())); + RTPDPRINTF(B_INFO, ("RTPBCStreamsObject::GetFileHeader called \
in thread %llu\n", MyOSThreadID()));
- pHeader = m_pFileHeader;
+ IHXValues* pHeader = m_pFileHeader;
+ HX_ADDREF(pHeader);
//Remove the incoming multicast attributes, these have
//no meaning beyond this plugin.
IHXValues2* pValues2 = NULL;
- if(SUCCEEDED(pHeader->QueryInterface(IID_IHXValues2, (void**)&pValues2)))
+ if(pHeader && SUCCEEDED(pHeader->QueryInterface(IID_IHXValues2, \
(void**)&pValues2))) {
pValues2->RemoveCString("MulticastAddress");
pValues2->RemoveULONG32("MulticastTTL");
@@ -1125,23 +1126,33 @@
}
HX_RELEASE(pValues2);
- HX_ADDREF(pHeader);
-
/**
* Before Replacing with the SDPPin the "i=" line
* from SDP File was stored as "Author" in File Header
* Now it would be stored as "Information"
*/
+
+ if (pHeader)
+ {
+ m_pFFResponse->FileHeaderReady(HXR_OK, pHeader);
+ }
+ else
+ {
+ m_pFFResponse->FileHeaderReady(HXR_FAIL, NULL);
+ }
+ HX_RELEASE(pHeader);
+
return HXR_OK;
}
HX_RESULT
-RTPBCStreamsObject::GetStreamHeader(UINT16 unStreamNumber, REF (IHXValues*) pHeader)
+RTPBCStreamsObject::GetStreamHeader(UINT16 unStreamNumber)
{
- RTPDPRINTF(B_INFO, ("RTPBCSO::GetStreamHeader called in thread %llu\n", \
MyOSThreadID())); + RTPDPRINTF(B_INFO, ("RTPBCStreamsObject::GetStreamHeader \
called in thread %llu\n", MyOSThreadID()));
- pHeader = m_ppStreamHeaders[unStreamNumber];
+ IHXValues* pHeader = m_ppStreamHeaders[unStreamNumber];
+ HX_ADDREF(pHeader);
//Remove the incoming multicast attributes, these have
//no meaning beyond this plugin.
@@ -1154,11 +1165,20 @@
}
HX_RELEASE(pValues2);
- HX_ADDREF(pHeader);
-
//For Height and Wight one can use FrameHeight and FrameWidth
//TBD: Whether Cliprect has to be parsed in SDPPlin
+
+ if (pHeader)
+ {
+ m_pFFResponse->StreamHeaderReady(HXR_OK, pHeader);
+ }
+ else
+ {
+ m_pFFResponse->StreamHeaderReady(HXR_FAIL, NULL);
+ }
+ HX_RELEASE(pHeader);
+
return HXR_OK;
}
@@ -1201,7 +1221,7 @@
STDMETHODIMP
RTPBCStreamsObject::PacketQueued(UINT16 unInStream, IHXServerPacketExt* pPkt)
{
- HX_ASSERT(g_TLS_threadType == RTP_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
return m_pPacketBufferManager->PacketQueued(unInStream, pPkt);
}
@@ -1344,22 +1364,14 @@
void
RTPBCStreamsObject::StopAllStreams(HXBOOL bFlushPkts/*=TRUE*/)
{
- RTPDPRINTF(B_INFO, ("RTPBCSO::StopAllStreams called in thread %llu\n", \
MyOSThreadID())); + RTPDPRINTF(B_INFO, ("RTPBCStreamsObject::StopAllStreams called \
in thread %llu\n", MyOSThreadID()));
if (m_bStreamsStopping)
{
return;
}
- if (g_TLS_threadType == RTP_THR_MANAGER)
- {
- // In the case of directory scan enabled, StartPackets gets called
- // on the manager thread, so process this over in the worker where
- // it belongs.
- DispatchStopAllStreams(bFlushPkts);
- return;
- }
- HX_ASSERT(g_TLS_threadType == RTP_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
m_bStreamsStopping = TRUE;
m_bStartSendingPacket = FALSE;
@@ -1402,24 +1414,6 @@
}
}
-HX_RESULT
-RTPBCStreamsObject::DispatchStopAllStreams(HXBOOL bFlushPackets)
-{
- UINT32 ulSDPOwnerID = 0;
- HX_RESULT res = GlobalRTPBroadcastFormat()->FindOwnerThread(m_pRequestedPath, \
&ulSDPOwnerID);
- if (SUCCEEDED(res))
- {
- StopAllStreamsCallback* pCB = new StopAllStreamsCallback(this, \
bFlushPackets);
- pCB->AddRef();
- res = g_TLS_pWTManager->SendWorkerMessage(HX_WORKER_TYPE_LIVE_INGRESS,
- ulSDPOwnerID,
- (IHXCallback*)pCB);
- HX_RELEASE(pCB);
- }
-
- return res;
-}
-
STDMETHODIMP
RTPBCStreamsObject::PacketReady(IHXServerPacketExt* pPkt)
{
@@ -1542,25 +1536,17 @@
return HXR_OK;
}
-void
+HX_RESULT
RTPBCStreamsObject::StartPackets(UINT16 unStreamNumber)
{
- RTPDPRINTF(B_INFO, ("RTPBCSO::StartPackets called in thread %llu\n", \
MyOSThreadID())); + RTPDPRINTF(B_INFO, ("RTPBCStreamsObject::StartPackets called \
in thread %llu\n", MyOSThreadID()));
if (m_bStreamsStopping)
{
- return;
+ return HXR_OK;
}
- if (g_TLS_threadType == RTP_THR_MANAGER)
- {
- // In the case of directory scan enabled, StartPackets gets called
- // on the manager thread, so process this over in the worker where
- // it belongs.
- DispatchStartPackets(unStreamNumber);
- return;
- }
- HX_ASSERT(g_TLS_threadType == RTP_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
if (!m_pbStarted[unStreamNumber])
{
@@ -1577,24 +1563,13 @@
// this will start bursting pkts
m_pPacketBufferManager->StartPackets();
}
+ return HXR_OK;
}
-HX_RESULT
-RTPBCStreamsObject::DispatchStartPackets(UINT16 unStreamNumber)
+HX_RESULT
+RTPBCStreamsObject::StopPackets(UINT16 unStreamNumber)
{
- UINT32 ulSDPOwnerID = 0;
- HX_RESULT res = GlobalRTPBroadcastFormat()->FindOwnerThread(m_pRequestedPath, \
&ulSDPOwnerID);
- if (SUCCEEDED(res))
- {
- StartPacketsCallback* pCB = new StartPacketsCallback(this, unStreamNumber);
- pCB->AddRef();
- res = g_TLS_pWTManager->SendWorkerMessage(HX_WORKER_TYPE_LIVE_INGRESS,
- ulSDPOwnerID,
- (IHXCallback*)pCB);
- HX_RELEASE(pCB);
- }
-
- return res;
+ return StreamDone(unStreamNumber);
}
void
Index: rtpworkercb.cpp
===================================================================
RCS file: /cvsroot/server/broadcast/transport/rtp/recv/Attic/rtpworkercb.cpp,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -u -d -r1.1.2.3 -r1.1.2.4
--- rtpworkercb.cpp 28 Oct 2011 15:40:30 -0000 1.1.2.3
+++ rtpworkercb.cpp 28 Oct 2011 21:45:41 -0000 1.1.2.4
@@ -166,14 +166,12 @@
{
HX_RESULT res = HXR_OK;
-#if 0
RTPGetFileHeaderResponseCallback* pCB =
new RTPGetFileHeaderResponseCallback(m_pRealResponse, status, pHeader);
pCB->AddRef();
res = g_TLS_pWTManager->SendWorkerMessage(
HX_WORKER_TYPE_LIVE_INGRESS, m_ulManagerThreadID, (IHXCallback*)pCB);
HX_RELEASE(pCB);
-#endif
return res;
}
@@ -184,14 +182,12 @@
{
HX_RESULT res = HXR_OK;
-#if 0
RTPGetStreamHeaderResponseCallback* pCB =
new RTPGetStreamHeaderResponseCallback(m_pRealResponse, status, \
pHeader); pCB->AddRef();
res = g_TLS_pWTManager->SendWorkerMessage(
HX_WORKER_TYPE_LIVE_INGRESS, m_ulManagerThreadID, (IHXCallback*)pCB);
HX_RELEASE(pCB);
-#endif
return res;
}
@@ -201,14 +197,12 @@
{
HX_RESULT res = HXR_OK;
-#if 0
RTPStreamDoneResponseCallback* pCB =
new RTPStreamDoneResponseCallback(m_pRealResponse, unStreamNumber);
pCB->AddRef();
res = g_TLS_pWTManager->SendWorkerMessage(
HX_WORKER_TYPE_LIVE_INGRESS, m_ulManagerThreadID, (IHXCallback*)pCB);
HX_RELEASE(pCB);
-#endif
return res;
}
@@ -228,7 +222,7 @@
STDMETHODIMP
SDPFileAddedCallback::Func()
{
- HX_ASSERT(g_TLS_threadType == RTP_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
const char* pPath = NULL;
@@ -315,7 +309,7 @@
STDMETHODIMP
StartPacketsCallback::Func()
{
- HX_ASSERT(g_TLS_threadType == RTP_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
RTPDPRINTF(B_THREAD, ("StartPacketsCallback::Func() called! OBJ=%p NUM=%d \
TID=%llu\n", m_pStreamsObject, m_unStreamNumber, MyOSThreadID()));
@@ -400,7 +394,7 @@
STDMETHODIMP
StopAllStreamsCallback::Func()
{
- HX_ASSERT(g_TLS_threadType == RTP_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
RTPDPRINTF(B_THREAD, ("StopAllStreamsCallback::Func() called! OBJ=%p FLUSH=%d \
TID=%llu\n", m_pStreamsObject, m_bFlushPackets, MyOSThreadID()));
@@ -513,8 +507,7 @@
{
HX_RESULT res = HXR_OK;
- //BroadcastReceiverTLS::Init(); // ensure this thread's TLS is initted
- HX_ASSERT(g_TLS_threadType == RTP_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
RTPDPRINTF(B_THREADV, ("RTPInitBroadcastCallback::Func() called! PATH=%s \
TID=%llu\n", m_pFileName, MyOSThreadID()));
@@ -602,9 +595,9 @@
RTPDPRINTF(B_THREADV, ("RTPInitBroadcastResponseCallback::Func() called! \
status=%lu TID=%llu\n", m_lStatus, MyOSThreadID()));
- HX_ASSERT(g_TLS_threadType == RTP_THR_MANAGER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_MANAGER);
- if (g_TLS_threadType == RTP_THR_MANAGER)
+ if (g_TLS_RTPThreadType == RTP_THR_MANAGER)
{
res = m_pRealResponse->InitDone(m_lStatus);
}
@@ -654,22 +647,18 @@
return HXR_NOINTERFACE;
}
-#if 0
-
-
-/************************************************************************/
-/************************************************************************/
+#if 0
/************************************************************************
- * BRCVDoesExistCallback Methods
+ * RTPDoesExistCallback Methods
*
* Dispatches a DoesExist call to a worker.
* If the file exists, the worker thread owns it.
*/
-BRCVDoesExistCallback::BRCVDoesExistCallback(UINT32 \
ulManagerThreadID,
- const char* pFileName,
- IHXFileExistsResponse* pResponse,
- BroadcastReceiverFeed* pFeed)
+RTPDoesExistCallback::RTPDoesExistCallback(UINT32 ulManagerThreadID,
+ const char* pFileName,
+ IHXFileExistsResponse* pResponse,
+ BroadcastReceiverFeed* pFeed)
: m_lRefCount(0)
, m_pFileName(pFileName)
, m_pResponse(pResponse)
@@ -677,15 +666,15 @@
, m_ulManagerThreadID(ulManagerThreadID)
, m_pFeed(pFeed)
{
- RDPRINTF(B_CONS, ("%p: BRCVDoesExistCallback::BRCVDoesExistCallback()\n", \
this)); + RTPDPRINTF(B_CONS, ("%p: \
RTPDoesExistCallback::RTPDoesExistCallback()\n", this)); HX_ASSERT(m_pFileName);
HX_ADDREF(pResponse);
HX_ADDREF(pFeed);
}
-BRCVDoesExistCallback::~BRCVDoesExistCallback()
+RTPDoesExistCallback::~RTPDoesExistCallback()
{
- RDPRINTF(B_CONS, ("%p: BRCVDoesExistCallback::~BRCVDoesExistCallback()\n", \
this)); + RTPDPRINTF(B_CONS, ("%p: \
RTPDoesExistCallback::~RTPDoesExistCallback()\n", this)); HX_RELEASE(m_pFeed);
HX_RELEASE(m_pResponse);
HX_DELETE(m_pFileName);
@@ -695,25 +684,25 @@
* IHXCallback Interface Methods ref: hxengin.h
*/
STDMETHODIMP
-BRCVDoesExistCallback::Func()
+RTPDoesExistCallback::Func()
{
HX_RESULT res = HXR_OK;
- RDPRINTF(B_THREADV,
- ("BRCVDoesExistCallback::Func() called! PATH=%s TID=%llu \
ThreadID=%lu\n",
- m_pFileName, MyOSThreadID(), (unsigned long)g_TLS_BRCVThreadID));
+ RTPDPRINTF(B_THREADV,
+ ("RTPDoesExistCallback::Func() called! PATH=%s TID=%llu \
ThreadID=%lu\n", + m_pFileName, MyOSThreadID(), (unsigned \
long)g_TLS_RTPThreadID));
- if (g_TLS_BRCVThreadType == BRCV_THR_WORKER)
+ if (g_TLS_RTPThreadType == RTP_THR_WORKER)
{
- RDPRINTF(B_THREADV, ("BRCVDoesExistCallback:: STEP 1\n"));
+ RTPDPRINTF(B_THREADV, ("RTPDoesExistCallback:: STEP 1\n"));
m_pFeed->InitFeed();
res = m_pFeed->DoesExist(m_pFileName, (IHXFileExistsResponse*)this);
}
else // manager thread
{
- RDPRINTF(B_THREADV, ("BRCVDoesExistCallback:: STEP 3\n"));
+ RTPDPRINTF(B_THREADV, ("RTPDoesExistCallback:: STEP 3\n"));
- HX_ASSERT(g_TLS_BRCVThreadType == BRCV_THR_MANAGER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_MANAGER);
HX_DELETE(m_pFileName);
IHXFileExistsResponse* pResponse = m_pResponse;
@@ -729,12 +718,12 @@
* IHXFileExistsResponse Interface Methods ref: hxfiles.h
*/
STDMETHODIMP
-BRCVDoesExistCallback::DoesExistDone(HXBOOL bExist)
+RTPDoesExistCallback::DoesExistDone(HXBOOL bExist)
{
- RDPRINTF(B_THREADV, ("BRCVDoesExistCallback:: STEP 2\n"));
+ RTPDPRINTF(B_THREADV, ("RTPDoesExistCallback:: STEP 2\n"));
HX_RESULT res = HXR_OK;
- HX_ASSERT(g_TLS_BRCVThreadType == BRCV_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
m_bExists = bExist;
@@ -756,13 +745,13 @@
* IUnknown COM Interface Methods ref: hxcom.h
*/
STDMETHODIMP_(ULONG32)
-BRCVDoesExistCallback::AddRef()
+RTPDoesExistCallback::AddRef()
{
return InterlockedIncrement(&m_lRefCount);
}
STDMETHODIMP_(ULONG32)
-BRCVDoesExistCallback::Release()
+RTPDoesExistCallback::Release()
{
if (InterlockedDecrement(&m_lRefCount) > 0)
{
@@ -774,7 +763,7 @@
}
STDMETHODIMP
-BRCVDoesExistCallback::QueryInterface(REFIID riid, void** ppvObj)
+RTPDoesExistCallback::QueryInterface(REFIID riid, void** ppvObj)
{
if (IsEqualIID(riid, IID_IHXCallback))
{
@@ -798,41 +787,42 @@
*ppvObj = NULL;
return HXR_NOINTERFACE;
}
+#endif
+
/************************************************************************
- * BRCVGetFileHeaderCallback Methods
+ * RTPGetFileHeaderCallback Methods
*
* Dispatches a GetFileHeader call to a worker.
*/
-BRCVGetFileHeaderCallback::BRCVGetFileHeaderCallback(BroadcastReceiverFeed* pFeed)
+RTPGetFileHeaderCallback::RTPGetFileHeaderCallback(RTPBCStreamsObject* \
pStreamsObject) : m_lRefCount(0)
- , m_pFeed(pFeed)
+ , m_pStreamsObject(pStreamsObject)
{
- RDPRINTF(B_CONS, ("%p: \
BRCVGetFileHeaderCallback::BRCVGetFileHeaderCallback()\n", this));
- HX_ADDREF(m_pFeed);
+ RTPDPRINTF(B_CONS, ("%p: \
RTPGetFileHeaderCallback::RTPGetFileHeaderCallback()\n", this)); + \
HX_ADDREF(m_pStreamsObject); }
-BRCVGetFileHeaderCallback::~BRCVGetFileHeaderCallback()
+RTPGetFileHeaderCallback::~RTPGetFileHeaderCallback()
{
- RDPRINTF(B_CONS, ("%p: \
BRCVGetFileHeaderCallback::~BRCVGetFileHeaderCallback()\n", this));
- HX_RELEASE(m_pFeed);
+ RTPDPRINTF(B_CONS, ("%p: \
RTPGetFileHeaderCallback::~RTPGetFileHeaderCallback()\n", this)); + \
HX_RELEASE(m_pStreamsObject); }
/************************************************************************
* IHXCallback Interface Methods ref: hxengin.h
*/
STDMETHODIMP
-BRCVGetFileHeaderCallback::Func()
+RTPGetFileHeaderCallback::Func()
{
HX_RESULT res = HXR_OK;
- HX_ASSERT(g_TLS_BRCVThreadType == BRCV_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
- RDPRINTF(B_THREADV, ("BRCVGetFileHeaderCallback::Func() called! TID=%llu\n",
+ RTPDPRINTF(B_THREADV, ("RTPGetFileHeaderCallback::Func() called! TID=%llu\n",
MyOSThreadID()));
- res = m_pFeed->GetFileHeader();
-
+ res = m_pStreamsObject->GetFileHeader();
return res;
}
@@ -840,13 +830,13 @@
* IUnknown COM Interface Methods ref: hxcom.h
*/
STDMETHODIMP_(ULONG32)
-BRCVGetFileHeaderCallback::AddRef()
+RTPGetFileHeaderCallback::AddRef()
{
return InterlockedIncrement(&m_lRefCount);
}
STDMETHODIMP_(ULONG32)
-BRCVGetFileHeaderCallback::Release()
+RTPGetFileHeaderCallback::Release()
{
if (InterlockedDecrement(&m_lRefCount) > 0)
{
@@ -858,7 +848,7 @@
}
STDMETHODIMP
-BRCVGetFileHeaderCallback::QueryInterface(REFIID riid, void** ppvObj)
+RTPGetFileHeaderCallback::QueryInterface(REFIID riid, void** ppvObj)
{
if (IsEqualIID(riid, IID_IHXCallback))
{
@@ -878,11 +868,11 @@
}
/************************************************************************
- * BRCVGetFileHeaderResponseCallback Methods
+ * RTPGetFileHeaderResponseCallback Methods
*
* Dispatches a GetFileHeader response call to a manager thread.
*/
-BRCVGetFileHeaderResponseCallback::BRCVGetFileHeaderResponseCallback(
+RTPGetFileHeaderResponseCallback::RTPGetFileHeaderResponseCallback(
IHXFormatResponse* \
pRealResponse,
HX_RESULT status,
IHXValues* pHeader)
@@ -891,15 +881,15 @@
, m_pHeader(pHeader)
, m_pRealResponse(pRealResponse)
{
- RDPRINTF(B_CONS, ("%p: \
BRCVGetFileHeaderResponseCallback::BRCVGetFileHeaderResponseCallback()\n", this)); + \
RTPDPRINTF(B_CONS, ("%p: \
RTPGetFileHeaderResponseCallback::RTPGetFileHeaderResponseCallback()\n", this)); \
HX_ASSERT(m_pRealResponse); HX_ADDREF(m_pRealResponse);
HX_ADDREF(m_pHeader);
}
-BRCVGetFileHeaderResponseCallback::~BRCVGetFileHeaderResponseCallback()
+RTPGetFileHeaderResponseCallback::~RTPGetFileHeaderResponseCallback()
{
- RDPRINTF(B_CONS, ("%p: \
BRCVGetFileHeaderResponseCallback::~BRCVGetFileHeaderResponseCallback()\n", this)); + \
RTPDPRINTF(B_CONS, ("%p: \
RTPGetFileHeaderResponseCallback::~RTPGetFileHeaderResponseCallback()\n", this)); \
HX_RELEASE(m_pRealResponse); HX_RELEASE(m_pHeader);
}
@@ -908,16 +898,16 @@
* IHXCallback Interface Methods ref: hxengin.h
*/
STDMETHODIMP
-BRCVGetFileHeaderResponseCallback::Func()
+RTPGetFileHeaderResponseCallback::Func()
{
HX_RESULT res = HXR_OK;
- RDPRINTF(B_THREADV, ("BRCVGetFileHeaderResponseCallback::Func() called! \
status=%lu TID=%llu\n", + RTPDPRINTF(B_THREADV, \
("RTPGetFileHeaderResponseCallback::Func() called! status=%lu TID=%llu\n", \
m_lStatus, MyOSThreadID()));
- HX_ASSERT(g_TLS_BRCVThreadType == BRCV_THR_MANAGER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_MANAGER);
- if (g_TLS_BRCVThreadType == BRCV_THR_MANAGER)
+ if (g_TLS_RTPThreadType == RTP_THR_MANAGER)
{
res = m_pRealResponse->FileHeaderReady(m_lStatus, m_pHeader);
}
@@ -930,13 +920,13 @@
* IUnknown COM Interface Methods ref: hxcom.h
*/
STDMETHODIMP_(ULONG32)
-BRCVGetFileHeaderResponseCallback::AddRef()
+RTPGetFileHeaderResponseCallback::AddRef()
{
return InterlockedIncrement(&m_lRefCount);
}
STDMETHODIMP_(ULONG32)
-BRCVGetFileHeaderResponseCallback::Release()
+RTPGetFileHeaderResponseCallback::Release()
{
if (InterlockedDecrement(&m_lRefCount) > 0)
{
@@ -948,7 +938,7 @@
}
STDMETHODIMP
-BRCVGetFileHeaderResponseCallback::QueryInterface(REFIID riid, void** ppvObj)
+RTPGetFileHeaderResponseCallback::QueryInterface(REFIID riid, void** ppvObj)
{
if (IsEqualIID(riid, IID_IHXCallback))
{
@@ -967,56 +957,58 @@
return HXR_NOINTERFACE;
}
+
/************************************************************************
- * BRCVGetStreamHeaderCallback Methods
+ * RTPGetStreamHeaderCallback Methods
*
* Dispatches a GetStreamHeader call to a worker.
*/
-BRCVGetStreamHeaderCallback::BRCVGetStreamHeaderCallback(UINT16 unStreamNumber,
- BroadcastReceiverFeed* \
pFeed) +RTPGetStreamHeaderCallback::RTPGetStreamHeaderCallback(UINT16 unStreamNumber,
+ RTPBCStreamsObject* \
pStreamsObject) : m_lRefCount(0)
, m_unStreamNumber(unStreamNumber)
- , m_pFeed(pFeed)
+ , m_pStreamsObject(pStreamsObject)
{
- RDPRINTF(B_CONS, ("%p: \
BRCVGetStreamHeaderCallback::BRCVGetStreamHeaderCallback()\n", \
this));
- HX_ADDREF(m_pFeed);
+ RTPDPRINTF(B_CONS, ("%p: \
RTPGetStreamHeaderCallback::RTPGetStreamHeaderCallback()\n", this)); + \
HX_ADDREF(m_pStreamsObject); }
-BRCVGetStreamHeaderCallback::~BRCVGetStreamHeaderCallback()
+RTPGetStreamHeaderCallback::~RTPGetStreamHeaderCallback()
{
- RDPRINTF(B_CONS, ("%p: \
BRCVGetStreamHeaderCallback::~BRCVGetStreamHeaderCallback()\n", \
this));
- HX_RELEASE(m_pFeed);
+ RTPDPRINTF(B_CONS, ("%p: \
RTPGetStreamHeaderCallback::~RTPGetStreamHeaderCallback()\n", this)); + \
HX_RELEASE(m_pStreamsObject); }
/************************************************************************
* IHXCallback Interface Methods ref: hxengin.h
*/
STDMETHODIMP
-BRCVGetStreamHeaderCallback::Func()
+RTPGetStreamHeaderCallback::Func()
{
HX_RESULT res = HXR_OK;
- HX_ASSERT(g_TLS_BRCVThreadType == BRCV_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
- RDPRINTF(B_THREADV, ("BRCVGetStreamHeaderCallback::Func() called! TID=%llu\n",
+ RTPDPRINTF(B_THREADV, ("RTPGetStreamHeaderCallback::Func() called! TID=%llu\n",
MyOSThreadID()));
- res = m_pFeed->GetStreamHeader(m_unStreamNumber);
+ m_pStreamsObject->GetStreamHeader(m_unStreamNumber);
return res;
}
+
/************************************************************************
* IUnknown COM Interface Methods ref: hxcom.h
*/
STDMETHODIMP_(ULONG32)
-BRCVGetStreamHeaderCallback::AddRef()
+RTPGetStreamHeaderCallback::AddRef()
{
return InterlockedIncrement(&m_lRefCount);
}
STDMETHODIMP_(ULONG32)
-BRCVGetStreamHeaderCallback::Release()
+RTPGetStreamHeaderCallback::Release()
{
if (InterlockedDecrement(&m_lRefCount) > 0)
{
@@ -1028,7 +1020,7 @@
}
STDMETHODIMP
-BRCVGetStreamHeaderCallback::QueryInterface(REFIID riid, void** ppvObj)
+RTPGetStreamHeaderCallback::QueryInterface(REFIID riid, void** ppvObj)
{
if (IsEqualIID(riid, IID_IHXCallback))
{
@@ -1048,11 +1040,11 @@
}
/************************************************************************
- * BRCVGetStreamHeaderResponseCallback Methods
+ * RTPGetStreamHeaderResponseCallback Methods
*
* Dispatches a GetStreamHeader response call to a manager thread.
*/
-BRCVGetStreamHeaderResponseCallback::BRCVGetStreamHeaderResponseCallback(
+RTPGetStreamHeaderResponseCallback::RTPGetStreamHeaderResponseCallback(
IHXFormatResponse* \
pRealResponse,
HX_RESULT status,
IHXValues* pHeader)
@@ -1061,15 +1053,15 @@
, m_pHeader(pHeader)
, m_pRealResponse(pRealResponse)
{
- RDPRINTF(B_CONS, ("%p: \
BRCVGetStreamHeaderResponseCallback::BRCVGetStreamHeaderResponseCallback()\n", \
this)); + RTPDPRINTF(B_CONS, ("%p: \
RTPGetStreamHeaderResponseCallback::RTPGetStreamHeaderResponseCallback()\n", this)); \
HX_ASSERT(m_pRealResponse); HX_ADDREF(m_pRealResponse);
HX_ADDREF(m_pHeader);
}
-BRCVGetStreamHeaderResponseCallback::~BRCVGetStreamHeaderResponseCallback()
+RTPGetStreamHeaderResponseCallback::~RTPGetStreamHeaderResponseCallback()
{
- RDPRINTF(B_CONS, ("%p: \
BRCVGetStreamHeaderResponseCallback::~BRCVGetStreamHeaderResponseCallback()\n", \
this)); + RTPDPRINTF(B_CONS, ("%p: \
RTPGetStreamHeaderResponseCallback::~RTPGetStreamHeaderResponseCallback()\n", this)); \
HX_RELEASE(m_pRealResponse); HX_RELEASE(m_pHeader);
}
@@ -1078,16 +1070,16 @@
* IHXCallback Interface Methods ref: hxengin.h
*/
STDMETHODIMP
-BRCVGetStreamHeaderResponseCallback::Func()
+RTPGetStreamHeaderResponseCallback::Func()
{
HX_RESULT res = HXR_OK;
- RDPRINTF(B_THREADV, ("BRCVGetStreamHeaderResponseCallback::Func() called! \
status=%lu TID=%llu\n", + RTPDPRINTF(B_THREADV, \
("RTPGetStreamHeaderResponseCallback::Func() called! status=%lu TID=%llu\n", \
m_lStatus, MyOSThreadID()));
- HX_ASSERT(g_TLS_BRCVThreadType == BRCV_THR_MANAGER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_MANAGER);
- if (g_TLS_BRCVThreadType == BRCV_THR_MANAGER)
+ if (g_TLS_RTPThreadType == RTP_THR_MANAGER)
{
res = m_pRealResponse->StreamHeaderReady(m_lStatus, m_pHeader);
}
@@ -1100,13 +1092,13 @@
* IUnknown COM Interface Methods ref: hxcom.h
*/
STDMETHODIMP_(ULONG32)
-BRCVGetStreamHeaderResponseCallback::AddRef()
+RTPGetStreamHeaderResponseCallback::AddRef()
{
return InterlockedIncrement(&m_lRefCount);
}
STDMETHODIMP_(ULONG32)
-BRCVGetStreamHeaderResponseCallback::Release()
+RTPGetStreamHeaderResponseCallback::Release()
{
if (InterlockedDecrement(&m_lRefCount) > 0)
{
@@ -1118,7 +1110,7 @@
}
STDMETHODIMP
-BRCVGetStreamHeaderResponseCallback::QueryInterface(REFIID riid, void** ppvObj)
+RTPGetStreamHeaderResponseCallback::QueryInterface(REFIID riid, void** ppvObj)
{
if (IsEqualIID(riid, IID_IHXCallback))
{
@@ -1138,40 +1130,40 @@
}
/************************************************************************
- * BRCVStartPacketsCallback Methods
+ * RTPStartPacketsCallback Methods
*
* Dispatches a StartPackets call to a worker.
*/
-BRCVStartPacketsCallback::BRCVStartPacketsCallback(UINT16 unStreamNumber,
- BroadcastReceiverFeed* pFeed)
+RTPStartPacketsCallback::RTPStartPacketsCallback(UINT16 unStreamNumber,
+ RTPBCStreamsObject* \
pStreamsObject) : m_lRefCount(0)
, m_unStreamNumber(unStreamNumber)
- , m_pFeed(pFeed)
+ , m_pStreamsObject(pStreamsObject)
{
- RDPRINTF(B_CONS, ("%p: BRCVStartPacketsCallback::BRCVStartPacketsCallback()\n", \
this));
- HX_ADDREF(m_pFeed);
+ RTPDPRINTF(B_CONS, ("%p: RTPStartPacketsCallback::RTPStartPacketsCallback()\n", \
this)); + HX_ADDREF(m_pStreamsObject);
}
-BRCVStartPacketsCallback::~BRCVStartPacketsCallback()
+RTPStartPacketsCallback::~RTPStartPacketsCallback()
{
- RDPRINTF(B_CONS, ("%p: BRCVStartPacketsCallback::~BRCVStartPacketsCallback()\n", \
this));
- HX_RELEASE(m_pFeed);
+ RTPDPRINTF(B_CONS, ("%p: RTPStartPacketsCallback::~RTPStartPacketsCallback()\n", \
this)); + HX_RELEASE(m_pStreamsObject);
}
/************************************************************************
* IHXCallback Interface Methods ref: hxengin.h
*/
STDMETHODIMP
-BRCVStartPacketsCallback::Func()
+RTPStartPacketsCallback::Func()
{
HX_RESULT res = HXR_OK;
- HX_ASSERT(g_TLS_BRCVThreadType == BRCV_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
- RDPRINTF(B_THREADV, ("BRCVStartPacketsCallback::Func() called! TID=%llu\n",
+ RTPDPRINTF(B_THREADV, ("RTPStartPacketsCallback::Func() called! TID=%llu\n",
MyOSThreadID()));
- res = m_pFeed->StartPackets(m_unStreamNumber);
+ res = m_pStreamsObject->StartPackets(m_unStreamNumber);
return res;
}
@@ -1180,13 +1172,13 @@
* IUnknown COM Interface Methods ref: hxcom.h
*/
STDMETHODIMP_(ULONG32)
-BRCVStartPacketsCallback::AddRef()
+RTPStartPacketsCallback::AddRef()
{
return InterlockedIncrement(&m_lRefCount);
}
STDMETHODIMP_(ULONG32)
-BRCVStartPacketsCallback::Release()
+RTPStartPacketsCallback::Release()
{
if (InterlockedDecrement(&m_lRefCount) > 0)
{
@@ -1198,7 +1190,7 @@
}
STDMETHODIMP
-BRCVStartPacketsCallback::QueryInterface(REFIID riid, void** ppvObj)
+RTPStartPacketsCallback::QueryInterface(REFIID riid, void** ppvObj)
{
if (IsEqualIID(riid, IID_IHXCallback))
{
@@ -1218,40 +1210,40 @@
}
/************************************************************************
- * BRCVStopPacketsCallback Methods
+ * RTPStopPacketsCallback Methods
*
* Dispatches a StopPackets call to a worker.
*/
-BRCVStopPacketsCallback::BRCVStopPacketsCallback(UINT16 unStreamNumber,
- BroadcastReceiverFeed* pFeed)
+RTPStopPacketsCallback::RTPStopPacketsCallback(UINT16 unStreamNumber,
+ RTPBCStreamsObject* pStreamsObject)
: m_lRefCount(0)
, m_unStreamNumber(unStreamNumber)
- , m_pFeed(pFeed)
+ , m_pStreamsObject(pStreamsObject)
{
- RDPRINTF(B_CONS, ("%p: BRCVStopPacketsCallback::BRCVStopPacketsCallback()\n", \
this));
- HX_ADDREF(m_pFeed);
+ RTPDPRINTF(B_CONS, ("%p: RTPStopPacketsCallback::RTPStopPacketsCallback()\n", \
this)); + HX_ADDREF(m_pStreamsObject);
}
-BRCVStopPacketsCallback::~BRCVStopPacketsCallback()
+RTPStopPacketsCallback::~RTPStopPacketsCallback()
{
- RDPRINTF(B_CONS, ("%p: BRCVStopPacketsCallback::~BRCVStopPacketsCallback()\n", \
this));
- HX_RELEASE(m_pFeed);
+ RTPDPRINTF(B_CONS, ("%p: RTPStopPacketsCallback::~RTPStopPacketsCallback()\n", \
this)); + HX_RELEASE(m_pStreamsObject);
}
/************************************************************************
* IHXCallback Interface Methods ref: hxengin.h
*/
STDMETHODIMP
-BRCVStopPacketsCallback::Func()
+RTPStopPacketsCallback::Func()
{
HX_RESULT res = HXR_OK;
- HX_ASSERT(g_TLS_BRCVThreadType == BRCV_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
- RDPRINTF(B_THREADV, ("BRCVStopPacketsCallback::Func() called! TID=%llu\n",
+ RTPDPRINTF(B_THREADV, ("RTPStopPacketsCallback::Func() called! TID=%llu\n",
MyOSThreadID()));
- res = m_pFeed->StopPackets(m_unStreamNumber);
+ res = m_pStreamsObject->StopPackets(m_unStreamNumber);
return res;
}
@@ -1260,13 +1252,13 @@
* IUnknown COM Interface Methods ref: hxcom.h
*/
STDMETHODIMP_(ULONG32)
-BRCVStopPacketsCallback::AddRef()
+RTPStopPacketsCallback::AddRef()
{
return InterlockedIncrement(&m_lRefCount);
}
STDMETHODIMP_(ULONG32)
-BRCVStopPacketsCallback::Release()
+RTPStopPacketsCallback::Release()
{
if (InterlockedDecrement(&m_lRefCount) > 0)
{
@@ -1278,7 +1270,7 @@
}
STDMETHODIMP
-BRCVStopPacketsCallback::QueryInterface(REFIID riid, void** ppvObj)
+RTPStopPacketsCallback::QueryInterface(REFIID riid, void** ppvObj)
{
if (IsEqualIID(riid, IID_IHXCallback))
{
@@ -1298,46 +1290,50 @@
}
+#if 0
/************************************************************************
- * BRCVInitReceiverCallback Methods
+ * RTPInitReceiverCallback Methods
*
* Dispatches an InitReceiver call to a worker.
*/
-BRCVInitReceiverCallback::BRCVInitReceiverCallback(UINT32 ulManagerThreadID,
- UINT32 ulReceiverID)
+RTPInitReceiverCallback::RTPInitReceiverCallback(UINT32 ulManagerThreadID,
+ UINT32 ulReceiverID)
: m_lRefCount(0)
, m_ulReceiverID(ulReceiverID)
, m_ulManagerThreadID(ulManagerThreadID)
{
- RDPRINTF(B_CONS, ("%p: BRCVInitReceiverCallback::BRCVInitReceiverCallback()\n", \
this)); + RTPDPRINTF(B_CONS, ("%p: \
RTPInitReceiverCallback::RTPInitReceiverCallback()\n", this)); }
-BRCVInitReceiverCallback::~BRCVInitReceiverCallback()
+RTPInitReceiverCallback::~RTPInitReceiverCallback()
{
- RDPRINTF(B_CONS, ("%p: BRCVInitReceiverCallback::~BRCVInitReceiverCallback()\n", \
this)); + RTPDPRINTF(B_CONS, ("%p: \
RTPInitReceiverCallback::~RTPInitReceiverCallback()\n", this)); }
/************************************************************************
* IHXCallback Interface Methods ref: hxengin.h
*/
STDMETHODIMP
-BRCVInitReceiverCallback::Func()
+RTPInitReceiverCallback::Func()
{
HX_RESULT res = HXR_OK;
- RDPRINTF(B_THREADV,
- ("BRCVInitReceiverCallback::Func() called! TID=%llu ThreadID=%lu\n",
- MyOSThreadID(), (unsigned long)g_TLS_BRCVThreadID));
+ RTPDPRINTF(B_THREADV,
+ ("RTPInitReceiverCallback::Func() called! TID=%llu ThreadID=%lu\n",
+ MyOSThreadID(), (unsigned long)g_TLS_RTPThreadID));
- if (g_TLS_BRCVThreadType == BRCV_THR_WORKER)
+ if (g_TLS_RTPThreadType == RTP_THR_WORKER)
{
+ //FIXME
+ #if 0
BroadcastReceiverThread* pWorkerThread = \
BroadcastReceiverThread::GetInstance(); pWorkerThread->InitReceiver(m_ulReceiverID);
HX_RELEASE(pWorkerThread);
+ #endif
}
else // manager thread
{
- HX_ASSERT(!"BRCVInitReceiverCallback::Func() in wrong thread!");
+ HX_ASSERT(!"RTPInitReceiverCallback::Func() in wrong thread!");
}
return res;
@@ -1348,13 +1344,13 @@
* IUnknown COM Interface Methods ref: hxcom.h
*/
STDMETHODIMP_(ULONG32)
-BRCVInitReceiverCallback::AddRef()
+RTPInitReceiverCallback::AddRef()
{
return InterlockedIncrement(&m_lRefCount);
}
STDMETHODIMP_(ULONG32)
-BRCVInitReceiverCallback::Release()
+RTPInitReceiverCallback::Release()
{
if (InterlockedDecrement(&m_lRefCount) > 0)
{
@@ -1366,7 +1362,7 @@
}
STDMETHODIMP
-BRCVInitReceiverCallback::QueryInterface(REFIID riid, void** ppvObj)
+RTPInitReceiverCallback::QueryInterface(REFIID riid, void** ppvObj)
{
if (IsEqualIID(riid, IID_IHXCallback))
{
@@ -1384,28 +1380,28 @@
*ppvObj = NULL;
return HXR_NOINTERFACE;
}
-
+#endif
/************************************************************************
- * BRCVStreamDoneResponseCallback Methods
+ * RTPStreamDoneResponseCallback Methods
*
* Dispatches a StreamDone response call to a manager thread.
*/
-BRCVStreamDoneResponseCallback::BRCVStreamDoneResponseCallback(
+RTPStreamDoneResponseCallback::RTPStreamDoneResponseCallback(
IHXFormatResponse* \
pRealResponse,
UINT16 \
unStreamNumber) : m_lRefCount(0)
, m_unStreamNumber(unStreamNumber)
, m_pRealResponse(pRealResponse)
{
- RDPRINTF(B_CONS, ("%p: \
BRCVStreamDoneResponseCallback::BRCVStreamDoneResponseCallback()\n", this)); + \
RTPDPRINTF(B_CONS, ("%p: \
RTPStreamDoneResponseCallback::RTPStreamDoneResponseCallback()\n", this)); \
HX_ASSERT(m_pRealResponse); HX_ADDREF(m_pRealResponse);
}
-BRCVStreamDoneResponseCallback::~BRCVStreamDoneResponseCallback()
+RTPStreamDoneResponseCallback::~RTPStreamDoneResponseCallback()
{
- RDPRINTF(B_CONS, ("%p: \
BRCVStreamDoneResponseCallback::~BRCVStreamDoneResponseCallback()\n", this)); + \
RTPDPRINTF(B_CONS, ("%p: \
RTPStreamDoneResponseCallback::~RTPStreamDoneResponseCallback()\n", this)); \
HX_RELEASE(m_pRealResponse); }
@@ -1413,16 +1409,16 @@
* IHXCallback Interface Methods ref: hxengin.h
*/
STDMETHODIMP
-BRCVStreamDoneResponseCallback::Func()
+RTPStreamDoneResponseCallback::Func()
{
HX_RESULT res = HXR_OK;
- RDPRINTF(B_THREADV, ("BRCVStreamDoneResponseCallback::Func() called! stream=%lu \
TID=%llu\n", + RTPDPRINTF(B_THREADV, ("RTPStreamDoneResponseCallback::Func() \
called! stream=%lu TID=%llu\n", m_unStreamNumber, MyOSThreadID()));
- HX_ASSERT(g_TLS_BRCVThreadType == BRCV_THR_MANAGER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_MANAGER);
- if (g_TLS_BRCVThreadType == BRCV_THR_MANAGER)
+ if (g_TLS_RTPThreadType == RTP_THR_MANAGER)
{
res = m_pRealResponse->StreamDone(m_unStreamNumber);
@@ -1436,13 +1432,13 @@
* IUnknown COM Interface Methods ref: hxcom.h
*/
STDMETHODIMP_(ULONG32)
-BRCVStreamDoneResponseCallback::AddRef()
+RTPStreamDoneResponseCallback::AddRef()
{
return InterlockedIncrement(&m_lRefCount);
}
STDMETHODIMP_(ULONG32)
-BRCVStreamDoneResponseCallback::Release()
+RTPStreamDoneResponseCallback::Release()
{
if (InterlockedDecrement(&m_lRefCount) > 0)
{
@@ -1454,7 +1450,7 @@
}
STDMETHODIMP
-BRCVStreamDoneResponseCallback::QueryInterface(REFIID riid, void** ppvObj)
+RTPStreamDoneResponseCallback::QueryInterface(REFIID riid, void** ppvObj)
{
if (IsEqualIID(riid, IID_IHXCallback))
{
@@ -1474,33 +1470,34 @@
}
+#if 0
/************************************************************************
- * BRCVPurgeReceiversCallback Methods
+ * RTPPurgeReceiversCallback Methods
*
* Dispatches a PurgeReceivers call to a worker.
*/
-BRCVPurgeReceiversCallback::BRCVPurgeReceiversCallback()
+RTPPurgeReceiversCallback::RTPPurgeReceiversCallback()
: m_lRefCount(0)
{
- RDPRINTF(B_CONS, ("%p: \
BRCVPurgeReceiversCallback::BRCVPurgeReceiversCallback()\n", this)); + \
RTPDPRINTF(B_CONS, ("%p: RTPPurgeReceiversCallback::RTPPurgeReceiversCallback()\n", \
this)); }
-BRCVPurgeReceiversCallback::~BRCVPurgeReceiversCallback()
+RTPPurgeReceiversCallback::~RTPPurgeReceiversCallback()
{
- RDPRINTF(B_CONS, ("%p: \
BRCVPurgeReceiversCallback::~BRCVPurgeReceiversCallback()\n", this)); + \
RTPDPRINTF(B_CONS, ("%p: RTPPurgeReceiversCallback::~RTPPurgeReceiversCallback()\n", \
this)); }
/************************************************************************
* IHXCallback Interface Methods ref: hxengin.h
*/
STDMETHODIMP
-BRCVPurgeReceiversCallback::Func()
+RTPPurgeReceiversCallback::Func()
{
HX_RESULT res = HXR_OK;
- HX_ASSERT(g_TLS_BRCVThreadType == BRCV_THR_WORKER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_WORKER);
- RDPRINTF(B_THREADV, ("BRCVPurgeReceiversCallback::Func() called! TID=%llu\n",
+ RTPDPRINTF(B_THREADV, ("RTPPurgeReceiversCallback::Func() called! TID=%llu\n",
MyOSThreadID()));
BroadcastReceiverThread* pWorkerThread = BroadcastReceiverThread::GetInstance();
@@ -1514,13 +1511,13 @@
* IUnknown COM Interface Methods ref: hxcom.h
*/
STDMETHODIMP_(ULONG32)
-BRCVPurgeReceiversCallback::AddRef()
+RTPPurgeReceiversCallback::AddRef()
{
return InterlockedIncrement(&m_lRefCount);
}
STDMETHODIMP_(ULONG32)
-BRCVPurgeReceiversCallback::Release()
+RTPPurgeReceiversCallback::Release()
{
if (InterlockedDecrement(&m_lRefCount) > 0)
{
@@ -1532,7 +1529,7 @@
}
STDMETHODIMP
-BRCVPurgeReceiversCallback::QueryInterface(REFIID riid, void** ppvObj)
+RTPPurgeReceiversCallback::QueryInterface(REFIID riid, void** ppvObj)
{
if (IsEqualIID(riid, IID_IHXCallback))
{
Index: rtpbcplin.cpp
===================================================================
RCS file: /cvsroot/server/broadcast/transport/rtp/recv/Attic/rtpbcplin.cpp,v
retrieving revision 1.1.2.5
retrieving revision 1.1.2.6
diff -u -d -r1.1.2.5 -r1.1.2.6
--- rtpbcplin.cpp 28 Oct 2011 15:40:29 -0000 1.1.2.5
+++ rtpbcplin.cpp 28 Oct 2011 21:45:40 -0000 1.1.2.6
@@ -78,7 +78,7 @@
* Globals
*/
// thread local storage
-__TLS RTPThreadType g_TLS_threadType = RTP_THR_UNKNOWN;
+__TLS RTPThreadType g_TLS_RTPThreadType = RTP_THR_UNKNOWN;
__TLS UINT32 g_TLS_RTPThreadID = 0;
__TLS IUnknown* g_TLS_pContext = NULL;
__TLS IHXCommonClassFactory* g_TLS_pClassFactory = NULL;
@@ -395,7 +395,7 @@
m_bSourceAddressFilter = ulVar;
}
- if (!m_pDirMgr && m_bRTPLicensed && bEmulateEncoder && g_TLS_threadType == \
RTP_THR_MANAGER) + if (!m_pDirMgr && m_bRTPLicensed && bEmulateEncoder && \
g_TLS_RTPThreadType == RTP_THR_MANAGER) {
// The directory manager is a singleton that runs only in the manager thread
if ((m_pDirMgr = new RTPDirectoryManager(this)))
@@ -449,7 +449,7 @@
}
HXBOOL bStartWatchNeeded = FALSE;
- if (!m_pDirMgr && m_bRTPLicensed && bEmulateEncoder && g_TLS_threadType == \
RTP_THR_MANAGER) + if (!m_pDirMgr && m_bRTPLicensed && bEmulateEncoder && \
g_TLS_RTPThreadType == RTP_THR_MANAGER) {
// The directory manager is a singleton that runs only in the manager thread
if (m_pDirMgr = new RTPDirectoryManager(this))
Index: rtpbcobj.cpp
===================================================================
RCS file: /cvsroot/server/broadcast/transport/rtp/recv/Attic/rtpbcobj.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
--- rtpbcobj.cpp 28 Oct 2011 15:40:29 -0000 1.1.2.4
+++ rtpbcobj.cpp 28 Oct 2011 21:45:40 -0000 1.1.2.5
@@ -278,12 +278,12 @@
g_TLS_RTPThreadID = InterlockedIncrement(&g_ulNextRTPThreadID) - 1;
if (g_TLS_RTPThreadID == 1)
{
- g_TLS_threadType = RTP_THR_MANAGER;
+ g_TLS_RTPThreadType = RTP_THR_MANAGER;
RTPDPRINTF(B_INFO, ("I'm the manager thread! (RTP Live thread # %d)\n", \
g_TLS_RTPThreadID)); }
else
{
- g_TLS_threadType = RTP_THR_WORKER;
+ g_TLS_RTPThreadType = RTP_THR_WORKER;
RTPDPRINTF(B_INFO, ("I'm a worker thread! (RTP Live thread # %d)\n", \
g_TLS_RTPThreadID)); }
@@ -543,7 +543,7 @@
RTPBroadcastObject::DoesExist(const char* pPath,
IHXFileExistsResponse* pResponse)
{
- HX_ASSERT(g_TLS_threadType == RTP_THR_MANAGER);
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_MANAGER);
// Dispatch the URL to a worker thread!
HX_RESULT res = DispatchURL(pPath);
@@ -556,11 +556,7 @@
else
{
// URL dispatch failed.
- // Handle the feed here in the RTP Manager thread.
- HX_ASSERT(!"What happened??");
- RTPBCStreamsObject* pRTPBCStreamsObject = new RTPBCStreamsObject(m_pContext, \
m_pOptions);
- g_pFileDict->AddStreamsObject(pPath, pRTPBCStreamsObject);
- pRTPBCStreamsObject->DoesExist(pPath, pResponse);
+ pResponse->DoesExistDone(FALSE);
}
return HXR_OK;
@@ -570,7 +566,9 @@
HX_RESULT
RTPBroadcastObject::DispatchURL(const char* pPath)
{
- HX_ASSERT(g_TLS_threadType == RTP_THR_MANAGER);
+ RTPDPRINTF(B_INFO, ("RTPBroadcastObject::DispatchURL this=%p url=%s\n", this, \
pPath)); +
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_MANAGER);
UINT32 ulSDPOwnerID = 0;
if (FAILED(GlobalRTPBroadcastFormat()->FindOwnerThread(pPath, &ulSDPOwnerID)))
@@ -585,6 +583,9 @@
}
+ // We always send the sdp over even if we've already processed it since
+ // the feed might have timed-out and we need the worker to reinitialize
+ // it if so.
const char* pNameCopy = new_string(pPath);
SDPFileAddedCallback* pCB = new SDPFileAddedCallback(pNameCopy);
pCB->AddRef();
@@ -626,24 +627,32 @@
STDMETHODIMP
RTPBroadcastObject::GetFileHeader()
{
- IHXValues* pHeader = NULL;
+ return DispatchGetFileHeader();
+}
- if(m_pStreamsObject->GetFileHeader(pHeader) == HXR_OK)
- {
- // Pass the file header to the server
- m_pFFResponse->FileHeaderReady(HXR_OK, pHeader);
- }
- else
+HX_RESULT
+RTPBroadcastObject::DispatchGetFileHeader(void)
+{
+ RTPDPRINTF(B_INFO, ("RTPBroadcastObject::DispatchGetFileHeader this=%p\n", \
this)); +
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_MANAGER);
+
+ UINT32 ulSDPOwnerID = 0;
+ HX_RESULT res = GlobalRTPBroadcastFormat()->FindOwnerThread(
+ m_pStreamsObject->GetRequestedPath(), &ulSDPOwnerID);
+ if (SUCCEEDED(res))
{
- m_pFFResponse->FileHeaderReady(HXR_FAIL, NULL);
+ RTPGetFileHeaderCallback* pCB = new \
RTPGetFileHeaderCallback(m_pStreamsObject); + pCB->AddRef();
+ res = g_TLS_pWTManager->SendWorkerMessage(HX_WORKER_TYPE_LIVE_INGRESS,
+ ulSDPOwnerID,
+ (IHXCallback*)pCB);
+ HX_RELEASE(pCB);
}
- HX_RELEASE(pHeader);
-
- return HXR_OK;
+ return res;
}
-
/****************************************************************************
* IHXBroadcastFormatObject::GetStreamHeader ref: hxformt.h
*
@@ -656,23 +665,25 @@
HX_RESULT
RTPBroadcastObject::GetStreamHeader(UINT16 unStreamNumber)
{
- IHXValues* pHeader = NULL;
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_MANAGER);
- if(m_pStreamsObject->GetStreamHeader(unStreamNumber, pHeader) == HXR_OK)
- {
- // Pass the stream header to the server
- m_pFFResponse->StreamHeaderReady(HXR_OK, pHeader);
- }
- else
+ UINT32 ulWorkerID = 0;
+ HX_RESULT res = GlobalRTPBroadcastFormat()->FindOwnerThread(
+ m_pStreamsObject->GetRequestedPath(), &ulWorkerID);
+ if (SUCCEEDED(res))
{
- m_pFFResponse->StreamHeaderReady(HXR_FAIL, NULL);
+ RTPGetStreamHeaderCallback* pCB = new RTPGetStreamHeaderCallback(
+ unStreamNumber, m_pStreamsObject);
+ pCB->AddRef();
+ HX_RESULT res = g_TLS_pWTManager->SendWorkerMessage(
+ HX_WORKER_TYPE_LIVE_INGRESS, ulWorkerID, (IHXCallback*)pCB);
+ HX_RELEASE(pCB);
}
- HX_RELEASE(pHeader);
-
- return HXR_OK;
+ return res;
}
+
/****************************************************************************
* IHXBroadcastFormatObject::StartPackets ref: hxformt.h
*
@@ -685,8 +696,31 @@
STDMETHODIMP
RTPBroadcastObject::StartPackets(UINT16 unStreamNumber)
{
- m_pStreamsObject->StartPackets(unStreamNumber);
- return HXR_OK;
+ return DispatchStartPackets(unStreamNumber);
+}
+
+
+HX_RESULT
+RTPBroadcastObject::DispatchStartPackets(UINT16 unStreamNumber)
+{
+ RTPDPRINTF(B_INFO, ("RTPBroadcastObject::DispatchStartPackets this=%p\n", \
this)); +
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_MANAGER);
+
+ UINT32 ulWorkerID = 0;
+ HX_RESULT res = GlobalRTPBroadcastFormat()->FindOwnerThread(
+ m_pStreamsObject->GetRequestedPath(), &ulWorkerID);
+ if (SUCCEEDED(res))
+ {
+ StartPacketsCallback* pCB = new StartPacketsCallback(m_pStreamsObject, \
unStreamNumber); + pCB->AddRef();
+ res = g_TLS_pWTManager->SendWorkerMessage(HX_WORKER_TYPE_LIVE_INGRESS,
+ ulWorkerID,
+ (IHXCallback*)pCB);
+ HX_RELEASE(pCB);
+ }
+
+ return res;
}
@@ -698,10 +732,31 @@
STDMETHODIMP
RTPBroadcastObject::StopPackets(UINT16 unStreamNumber)
{
- m_pStreamsObject->StopAllStreams(FALSE);
- return HXR_OK;
+ return DispatchStopAllStreams(FALSE);
}
+HX_RESULT
+RTPBroadcastObject::DispatchStopAllStreams(HXBOOL bFlushPackets)
+{
+ RTPDPRINTF(B_INFO, ("RTPBroadcastObject::DispatchStopPackets this=%p\n", this));
+
+ HX_ASSERT(g_TLS_RTPThreadType == RTP_THR_MANAGER);
+
+ UINT32 ulWorkerID = 0;
+ HX_RESULT res = GlobalRTPBroadcastFormat()->FindOwnerThread(
+ m_pStreamsObject->GetRequestedPath(), &ulWorkerID);
+ if (SUCCEEDED(res))
+ {
+ StopAllStreamsCallback* pCB = new StopAllStreamsCallback(m_pStreamsObject, \
bFlushPackets); + pCB->AddRef();
+ res = g_TLS_pWTManager->SendWorkerMessage(HX_WORKER_TYPE_LIVE_INGRESS,
+ ulWorkerID,
+ (IHXCallback*)pCB);
+ HX_RELEASE(pCB);
+ }
+
+ return res;
+}
// IHXFileSystemObject Interface Methods
@@ -712,7 +767,7 @@
*/
STDMETHODIMP
RTPBroadcastObject::GetFileSystemInfo(REF(const char*) /*OUT*/ pShortName,
- REF(const char*) /*OUT*/ pProtocol)
+ REF(const char*) /*OUT*/ pProtocol)
{
pShortName = "rn-rtpencoder";
pProtocol = "rtpencoder";
_______________________________________________
Server-cvs mailing list
Server-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/server-cvs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic