本文整理汇总了C++中RNOK函数的典型用法代码示例。如果您正苦于以下问题:C++ RNOK函数的具体用法?C++ RNOK怎么用?C++ RNOK使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了RNOK函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ASSERT
ErrVal Frame::removeFieldBuffer( PicType ePicType )
{
ASSERT( m_ePicType==FRAME );
if( ePicType==TOP_FIELD )
{
if( NULL != m_pcFrameTopField )
{
// remove the default yuv memory from buffers
RNOK( m_pcFrameTopField->uninit () );
RNOK( m_pcFrameTopField->destroy() );
m_pcFrameTopField = NULL;
}
}
else if( ePicType==BOT_FIELD )
{
if( NULL != m_pcFrameBotField )
{
// remove the default yuv memory from buffers
RNOK( m_pcFrameBotField->uninit () );
RNOK( m_pcFrameBotField->destroy() );
m_pcFrameBotField = NULL;
}
}
return Err::m_nOK;
}
示例2: RNOK
ErrVal
MVCScalableModifyCode::WriteTrailingBits()
{
RNOK( WriteFlag( 1 ) );
RNOK( WriteAlignZero() );
return Err::m_nOK;
}
示例3: ROT
ErrVal
ReconstructionBypass::xPad8x8Blk_MbAff( YuvMbBufferExtension* pcBuffer, UInt ui8x8Blk, Bool bV0, Bool bV1, Bool bH, Bool bC0, Bool bC1 )
{
Bool bSwitch = ( !bV0 && bV1 && bH ) || ( !bV0 && !bH && !bC0 && ( bV1 || bC1 ) );
Bool bDouble = ( bV0 && bV1 ) || ( ( bV0 || bC0 ) && !bH && ( bV1 || bC1 ) );
ROT( bSwitch && bDouble );
Bool bFromAbove = ( ui8x8Blk < 2 );
Bool bFromLeft = ( ui8x8Blk % 2 == 0 );
B8x8Idx cIdx( (Par8x8)ui8x8Blk );
if( bDouble )
{
RNOK( xPadBlock_MbAff( pcBuffer, cIdx, bV0, bH, bC0, true, bFromAbove, bFromLeft ) );
RNOK( xPadBlock_MbAff( pcBuffer, cIdx, bV1, bH, bC1, true, !bFromAbove, bFromLeft ) );
}
else if( bSwitch )
{
RNOK( xPadBlock_MbAff( pcBuffer, cIdx, bV1, bH, bC1, false, !bFromAbove, bFromLeft ) );
}
else
{
RNOK( xPadBlock_MbAff( pcBuffer, cIdx, bV0, bH, bC0, false, bFromAbove, bFromLeft ) );
}
return Err::m_nOK;
}
示例4: RNOK
ErrVal MbDecoder::xDecodeMbIntra4x4( MbDataAccess& rcMbDataAccess,
IntYuvMbBuffer& cYuvMbBuffer,
IntYuvMbBuffer& rcPredBuffer )
{
Int iStride = cYuvMbBuffer.getLStride();
MbTransformCoeffs& rcCoeffs = m_cTCoeffs;
for( B4x4Idx cIdx; cIdx.isLegal(); cIdx++ )
{
rcMbDataAccess.getMbData().intraPredMode( cIdx ) = rcMbDataAccess.decodeIntraPredMode( cIdx );
XPel* puc = cYuvMbBuffer.getYBlk( cIdx );
UInt uiPredMode = rcMbDataAccess.getMbData().intraPredMode( cIdx );
RNOK( m_pcIntraPrediction->predictLumaBlock( puc, iStride, uiPredMode, cIdx ) );
rcPredBuffer.loadLuma( cYuvMbBuffer, cIdx );
if( rcMbDataAccess.getMbData().is4x4BlkCoded( cIdx ) )
{
RNOK( m_pcTransform->invTransform4x4Blk( puc, iStride, rcCoeffs.get( cIdx ) ) );
}
}
UInt uiChromaCbp = rcMbDataAccess.getMbData().getCbpChroma4x4();
RNOK( xDecodeChroma( rcMbDataAccess, cYuvMbBuffer, rcPredBuffer, uiChromaCbp, true ) );
return Err::m_nOK;
}
示例5: RNOK
// ----------------------------------------------------------------------
//
// FUNCTION: AddMultiviewRefsToList
//
// INPUTS: recPicBufUnitList: A list of refernce pictures potentially
// containing multiview references.
// rcList: A RefFrameList object to add multiview references to.
// refDirection: Direction of references to add to rcList.
//
// PURPOSE: This function goes through each reference in recPicBufUnitList,
// finds all multiview references with the given refDirection,
// and adds them to rcList.
//
// MODIFIED: Tue Mar 14, 2006
//
// ----------------------------------------------------------------------
// modified to be a member of RecPicBuffer 26 Dec, 2006
// and the format has also been adjusted (AddMultiviewRef)
// Simplified again for JVT-V043 7 Feb. 2007
// and some cleanup
ErrVal
RecPicBuffer::AddMultiviewRef( RecPicBufUnitList& recPicBufUnitList,
RefFrameList& rcList, const int maxListSize,
const MultiviewReferenceDirection refDirection, SliceHeader& rcSliceheader,
QuarterPelFilter* pcQuarterPelFilter) {
RefFrameList tempList;
RecPicBufUnitList::iterator iter;
for (iter = recPicBufUnitList.begin();iter != recPicBufUnitList.end(); iter++) {
if ( refDirection == (*iter)->GetMultiviewReferenceDirection() ) {
if(m_pcPicEncoder->derivation_Inter_View_Flag((*iter)->getViewId(), rcSliceheader)){ //JVT-W056 Samsung
RecPicBufUnit* bufUnitToAdd = (*iter);
if( 1)
{
RNOK( bufUnitToAdd->getRecFrame()->initHalfPel() );
}
if( ! bufUnitToAdd->getRecFrame()->isExtended() )
{
RNOK( bufUnitToAdd->getRecFrame()->extendFrame( pcQuarterPelFilter, FRAME, rcSliceheader.getSPS().getFrameMbsOnlyFlag() ));
}
rcList.add( bufUnitToAdd->getRecFrame()->getPic(rcSliceheader.getPicType()) );
}
}
}
return Err::m_nOK;
}
示例6: ASSERT
ErrVal
PictureParameterSet::xReadFrext( HeaderSymbolReadIf* pcReadIf )
{
const CommonMainH264* pcMainH264 = CommonMain::getMainH264();
ASSERT(pcMainH264 != NULL);
const CommonElt* pcCurrent = pcMainH264->getEltCurrent();
const CommonSyntax* pcSyntax;
const CommonControl* pcControlIf0 = pcCurrent->addControl("if" , "more_rbsp_data", pcReadIf->moreRBSPData());
ROTRS( ! pcReadIf->moreRBSPData(), Err::m_nOK );
pcSyntax = pcCurrent->addSyntax("transform_8x8_mode_flag", "u(1)");
RNOK ( pcReadIf->getFlag ( m_bTransform8x8ModeFlag, "PPS: transform_8x8_mode_flag" ) );
pcSyntax->setValue(m_bTransform8x8ModeFlag);
pcSyntax = pcCurrent->addSyntax("pic_scaling_matrix_present_flag", "u(1)");
RNOK ( pcReadIf->getFlag ( m_bPicScalingMatrixPresentFlag, "PPS: pic_scaling_matrix_present_flag" ) );
pcSyntax->setValue(m_bPicScalingMatrixPresentFlag);
const CommonControl* pcControlIf1 = pcCurrent->addControl("if" , "pic_scaling_matrix_present_flag", m_bPicScalingMatrixPresentFlag);
if( m_bPicScalingMatrixPresentFlag )
{
pcMainH264->setEltCurrent(pcControlIf1);
RNOK( m_cPicScalingMatrix.read( pcReadIf, m_bTransform8x8ModeFlag ) );
pcMainH264->setEltCurrent(pcCurrent);
}
pcSyntax = pcCurrent->addSyntax("second_chroma_qp_index_offset", "se(v)");
RNOK ( pcReadIf->getSvlc ( m_iSecondChromaQpIndexOffset, "PPS: second_chroma_qp_index_offset" ) );
pcSyntax->setValue(m_iSecondChromaQpIndexOffset);
ROT ( m_iSecondChromaQpIndexOffset < -12 || m_iSecondChromaQpIndexOffset > 12 );
return Err::m_nOK;
}
示例7: RNOK
ErrVal ControlMngH264AVCDecoder::initSliceForReading( const SliceHeader& rcSH )
{
m_uiCurrLayer = rcSH.getLayerId();
MbSymbolReadIf* pcMbSymbolReadIf;
if( rcSH.getPPS().getEntropyCodingModeFlag() )
{
pcMbSymbolReadIf = m_pcCabacReader;
}
else
{
pcMbSymbolReadIf = m_pcUvlcReader;
}
if ( rcSH.getTrueSlice())
{
RNOK( pcMbSymbolReadIf->startSlice( rcSH ) );
}
RNOK( m_pcMbParser->initSlice( pcMbSymbolReadIf ) );
#ifdef LF_INTERLACE
m_pcSliceHeader = &rcSH;
#endif
return Err::m_nOK;
}
示例8: ROFRS
ErrVal MbCoder::xWriteIntraPredModes( MbDataAccess& rcMbDataAccess )
{
ROFRS( rcMbDataAccess.getMbData().isIntra(), Err::m_nOK );
if( rcMbDataAccess.getMbData().isIntra4x4() )
{
if( rcMbDataAccess.getSH().getPPS().getTransform8x8ModeFlag() )
{
RNOK( m_pcMbSymbolWriteIf->transformSize8x8Flag( rcMbDataAccess ) );
}
if( rcMbDataAccess.getMbData().isTransformSize8x8() )
{
for( B8x8Idx cIdx; cIdx.isLegal(); cIdx++ )
{
RNOK( m_pcMbSymbolWriteIf->intraPredModeLuma( rcMbDataAccess, cIdx ) );
}
}
else
{
for( S4x4Idx cIdx; cIdx.isLegal(); cIdx++ )
{
RNOK( m_pcMbSymbolWriteIf->intraPredModeLuma( rcMbDataAccess, cIdx ) );
}
}
}
if( rcMbDataAccess.getMbData().isIntra4x4() || rcMbDataAccess.getMbData().isIntra16x16() )
{
RNOK( m_pcMbSymbolWriteIf->intraPredModeChroma( rcMbDataAccess ) );
}
return Err::m_nOK;
}
示例9: AOT_DBG
ErrVal MbDataCtrl::init( const SequenceParameterSet& rcSPS )
{
AOT_DBG( m_bInitDone );
UInt uiSize = rcSPS.getMbInFrame();
ROT( 0 == uiSize );
if( m_uiSize == uiSize )
{
RNOK( xResetData() );
}
else
{
RNOK( xDeleteData() );
RNOK( xCreateData( uiSize ) );
m_uiSize = uiSize;
}
m_iMbPerLine = rcSPS.getFrameWidthInMbs();
RNOK( m_cpDFPBuffer.init( uiSize+1 ) );
m_cpDFPBuffer.clear();
m_bInitDone = true;
return Err::m_nOK;
}
示例10: ROF
ErrVal ControlMngH264AVCDecoder::initMbForDecoding( MbDataAccess*& rpcMbDataAccess,UInt uiMbIndex)
#endif
{
ROF( m_uiCurrLayer < MAX_LAYERS );
#ifndef LF_INTERLACE
UInt uiMbY, uiMbX;
uiMbY = uiMbIndex / m_auiMbXinFrame[m_uiCurrLayer];
uiMbX = uiMbIndex - uiMbY * m_auiMbXinFrame[m_uiCurrLayer];
#endif
RNOK( m_pcMbDataCtrl ->initMb( rpcMbDataAccess, uiMbY, uiMbX ) );
#ifdef LF_INTERLACE
RNOK( m_apcYuvFullPelBufferCtrl[m_uiCurrLayer]->initMb( uiMbY, uiMbX, bMbAFF ) ); // for future use
#else //!LF_INTERLACE
RNOK( m_apcYuvFullPelBufferCtrl[m_uiCurrLayer]->initMb( uiMbY, uiMbX ) );
#endif //LF_INTERLACE
#ifdef LF_INTERLACE
RNOK( m_pcMotionCompensation ->initMb( uiMbY, uiMbX, *rpcMbDataAccess ) ) ;
#else
RNOK( m_pcMotionCompensation ->initMb( uiMbY, uiMbX ) ) ;
#endif
return Err::m_nOK;
}
示例11: while
ErrVal
MVCScalableModifyCode::WritePayloadHeader( enum h264::SEI::MessageType eType, UInt uiSize )
{
//type
{
UInt uiTemp = eType;
UInt uiByte = 0xFF;
while( 0xFF == uiByte )
{
uiByte = (0xFF > uiTemp) ? uiTemp : 0xff;
uiTemp -= 0xFF;
RNOK( WriteCode( uiByte, 8 ) );
}
}
// size
{
UInt uiTemp = uiSize;
UInt uiByte = 0xFF;
while( 0xFF == uiByte )
{
uiByte = (0xFF > uiTemp) ? uiTemp : 0xff;
uiTemp -= 0xFF;
RNOK( WriteCode( uiByte, 8 ) );
}
}
return Err::m_nOK;
}
示例12: RNOK
ErrVal VUI::LayerInfo::write( HeaderSymbolWriteIf* pcWriteIf ) const
{
RNOK( pcWriteIf->writeCode( m_uiDependencyID, 3, "VUI: dependency_id" ) );
RNOK( pcWriteIf->writeCode( m_uiQualityId, 4, "VUI: quality_level" ) );
RNOK( pcWriteIf->writeCode( m_uiTemporalId, 3, "VUI: temporal_level" ) );
return Err::m_nOK;
}
示例13: RNOK
ErrVal CabaEncoder::writeExGolombLevel( UInt uiSymbol, CabacContextModel& rcCCModel )
{
if( uiSymbol )
{
RNOK( writeSymbol( 1, rcCCModel ) );
UInt uiCount = 0;
Bool bNoExGo = (uiSymbol < 13);
while( --uiSymbol && ++uiCount < 13 )
{
RNOK( writeSymbol( 1, rcCCModel ) );
}
if( bNoExGo )
{
RNOK( writeSymbol( 0, rcCCModel ) );
}
else
{
RNOK( writeEpExGolomb( uiSymbol, 0 ) );
}
}
else
{
RNOK( writeSymbol( 0, rcCCModel ) );
}
return Err::m_nOK;
}
示例14: RNOK
ErrVal ControlMngH264AVCDecoder::initSlice( SliceHeader& rcSH, ProcessingState eProcessingState )
{
m_uiCurrLayer = rcSH.getLayerId();
m_pcMbDataCtrl = rcSH.getFrameUnit()->getMbDataCtrl();
RNOK( m_pcMbDataCtrl->initSlice( rcSH, eProcessingState, true, NULL ) );
RNOK( m_pcSampleWeighting->initSlice( rcSH ) );
if( PARSE_PROCESS == eProcessingState && rcSH.getTrueSlice())//TMM_EC
{
MbSymbolReadIf* pcMbSymbolReadIf;
if( rcSH.getPPS().getEntropyCodingModeFlag() )
{
pcMbSymbolReadIf = m_pcCabacReader;
}
else
{
pcMbSymbolReadIf = m_pcUvlcReader;
}
RNOK( pcMbSymbolReadIf->startSlice( rcSH ) );
RNOK( m_pcMbParser->initSlice( pcMbSymbolReadIf ) );
}
if( DECODE_PROCESS == eProcessingState)
{
RNOK( m_pcMotionCompensation->initSlice( rcSH ) );
}
return Err::m_nOK;
}
示例15: ROF
ErrVal
RecPicBuffer::xStorePicture( RecPicBufUnit* pcRecPicBufUnit,
PicBufferList& rcOutputList,
PicBufferList& rcUnusedList,
SliceHeader* pcSliceHeader,
Bool bTreatAsIdr )
{
ROF( pcRecPicBufUnit == m_pcCurrRecPicBufUnit );
if( bTreatAsIdr )
{
RNOK( xClearOutputAll( rcOutputList, rcUnusedList ) );
m_cUsedRecPicBufUnitList.push_back( pcRecPicBufUnit );
}
else
{
m_cUsedRecPicBufUnitList.push_back( pcRecPicBufUnit );
if( !pcSliceHeader->getInterViewRef()) //
{
RNOK( xUpdateMemory( pcSliceHeader ) );
}
RNOK( xOutput( rcOutputList, rcUnusedList ) );
}
RNOK( xDumpRecPicBuffer() );
m_pcCurrRecPicBufUnit = m_cFreeRecPicBufUnitList.popFront();
return Err::m_nOK;
}