Changeset 1412 in 3DVCSoftware for branches/HTM-16.2-dev/source/Lib/TLibEncoder/TEncCfg.h
- Timestamp:
- 12 Apr 2018, 11:12:21 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-16.2-dev/source/Lib/TLibEncoder/TEncCfg.h
r1405 r1412 4 4 * granted under this license. 5 5 * 6 * Copyright (c) 2010-201 6, ITU/ISO/IEC6 * Copyright (c) 2010-2017, ITU/ISO/IEC 7 7 * All rights reserved. 8 8 * … … 62 62 Int m_POC; 63 63 Int m_QPOffset; 64 #if W0038_CQP_ADJ 64 #if X0038_LAMBDA_FROM_QP_CAPABILITY 65 Double m_QPOffsetModelOffset; 66 Double m_QPOffsetModelScale; 67 #endif 65 68 Int m_CbQPoffset; 66 69 Int m_CrQPoffset; 67 #endif68 70 Double m_QPFactor; 69 71 Int m_tcOffsetDiv2; … … 93 95 : m_POC(-1) 94 96 , m_QPOffset(0) 95 #if W0038_CQP_ADJ 97 #if X0038_LAMBDA_FROM_QP_CAPABILITY 98 , m_QPOffsetModelOffset(0) 99 , m_QPOffsetModelScale(0) 100 #endif 96 101 , m_CbQPoffset(0) 97 102 , m_CrQPoffset(0) 98 #endif99 103 , m_QPFactor(0) 100 104 , m_tcOffsetDiv2(0) … … 155 159 Bool m_printFrameMSE; 156 160 Bool m_printSequenceMSE; 161 #if JVET_F0064_MSSSIM 162 Bool m_printMSSSIM; 163 #endif 157 164 Bool m_cabacZeroWordPaddingEnabled; 158 165 … … 174 181 UInt m_uiIntraPeriod; // TODO: make this an Int - it can be -1! 175 182 UInt m_uiDecodingRefreshType; ///< the type of decoding refresh employed for the random access. 183 #if JCTVC_Y0038_PARAMS 184 Bool m_bReWriteParamSetsFlag; 185 #endif 186 176 187 Int m_iGOPSize; 177 188 #if NH_MV … … 186 197 Int m_iQP; // if (AdaptiveQP == OFF) 187 198 199 #if X0038_LAMBDA_FROM_QP_CAPABILITY 200 Int m_intraQPOffset; ///< QP offset for intra slice (integer) 201 Int m_lambdaFromQPEnable; ///< enable lambda derivation from QP 202 #endif 188 203 Int m_aiPad[2]; 189 204 … … 211 226 Int m_loopFilterBetaOffsetDiv2; 212 227 Int m_loopFilterTcOffsetDiv2; 213 #if W0038_DB_OPT214 228 Int m_deblockingFilterMetric; 215 #else216 Bool m_DeblockingFilterMetric;217 #endif218 229 Bool m_bUseSAO; 219 230 Bool m_bTestSAODisableAtPictureLevel; … … 222 233 Int m_maxNumOffsetsPerPic; 223 234 Bool m_saoCtuBoundary; 224 #if OPTIONAL_RESET_SAO_ENCODING_AFTER_IRAP225 235 Bool m_saoResetEncoderStateAfterIRAP; 226 #endif227 236 228 237 //====== Motion search ======== … … 247 256 Int m_chromaCbQpOffset; // Chroma Cb QP Offset (0:default) 248 257 Int m_chromaCrQpOffset; // Chroma Cr Qp Offset (0:default) 249 #if W0038_CQP_ADJ 258 WCGChromaQPControl m_wcgChromaQpControl; ///< Wide-colour-gamut chroma QP control. 250 259 UInt m_sliceChromaQpOffsetPeriodicity; ///< Used in conjunction with Slice Cb/Cr QpOffsetIntraOrPeriodic. Use 0 (default) to disable periodic nature. 251 260 Int m_sliceChromaQpOffsetIntraOrPeriodic[2/*Cb,Cr*/]; ///< Chroma Cb QP Offset at slice level for I slice or for periodic inter slices as defined by SliceChromaQPOffsetPeriodicity. Replaces offset in the GOP table. 252 #endif253 261 254 262 ChromaFormat m_chromaFormatIDC; … … 268 276 Bool m_useRDOQ; 269 277 Bool m_useRDOQTS; 270 #if T0196_SELECTIVE_RDOQ271 278 Bool m_useSelectiveRDOQ; 272 #endif273 279 UInt m_rdPenalty; 274 280 FastInterSearchMode m_fastInterSearchMode; … … 288 294 Bool m_cabacBypassAlignmentEnabledFlag; 289 295 Bool m_rdpcmEnabledFlag[NUMBER_OF_RDPCM_SIGNALLING_MODES]; 296 LumaLevelToDeltaQPMapping m_lumaLevelToDeltaQPMapping; ///< mapping from luma level to delta QP. 290 297 Int* m_aidQP; 291 298 UInt m_uiDeltaQpRD; … … 368 375 Bool m_scalableNestingSEIEnabled; 369 376 Bool m_tmctsSEIEnabled; 377 #if MCTS_ENC_CHECK 378 Bool m_tmctsSEITileConstraint; 379 #endif 370 380 Bool m_timeCodeSEIEnabled; 371 381 Int m_timeCodeSEINumTs; … … 384 394 std::string m_colourRemapSEIFileRoot; ///< SEI Colour Remapping File (initialized from external file) 385 395 TComSEIMasteringDisplay m_masteringDisplay; 386 #if U0033_ALTERNATIVE_TRANSFER_CHARACTERISTICS_SEI387 396 Bool m_alternativeTransferCharacteristicsSEIEnabled; 388 397 UChar m_preferredTransferCharacteristics; 389 #endif 398 Bool m_greenMetadataInfoSEIEnabled; 399 UChar m_greenMetadataType; 400 UChar m_xsdMetricType; 390 401 391 402 #if NH_MV 392 403 SEIMessages* m_seiMessages; 404 Bool m_sendParameterSets; 405 Int m_parameterSetId; 393 406 #endif 394 407 //====== Weighted Prediction ======== … … 401 414 std::string m_scalingListFileName; ///< quantization matrix file name 402 415 Int m_TMVPModeId; 403 Bool m_ signHideFlag;416 Bool m_SignDataHidingEnabledFlag; 404 417 Bool m_RCEnableRateControl; 405 418 Int m_RCTargetBitrate; … … 409 422 Int m_RCInitialQP; 410 423 Bool m_RCForceIntraQP; 411 #if U0132_TARGET_BITS_SATURATION412 424 Bool m_RCCpbSaturationEnabled; 413 425 UInt m_RCCpbSize; 414 426 Double m_RCInitialCpbFullness; 415 #endif416 417 427 #if KWU_RC_MADPRED_E0227 418 428 UInt m_depthMADPred; … … 421 431 Bool m_bViewWiseRateCtrl; 422 432 #endif 423 Bool m_TransquantBypassEnable Flag; ///< transquant_bypass_enable_flag setting in PPS.424 Bool m_CUTransquantBypassFlagForce; ///< if transquant_bypass_enable _flag, then, if true, all CU transquant bypass flags will be set to true.433 Bool m_TransquantBypassEnabledFlag; ///< transquant_bypass_enabled_flag setting in PPS. 434 Bool m_CUTransquantBypassFlagForce; ///< if transquant_bypass_enabled_flag, then, if true, all CU transquant bypass flags will be set to true. 425 435 426 436 CostMode m_costMode; ///< The cost function to use, primarily when considering lossless coding. 427 437 #if NH_MV 428 438 TComVPS* m_cVPS; ///< pointer to VPS, same for all layers 439 TComSPS m_activeSps; /// Keep local copy; since syntax elements can be changed by layer specific inference. 440 TComPPS m_activePps; /// Keep local copy; since syntax elements can be changed by layer specific inference. 429 441 #else 430 431 442 TComVPS m_cVPS; 432 443 #endif 433 444 434 #if NH_3D _DLT445 #if NH_3D 435 446 TComDLT m_cDLT; 436 447 #endif … … 519 530 Bool m_useSDC; 520 531 Bool m_useDLT; 521 #endif522 #if NH_3D_QTL523 532 Bool m_bUseQTL; 524 #endif525 #if NH_3D526 533 Int m_profileIdc; 527 534 #endif … … 578 585 Void setPrintSequenceMSE (Bool value) { m_printSequenceMSE = value; } 579 586 587 #if JVET_F0064_MSSSIM 588 Bool getPrintMSSSIM () const { return m_printMSSSIM; } 589 Void setPrintMSSSIM (Bool value) { m_printMSSSIM = value; } 590 #endif 591 580 592 Bool getCabacZeroWordPaddingEnabled() const { return m_cabacZeroWordPaddingEnabled; } 581 593 Void setCabacZeroWordPaddingEnabled(Bool value) { m_cabacZeroWordPaddingEnabled = value; } 582 594 #if NH_MV 583 595 Void setLayerId ( Int layerId ) { m_layerId = layerId; } 584 Int getLayerId () 585 Int getLayerIdInVps () 596 Int getLayerId () const { return m_layerId; } 597 Int getLayerIdInVps () const { return m_layerIdInVps; } 586 598 Void setLayerIdInVps ( Int layerIdInVps) { m_layerIdInVps = layerIdInVps; } 587 599 Void setViewId ( Int viewId ) { m_viewId = viewId; } 588 Int getViewId () 600 Int getViewId () const { return m_viewId; } 589 601 Void setViewIndex ( Int viewIndex ) { m_viewIndex = viewIndex; } 590 Int getViewIndex () { return m_viewIndex; } 602 Int getViewIndex () const { return m_viewIndex; } 603 #if NH_MV 604 Void setSendParameterSets ( Bool value ) { m_sendParameterSets = value; }; 605 Bool getSendParameterSets ( ) { return m_sendParameterSets; }; 606 607 Void setParameterSetId ( Int value ) { m_parameterSetId = value; }; 608 Int getParameterSetId ( ) { return m_parameterSetId; }; 609 610 611 #endif 591 612 #if NH_3D_VSO || NH_3D 592 Void setIsDepth ( Bool isDepth ) { m_isDepth = isDepth; }593 Bool getIsDepth () 613 Void setIsDepth ( Bool isDepth ) { m_isDepth = isDepth; } 614 Bool getIsDepth () const { return m_isDepth; } 594 615 Void setIsAuxDepth ( Bool isAuxDepth ) { m_isAuxDepth = isAuxDepth; } 595 616 Bool getIsAuxDepth () { return m_isAuxDepth; } … … 601 622 Void setIntraPeriod ( Int i ) { m_uiIntraPeriod = (UInt)i; } 602 623 Void setDecodingRefreshType ( Int i ) { m_uiDecodingRefreshType = (UInt)i; } 624 #if JCTVC_Y0038_PARAMS 625 Void setReWriteParamSetsFlag ( Bool b ) { m_bReWriteParamSetsFlag = b; } 626 #endif 627 603 628 Void setGOPSize ( Int i ) { m_iGOPSize = i; } 604 629 #if NH_MV 605 630 Void setGopList ( GOPEntry* GOPList ) { for ( Int i = 0; i < MAX_GOP+1; i++ ) m_GOPList[i] = GOPList[i]; } 606 631 #else 607 Void setGopList ( GOPEntry* GOPList) { for ( Int i = 0; i < MAX_GOP; i++ ) m_GOPList[i] = GOPList[i]; }632 Void setGopList ( const GOPEntry GOPList[MAX_GOP] ) { for ( Int i = 0; i < MAX_GOP; i++ ) m_GOPList[i] = GOPList[i]; } 608 633 #endif 609 634 Void setExtraRPSs ( Int i ) { m_extraRPSs = i; } 610 GOPEntry getGOPEntry ( Int i ){ return m_GOPList[i]; }635 const GOPEntry &getGOPEntry ( Int i ) const { return m_GOPList[i]; } 611 636 Void setEncodedFlag ( Int i, Bool value ) { m_GOPList[i].m_isEncoded = value; } 612 637 Void setMaxDecPicBuffering ( UInt u, UInt tlayer ) { m_maxDecPicBuffering[tlayer] = u; } … … 615 640 Void setQP ( Int i ) { m_iQP = i; } 616 641 642 #if X0038_LAMBDA_FROM_QP_CAPABILITY 643 Void setIntraQPOffset ( Int i ) { m_intraQPOffset = i; } 644 Void setLambdaFromQPEnable ( Bool b ) { m_lambdaFromQPEnable = b; } 645 #endif 617 646 Void setPad ( Int* iPad ) { for ( Int i = 0; i < 2; i++ ) m_aiPad[i] = iPad[i]; } 618 647 … … 626 655 Void setMaxTotalCUDepth ( UInt u ) { m_maxTotalCUDepth = u; } 627 656 Void setLog2DiffMaxMinCodingBlockSize( UInt u ) { m_log2DiffMaxMinCodingBlockSize = u; } 628 #if NH_3D _IC657 #if NH_3D 629 658 Void setUseIC ( Bool bVal ) { m_bUseIC = bVal; } 630 659 Bool getUseIC () { return m_bUseIC; } … … 646 675 Void setLoopFilterBetaOffset ( Int i ) { m_loopFilterBetaOffsetDiv2 = i; } 647 676 Void setLoopFilterTcOffset ( Int i ) { m_loopFilterTcOffsetDiv2 = i; } 648 #if W0038_DB_OPT649 677 Void setDeblockingFilterMetric ( Int i ) { m_deblockingFilterMetric = i; } 650 #else 651 Void setDeblockingFilterMetric ( Bool b ) { m_DeblockingFilterMetric = b; } 652 #endif 678 653 679 //====== Motion search ======== 654 680 Void setDisableIntraPUsInInterSlices ( Bool b ) { m_bDisableIntraPUsInInterSlices = b; } … … 675 701 Void setChromaCbQpOffset ( Int i ) { m_chromaCbQpOffset = i; } 676 702 Void setChromaCrQpOffset ( Int i ) { m_chromaCrQpOffset = i; } 677 #if W0038_CQP_ADJ 703 Void setWCGChromaQpControl ( const WCGChromaQPControl &ctrl ) { m_wcgChromaQpControl = ctrl; } 704 const WCGChromaQPControl &getWCGChromaQPControl () const { return m_wcgChromaQpControl; } 678 705 Void setSliceChromaOffsetQpIntraOrPeriodic( UInt periodicity, Int sliceChromaQpOffsetIntraOrPeriodic[2]) { m_sliceChromaQpOffsetPeriodicity = periodicity; memcpy(m_sliceChromaQpOffsetIntraOrPeriodic, sliceChromaQpOffsetIntraOrPeriodic, sizeof(m_sliceChromaQpOffsetIntraOrPeriodic)); } 679 706 Int getSliceChromaOffsetQpIntraOrPeriodic( Bool bIsCr) const { return m_sliceChromaQpOffsetIntraOrPeriodic[bIsCr?1:0]; } 680 707 UInt getSliceChromaOffsetQpPeriodicity() const { return m_sliceChromaQpOffsetPeriodicity; } 681 #endif682 708 683 709 Void setChromaFormatIdc ( ChromaFormat cf ) { m_chromaFormatIDC = cf; } 684 710 ChromaFormat getChromaFormatIdc ( ) { return m_chromaFormatIDC; } 711 712 Void setLumaLevelToDeltaQPControls( const LumaLevelToDeltaQPMapping &lumaLevelToDeltaQPMapping ) { m_lumaLevelToDeltaQPMapping=lumaLevelToDeltaQPMapping; } 713 const LumaLevelToDeltaQPMapping& getLumaLevelToDeltaQPMapping() const { return m_lumaLevelToDeltaQPMapping; } 685 714 686 715 #if ADAPTIVE_QP_SELECTION … … 717 746 UInt getIntraPeriod () { return m_uiIntraPeriod; } 718 747 UInt getDecodingRefreshType () { return m_uiDecodingRefreshType; } 719 Int getGOPSize () { return m_iGOPSize; } 748 #if JCTVC_Y0038_PARAMS 749 Bool getReWriteParamSetsFlag () { return m_bReWriteParamSetsFlag; } 750 #endif 751 #if NH_MV 752 Int getGOPSize () const { return m_iGOPSize; } 753 #else 754 Int getGOPSize () { return m_iGOPSize; } 755 #endif 720 756 Int getMaxDecPicBuffering (UInt tlayer) { return m_maxDecPicBuffering[tlayer]; } 721 757 Int getNumReorderPics (UInt tlayer) { return m_numReorderPics[tlayer]; } 758 #if X0038_LAMBDA_FROM_QP_CAPABILITY 759 Int getIntraQPOffset () const { return m_intraQPOffset; } 760 Int getLambdaFromQPEnable () const { return m_lambdaFromQPEnable; } 761 protected: 762 Int getBaseQP () const { return m_iQP; } // public should use getQPForPicture. 763 public: 764 Int getQPForPicture (const UInt gopIndex, const TComSlice *pSlice) const; // Function actually defined in TEncTop.cpp 765 #else 722 766 Int getQP () { return m_iQP; } 723 767 #endif 724 768 Int getPad ( Int i ) { assert (i < 2 ); return m_aiPad[i]; } 725 769 … … 734 778 735 779 //==== Loop/Deblock Filter ======== 780 #if NH_MV 781 Bool getLoopFilterDisable () const { return m_bLoopFilterDisable; } 782 Bool getLoopFilterOffsetInPPS () const { return m_loopFilterOffsetInPPS; } 783 Int getLoopFilterBetaOffset () const { return m_loopFilterBetaOffsetDiv2; } 784 Int getLoopFilterTcOffset () const { return m_loopFilterTcOffsetDiv2; } 785 Int getDeblockingFilterMetric () const { return m_deblockingFilterMetric; } 786 #else 736 787 Bool getLoopFilterDisable () { return m_bLoopFilterDisable; } 737 788 Bool getLoopFilterOffsetInPPS () { return m_loopFilterOffsetInPPS; } 738 789 Int getLoopFilterBetaOffset () { return m_loopFilterBetaOffsetDiv2; } 739 790 Int getLoopFilterTcOffset () { return m_loopFilterTcOffsetDiv2; } 740 #if W0038_DB_OPT741 791 Int getDeblockingFilterMetric () { return m_deblockingFilterMetric; } 742 #else743 Bool getDeblockingFilterMetric () { return m_DeblockingFilterMetric; }744 792 #endif 745 793 … … 759 807 760 808 //==== Quality control ======== 761 Int getMaxDeltaQP () 762 Int getMaxCuDQPDepth () 763 Bool getUseAdaptiveQP () 764 Int getQPAdaptationRange () 809 Int getMaxDeltaQP () const { return m_iMaxDeltaQP; } 810 Int getMaxCuDQPDepth () const { return m_iMaxCuDQPDepth; } 811 Bool getUseAdaptiveQP () const { return m_bUseAdaptiveQP; } 812 Int getQPAdaptationRange () const { return m_iQPAdaptationRange; } 765 813 766 814 //==== Tool list ======== … … 770 818 Void setUseRDOQ ( Bool b ) { m_useRDOQ = b; } 771 819 Void setUseRDOQTS ( Bool b ) { m_useRDOQTS = b; } 772 #if T0196_SELECTIVE_RDOQ773 820 Void setUseSelectiveRDOQ ( Bool b ) { m_useSelectiveRDOQ = b; } 774 #endif775 821 Void setRDpenalty ( UInt u ) { m_rdPenalty = u; } 776 822 Void setFastInterSearchMode ( FastInterSearchMode m ) { m_fastInterSearchMode = m; } … … 797 843 Bool getUseRDOQ () { return m_useRDOQ; } 798 844 Bool getUseRDOQTS () { return m_useRDOQTS; } 799 #if T0196_SELECTIVE_RDOQ800 845 Bool getUseSelectiveRDOQ () { return m_useSelectiveRDOQ; } 801 #endif802 846 Int getRDpenalty () { return m_rdPenalty; } 803 847 FastInterSearchMode getFastInterSearchMode() const{ return m_fastInterSearchMode; } … … 841 885 Void setIntraSmoothingDisabledFlag (Bool bValue) { m_intraSmoothingDisabledFlag=bValue; } 842 886 843 Int* getdQPs (){ return m_aidQP; }887 const Int* getdQPs () const { return m_aidQP; } 844 888 UInt getDeltaQpRD () const { return m_uiDeltaQpRD; } 845 889 Bool getFastDeltaQp () const { return m_bFastDeltaQP; } … … 871 915 Void setSaoCtuBoundary (Bool val) { m_saoCtuBoundary = val; } 872 916 Bool getSaoCtuBoundary () { return m_saoCtuBoundary; } 873 #if OPTIONAL_RESET_SAO_ENCODING_AFTER_IRAP874 917 Void setSaoResetEncoderStateAfterIRAP(Bool b) { m_saoResetEncoderStateAfterIRAP = b; } 875 918 Bool getSaoResetEncoderStateAfterIRAP() const { return m_saoResetEncoderStateAfterIRAP; } 876 #endif877 919 Void setLFCrossTileBoundaryFlag ( Bool val ) { m_loopFilterAcrossTilesEnabledFlag = val; } 878 920 Bool getLFCrossTileBoundaryFlag () { return m_loopFilterAcrossTilesEnabledFlag; } … … 986 1028 Void setTMCTSSEIEnabled(Bool b) { m_tmctsSEIEnabled = b; } 987 1029 Bool getTMCTSSEIEnabled() { return m_tmctsSEIEnabled; } 1030 #if MCTS_ENC_CHECK 1031 Void setTMCTSSEITileConstraint(Bool b) { m_tmctsSEITileConstraint = b; } 1032 Bool getTMCTSSEITileConstraint() { return m_tmctsSEITileConstraint; } 1033 #endif 988 1034 Void setTimeCodeSEIEnabled(Bool b) { m_timeCodeSEIEnabled = b; } 989 1035 Bool getTimeCodeSEIEnabled() { return m_timeCodeSEIEnabled; } … … 1019 1065 1020 1066 Void setMasteringDisplaySEI(const TComSEIMasteringDisplay &src) { m_masteringDisplay = src; } 1021 #if U0033_ALTERNATIVE_TRANSFER_CHARACTERISTICS_SEI1022 1067 Void setSEIAlternativeTransferCharacteristicsSEIEnable( Bool b) { m_alternativeTransferCharacteristicsSEIEnabled = b; } 1023 1068 Bool getSEIAlternativeTransferCharacteristicsSEIEnable( ) const { return m_alternativeTransferCharacteristicsSEIEnabled; } 1024 1069 Void setSEIPreferredTransferCharacteristics(UChar v) { m_preferredTransferCharacteristics = v; } 1025 1070 UChar getSEIPreferredTransferCharacteristics() const { return m_preferredTransferCharacteristics; } 1026 #endif 1071 Void setSEIGreenMetadataInfoSEIEnable( Bool b) { m_greenMetadataInfoSEIEnabled = b; } 1072 Bool getSEIGreenMetadataInfoSEIEnable( ) const { return m_greenMetadataInfoSEIEnabled; } 1073 Void setSEIGreenMetadataType(UChar v) { m_greenMetadataType = v; } 1074 UChar getSEIGreenMetadataType() const { return m_greenMetadataType; } 1075 Void setSEIXSDMetricType(UChar v) { m_xsdMetricType = v; } 1076 UChar getSEIXSDMetricType() const { return m_xsdMetricType; } 1077 1027 1078 const TComSEIMasteringDisplay &getMasteringDisplaySEI() const { return m_masteringDisplay; } 1028 1079 #if NH_MV … … 1046 1097 WeightedPredictionMethod getWeightedPredictionMethod() const { return m_weightedPredictionMethod; } 1047 1098 Void setWeightedPredictionMethod( WeightedPredictionMethod m ) { m_weightedPredictionMethod = m; } 1048 Void setSignHideFlag( Bool signHideFlag ) { m_signHideFlag = signHideFlag; } 1049 Bool getSignHideFlag() { return m_signHideFlag; } 1099 Void setSignDataHidingEnabledFlag( Bool b ) { m_SignDataHidingEnabledFlag = b; } 1100 #if NH_MV 1101 Bool getSignDataHidingEnabledFlag() const { return m_SignDataHidingEnabledFlag; } 1102 #else 1103 Bool getSignDataHidingEnabledFlag() { return m_SignDataHidingEnabledFlag; } 1104 #endif 1050 1105 Bool getUseRateCtrl () { return m_RCEnableRateControl; } 1051 1106 Void setUseRateCtrl ( Bool b ) { m_RCEnableRateControl = b; } … … 1062 1117 Bool getForceIntraQP () { return m_RCForceIntraQP; } 1063 1118 Void setForceIntraQP ( Bool b ) { m_RCForceIntraQP = b; } 1064 1065 #if U0132_TARGET_BITS_SATURATION1066 1119 Bool getCpbSaturationEnabled() { return m_RCCpbSaturationEnabled;} 1067 1120 Void setCpbSaturationEnabled( Bool b ) { m_RCCpbSaturationEnabled = b; } … … 1070 1123 Double getInitialCpbFullness () { return m_RCInitialCpbFullness; } 1071 1124 Void setInitialCpbFullness (Double f) { m_RCInitialCpbFullness = f; } 1072 #endif1073 1125 1074 1126 #if KWU_RC_MADPRED_E0227 … … 1080 1132 Void setUseViewWiseRateCtrl (Bool b) { m_bViewWiseRateCtrl = b; } 1081 1133 #endif 1082 Bool getTransquantBypassEnableFlag() { return m_TransquantBypassEnableFlag; } 1083 Void setTransquantBypassEnableFlag(Bool flag) { m_TransquantBypassEnableFlag = flag; } 1134 #if NH_MV 1135 Bool getTransquantBypassEnabledFlag() const { return m_TransquantBypassEnabledFlag; } 1136 #else 1137 Bool getTransquantBypassEnabledFlag() { return m_TransquantBypassEnabledFlag; } 1138 #endif 1139 Void setTransquantBypassEnabledFlag(Bool flag) { m_TransquantBypassEnabledFlag = flag; } 1084 1140 Bool getCUTransquantBypassFlagForceValue() { return m_CUTransquantBypassFlagForce; } 1085 1141 Void setCUTransquantBypassFlagForceValue(Bool flag) { m_CUTransquantBypassFlagForce = flag; } 1086 CostMode getCostMode( ) 1142 CostMode getCostMode( ) const { return m_costMode; } 1087 1143 Void setCostMode(CostMode m ) { m_costMode = m; } 1088 1144 #if NH_MV 1089 1145 Void setVPS( TComVPS *p ) { m_cVPS = p; } 1090 1146 TComVPS* getVPS() { return m_cVPS; } 1147 TComVPS* getVPS() const { return m_cVPS; } 1148 1091 1149 #else 1092 1150 Void setVPS(TComVPS *p) { m_cVPS = *p; } … … 1094 1152 #endif 1095 1153 1096 #if NH_3D _DLT1154 #if NH_3D 1097 1155 Void setDLT( TComDLT p ) { m_cDLT = p; } 1098 1156 TComDLT* getDLT() { return &m_cDLT; } … … 1261 1319 #endif 1262 1320 1263 #if NH_3D _QTL1321 #if NH_3D 1264 1322 Void setUseQTL ( Bool b ) { m_bUseQTL = b; } 1265 1323 Bool getUseQTL () { return m_bUseQTL; } 1266 #endif 1267 #if NH_3D 1268 1269 Void setProfileIdc( Int a ) { assert( a == 1 || a == 6 || a == 8 ); m_profileIdc = a; } 1324 #if NH_MV_ALLOW_NON_CONFORMING 1325 Void setProfileIdc( Int a ) { assert( a == Profile::MAIN || a == Profile::MULTIVIEWMAIN|| a == Profile::MAIN3D || a == Profile::NONE || a == Profile::MAIN3D_NONCONFORMING || a == Profile::MULTIVIEWMAIN_NONCONFORMING|| a == Profile::MAIN3D_NONCONFORMING ); m_profileIdc = a; } 1326 Bool decProcAnnexI() { assert( m_profileIdc != -1 ); return ( m_profileIdc == Profile::MAIN3D || m_profileIdc == Profile::MAIN3D_NONCONFORMING ); } 1327 #else 1328 Void setProfileIdc( Int a ) { assert( a == Profile::MAIN || a == Profile::MULTIVIEWMAIN|| a == Profile::MAIN3D ); m_profileIdc = a; } 1270 1329 Bool decProcAnnexI() { assert( m_profileIdc != -1 ); return ( m_profileIdc == Profile::MAIN3D ); } 1330 #endif 1331 1332 1271 1333 #endif // NH_3D 1272 1334 };
Note: See TracChangeset for help on using the changeset viewer.