当前位置: 首页>>代码示例>>C++>>正文


C++ DialogTracker::getReadOnlyMediaDescriptor方法代码示例

本文整理汇总了C++中DialogTracker::getReadOnlyMediaDescriptor方法的典型用法代码示例。如果您正苦于以下问题:C++ DialogTracker::getReadOnlyMediaDescriptor方法的具体用法?C++ DialogTracker::getReadOnlyMediaDescriptor怎么用?C++ DialogTracker::getReadOnlyMediaDescriptor使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在DialogTracker的用法示例。


在下文中一共展示了DialogTracker::getReadOnlyMediaDescriptor方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: allocateNewDialogTrackerBasedOnReference

DialogTracker* SessionContext::allocateNewDialogTrackerBasedOnReference( const UtlString& discriminatingTag )
{
   DialogTracker* pNewDialogTracker = 0;
   pNewDialogTracker = new DialogTracker( *mpReferenceDialogTracker, discriminatingTag );
   if( pNewDialogTracker )
   {
      addDialogTrackerToList( discriminatingTag, pNewDialogTracker );
      OsSysLog::add(FAC_NAT, PRI_DEBUG, "SessionContext[%s]::allocateNewDialogTrackerBasedOnReference: allocated DialogTracker #%zd for tag %s",
                                         mHandle.data(), getNumberOfTrackedDialogs(), discriminatingTag.data() );

      // We have a new tracker that is utilizing the same Media RelaySessions as the
      // reference.  Increment their link count to track the number of DialogTrackers using
      // them and avoid premature de-allocations.
      size_t index;
      size_t numSavedMediaDescriptors = pNewDialogTracker->getNumberOfMediaDescriptors();
      for( index = 0; index < numSavedMediaDescriptors; index++ )
      {
         const MediaDescriptor* pMediaDescriptor;
         pMediaDescriptor = pNewDialogTracker->getReadOnlyMediaDescriptor( index );
         tMediaRelayHandle tempMediaRelayHandle;

         if( ( tempMediaRelayHandle = pMediaDescriptor->getTentativeInitialMediaRelayHandle() ) != INVALID_MEDIA_RELAY_HANDLE )
         {
            mpMediaRelay->incrementLinkCountOfMediaRelaySession( tempMediaRelayHandle );
         }

         if( ( tempMediaRelayHandle = pMediaDescriptor->getTentativeNonInitialMediaRelayHandle() ) != INVALID_MEDIA_RELAY_HANDLE )
         {
            mpMediaRelay->incrementLinkCountOfMediaRelaySession( tempMediaRelayHandle );
         }

         if( ( tempMediaRelayHandle = pMediaDescriptor->getCurrentMediaRelayHandle() ) != INVALID_MEDIA_RELAY_HANDLE )
         {
            mpMediaRelay->incrementLinkCountOfMediaRelaySession( tempMediaRelayHandle );
         }
      }
   }
   return pNewDialogTracker;
}
开发者ID:LordGaav,项目名称:sipxecs,代码行数:39,代码来源:SessionContext.cpp


注:本文中的DialogTracker::getReadOnlyMediaDescriptor方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。