Skip to content
Snippets Groups Projects
EncCfg.h 89.4 KiB
Newer Older
  • Learn to ignore specific revisions
  •   void  setRowHeight ( const std::vector<int>& rowHeight)            { m_tileRowHeight = rowHeight; }
      uint32_t  getRowHeight                   ( uint32_t rowIdx )               { return m_tileRowHeight[rowIdx]; }
    #endif
      void  xCheckGSParameters();
    #if HEVC_TILES_WPP
      void  setEntropyCodingSyncEnabledFlag(bool b)                      { m_entropyCodingSyncEnabledFlag = b; }
      bool  getEntropyCodingSyncEnabledFlag() const                      { return m_entropyCodingSyncEnabledFlag; }
    #endif
      void  setDecodedPictureHashSEIType(HashType m)                     { m_decodedPictureHashSEIType = m; }
      HashType getDecodedPictureHashSEIType() const                      { return m_decodedPictureHashSEIType; }
      void  setBufferingPeriodSEIEnabled(bool b)                         { m_bufferingPeriodSEIEnabled = b; }
      bool  getBufferingPeriodSEIEnabled() const                         { return m_bufferingPeriodSEIEnabled; }
      void  setPictureTimingSEIEnabled(bool b)                           { m_pictureTimingSEIEnabled = b; }
      bool  getPictureTimingSEIEnabled() const                           { return m_pictureTimingSEIEnabled; }
      void  setRecoveryPointSEIEnabled(bool b)                           { m_recoveryPointSEIEnabled = b; }
      bool  getRecoveryPointSEIEnabled() const                           { return m_recoveryPointSEIEnabled; }
      void  setToneMappingInfoSEIEnabled(bool b)                         { m_toneMappingInfoSEIEnabled = b;  }
      bool  getToneMappingInfoSEIEnabled()                               { return m_toneMappingInfoSEIEnabled;  }
      void  setTMISEIToneMapId(int b)                                    { m_toneMapId = b;  }
      int   getTMISEIToneMapId()                                         { return m_toneMapId;  }
      void  setTMISEIToneMapCancelFlag(bool b)                           { m_toneMapCancelFlag=b;  }
      bool  getTMISEIToneMapCancelFlag()                                 { return m_toneMapCancelFlag;  }
      void  setTMISEIToneMapPersistenceFlag(bool b)                      { m_toneMapPersistenceFlag = b;  }
      bool   getTMISEIToneMapPersistenceFlag()                           { return m_toneMapPersistenceFlag;  }
      void  setTMISEICodedDataBitDepth(int b)                            { m_codedDataBitDepth = b;  }
      int   getTMISEICodedDataBitDepth()                                 { return m_codedDataBitDepth;  }
      void  setTMISEITargetBitDepth(int b)                               { m_targetBitDepth = b;  }
      int   getTMISEITargetBitDepth()                                    { return m_targetBitDepth;  }
      void  setTMISEIModelID(int b)                                      { m_modelId = b;  }
      int   getTMISEIModelID()                                           { return m_modelId;  }
      void  setTMISEIMinValue(int b)                                     { m_minValue = b;  }
      int   getTMISEIMinValue()                                          { return m_minValue;  }
      void  setTMISEIMaxValue(int b)                                     { m_maxValue = b;  }
      int   getTMISEIMaxValue()                                          { return m_maxValue;  }
      void  setTMISEISigmoidMidpoint(int b)                              { m_sigmoidMidpoint = b;  }
      int   getTMISEISigmoidMidpoint()                                   { return m_sigmoidMidpoint;  }
      void  setTMISEISigmoidWidth(int b)                                 { m_sigmoidWidth = b;  }
      int   getTMISEISigmoidWidth()                                      { return m_sigmoidWidth;  }
      void  setTMISEIStartOfCodedInterva( int*  p )                      { m_startOfCodedInterval = p;  }
      int*  getTMISEIStartOfCodedInterva()                               { return m_startOfCodedInterval;  }
      void  setTMISEINumPivots(int b)                                    { m_numPivots = b;  }
      int   getTMISEINumPivots()                                         { return m_numPivots;  }
      void  setTMISEICodedPivotValue( int*  p )                          { m_codedPivotValue = p;  }
      int*  getTMISEICodedPivotValue()                                   { return m_codedPivotValue;  }
      void  setTMISEITargetPivotValue( int*  p )                         { m_targetPivotValue = p;  }
      int*  getTMISEITargetPivotValue()                                  { return m_targetPivotValue;  }
      void  setTMISEICameraIsoSpeedIdc(int b)                            { m_cameraIsoSpeedIdc = b;  }
      int   getTMISEICameraIsoSpeedIdc()                                 { return m_cameraIsoSpeedIdc;  }
      void  setTMISEICameraIsoSpeedValue(int b)                          { m_cameraIsoSpeedValue = b;  }
      int   getTMISEICameraIsoSpeedValue()                               { return m_cameraIsoSpeedValue;  }
      void  setTMISEIExposureIndexIdc(int b)                             { m_exposureIndexIdc = b;  }
      int   getTMISEIExposurIndexIdc()                                   { return m_exposureIndexIdc;  }
      void  setTMISEIExposureIndexValue(int b)                           { m_exposureIndexValue = b;  }
      int   getTMISEIExposurIndexValue()                                 { return m_exposureIndexValue;  }
      void  setTMISEIExposureCompensationValueSignFlag(bool b)           { m_exposureCompensationValueSignFlag = b;  }
      bool  getTMISEIExposureCompensationValueSignFlag()                 { return m_exposureCompensationValueSignFlag;  }
      void  setTMISEIExposureCompensationValueNumerator(int b)           { m_exposureCompensationValueNumerator = b;  }
      int   getTMISEIExposureCompensationValueNumerator()                { return m_exposureCompensationValueNumerator;  }
      void  setTMISEIExposureCompensationValueDenomIdc(int b)            { m_exposureCompensationValueDenomIdc =b;  }
      int   getTMISEIExposureCompensationValueDenomIdc()                 { return m_exposureCompensationValueDenomIdc;  }
      void  setTMISEIRefScreenLuminanceWhite(int b)                      { m_refScreenLuminanceWhite = b;  }
      int   getTMISEIRefScreenLuminanceWhite()                           { return m_refScreenLuminanceWhite;  }
      void  setTMISEIExtendedRangeWhiteLevel(int b)                      { m_extendedRangeWhiteLevel = b;  }
      int   getTMISEIExtendedRangeWhiteLevel()                           { return m_extendedRangeWhiteLevel;  }
      void  setTMISEINominalBlackLevelLumaCodeValue(int b)               { m_nominalBlackLevelLumaCodeValue = b;  }
      int   getTMISEINominalBlackLevelLumaCodeValue()                    { return m_nominalBlackLevelLumaCodeValue;  }
      void  setTMISEINominalWhiteLevelLumaCodeValue(int b)               { m_nominalWhiteLevelLumaCodeValue = b;  }
      int   getTMISEINominalWhiteLevelLumaCodeValue()                    { return m_nominalWhiteLevelLumaCodeValue;  }
      void  setTMISEIExtendedWhiteLevelLumaCodeValue(int b)              { m_extendedWhiteLevelLumaCodeValue =b;  }
      int   getTMISEIExtendedWhiteLevelLumaCodeValue()                   { return m_extendedWhiteLevelLumaCodeValue;  }
      void  setFramePackingArrangementSEIEnabled(bool b)                 { m_framePackingSEIEnabled = b; }
      bool  getFramePackingArrangementSEIEnabled() const                 { return m_framePackingSEIEnabled; }
      void  setFramePackingArrangementSEIType(int b)                     { m_framePackingSEIType = b; }
      int   getFramePackingArrangementSEIType()                          { return m_framePackingSEIType; }
      void  setFramePackingArrangementSEIId(int b)                       { m_framePackingSEIId = b; }
      int   getFramePackingArrangementSEIId()                            { return m_framePackingSEIId; }
      void  setFramePackingArrangementSEIQuincunx(int b)                 { m_framePackingSEIQuincunx = b; }
      int   getFramePackingArrangementSEIQuincunx()                      { return m_framePackingSEIQuincunx; }
      void  setFramePackingArrangementSEIInterpretation(int b)           { m_framePackingSEIInterpretation = b; }
      int   getFramePackingArrangementSEIInterpretation()                { return m_framePackingSEIInterpretation; }
      void  setSegmentedRectFramePackingArrangementSEIEnabled(bool b)    { m_segmentedRectFramePackingSEIEnabled = b; }
      bool  getSegmentedRectFramePackingArrangementSEIEnabled() const    { return m_segmentedRectFramePackingSEIEnabled; }
      void  setSegmentedRectFramePackingArrangementSEICancel(int b)      { m_segmentedRectFramePackingSEICancel = b; }
      int   getSegmentedRectFramePackingArrangementSEICancel()           { return m_segmentedRectFramePackingSEICancel; }
      void  setSegmentedRectFramePackingArrangementSEIType(int b)        { m_segmentedRectFramePackingSEIType = b; }
      int   getSegmentedRectFramePackingArrangementSEIType()             { return m_segmentedRectFramePackingSEIType; }
      void  setSegmentedRectFramePackingArrangementSEIPersistence(int b) { m_segmentedRectFramePackingSEIPersistence = b; }
      int   getSegmentedRectFramePackingArrangementSEIPersistence()      { return m_segmentedRectFramePackingSEIPersistence; }
      void  setDisplayOrientationSEIAngle(int b)                         { m_displayOrientationSEIAngle = b; }
      int   getDisplayOrientationSEIAngle()                              { return m_displayOrientationSEIAngle; }
      void  setTemporalLevel0IndexSEIEnabled(bool b)                     { m_temporalLevel0IndexSEIEnabled = b; }
      bool  getTemporalLevel0IndexSEIEnabled() const                     { return m_temporalLevel0IndexSEIEnabled; }
      void  setGradualDecodingRefreshInfoEnabled(bool b)                 { m_gradualDecodingRefreshInfoEnabled = b;    }
      bool  getGradualDecodingRefreshInfoEnabled() const                 { return m_gradualDecodingRefreshInfoEnabled; }
      void  setNoDisplaySEITLayer(int b)                                 { m_noDisplaySEITLayer = b;    }
      int   getNoDisplaySEITLayer()                                      { return m_noDisplaySEITLayer; }
      void  setDecodingUnitInfoSEIEnabled(bool b)                        { m_decodingUnitInfoSEIEnabled = b;    }
      bool  getDecodingUnitInfoSEIEnabled() const                        { return m_decodingUnitInfoSEIEnabled; }
      void  setSOPDescriptionSEIEnabled(bool b)                          { m_SOPDescriptionSEIEnabled = b; }
      bool  getSOPDescriptionSEIEnabled() const                          { return m_SOPDescriptionSEIEnabled; }
      void  setScalableNestingSEIEnabled(bool b)                         { m_scalableNestingSEIEnabled = b; }
      bool  getScalableNestingSEIEnabled() const                         { return m_scalableNestingSEIEnabled; }
      void  setTMCTSSEIEnabled(bool b)                                   { m_tmctsSEIEnabled = b; }
      bool  getTMCTSSEIEnabled()                                         { return m_tmctsSEIEnabled; }
      void  setTimeCodeSEIEnabled(bool b)                                { m_timeCodeSEIEnabled = b; }
      bool  getTimeCodeSEIEnabled()                                      { return m_timeCodeSEIEnabled; }
      void  setNumberOfTimeSets(int value)                               { m_timeCodeSEINumTs = value; }
      int   getNumberOfTimesets()                                        { return m_timeCodeSEINumTs; }
      void  setTimeSet(SEITimeSet element, int index)                    { m_timeSetArray[index] = element; }
      SEITimeSet &getTimeSet(int index)                                  { return m_timeSetArray[index]; }
      const SEITimeSet &getTimeSet(int index) const                      { return m_timeSetArray[index]; }
      void  setKneeSEIEnabled(int b)                                     { m_kneeSEIEnabled = b; }
      bool  getKneeSEIEnabled()                                          { return m_kneeSEIEnabled; }
      void  setKneeSEIId(int b)                                          { m_kneeSEIId = b; }
      int   getKneeSEIId()                                               { return m_kneeSEIId; }
      void  setKneeSEICancelFlag(bool b)                                 { m_kneeSEICancelFlag=b; }
      bool  getKneeSEICancelFlag()                                       { return m_kneeSEICancelFlag; }
      void  setKneeSEIPersistenceFlag(bool b)                            { m_kneeSEIPersistenceFlag = b; }
      bool  getKneeSEIPersistenceFlag()                                  { return m_kneeSEIPersistenceFlag; }
      void  setKneeSEIInputDrange(int b)                                 { m_kneeSEIInputDrange = b; }
      int   getKneeSEIInputDrange()                                      { return m_kneeSEIInputDrange; }
      void  setKneeSEIInputDispLuminance(int b)                          { m_kneeSEIInputDispLuminance = b; }
      int   getKneeSEIInputDispLuminance()                               { return m_kneeSEIInputDispLuminance; }
      void  setKneeSEIOutputDrange(int b)                                { m_kneeSEIOutputDrange = b; }
      int   getKneeSEIOutputDrange()                                     { return m_kneeSEIOutputDrange; }
      void  setKneeSEIOutputDispLuminance(int b)                         { m_kneeSEIOutputDispLuminance = b; }
      int   getKneeSEIOutputDispLuminance()                              { return m_kneeSEIOutputDispLuminance; }
      void  setKneeSEINumKneePointsMinus1(int b)                         { m_kneeSEINumKneePointsMinus1 = b; }
      int   getKneeSEINumKneePointsMinus1()                              { return m_kneeSEINumKneePointsMinus1; }
      void  setKneeSEIInputKneePoint(int *p)                             { m_kneeSEIInputKneePoint = p; }
      int*  getKneeSEIInputKneePoint()                                   { return m_kneeSEIInputKneePoint; }
      void  setKneeSEIOutputKneePoint(int *p)                            { m_kneeSEIOutputKneePoint = p; }
      int*  getKneeSEIOutputKneePoint()                                  { return m_kneeSEIOutputKneePoint; }
      void  setColourRemapInfoSEIFileRoot( const std::string &s )        { m_colourRemapSEIFileRoot = s; }
      const std::string &getColourRemapInfoSEIFileRoot() const           { return m_colourRemapSEIFileRoot; }
      void  setMasteringDisplaySEI(const SEIMasteringDisplay &src)       { m_masteringDisplay = src; }
    #if U0033_ALTERNATIVE_TRANSFER_CHARACTERISTICS_SEI
      void  setSEIAlternativeTransferCharacteristicsSEIEnable( bool b)   { m_alternativeTransferCharacteristicsSEIEnabled = b;    }
      bool  getSEIAlternativeTransferCharacteristicsSEIEnable( ) const   { return m_alternativeTransferCharacteristicsSEIEnabled; }
      void  setSEIPreferredTransferCharacteristics(uint8_t v)              { m_preferredTransferCharacteristics = v;    }
      uint8_t getSEIPreferredTransferCharacteristics() const               { return m_preferredTransferCharacteristics; }
    #endif
      void  setSEIGreenMetadataInfoSEIEnable( bool b)                    { m_greenMetadataInfoSEIEnabled = b;    }
      bool  getSEIGreenMetadataInfoSEIEnable( ) const                    { return m_greenMetadataInfoSEIEnabled; }
      void  setSEIGreenMetadataType(uint8_t v)                             { m_greenMetadataType = v;    }
      uint8_t getSEIGreenMetadataType() const                              { return m_greenMetadataType; }
      void  setSEIXSDMetricType(uint8_t v)                                 { m_xsdMetricType = v;    }
      uint8_t getSEIXSDMetricType() const                                  { return m_xsdMetricType; }
    
      const SEIMasteringDisplay &getMasteringDisplaySEI() const          { return m_masteringDisplay; }
      void         setUseWP               ( bool b )                     { m_useWeightedPred   = b;    }
      void         setWPBiPred            ( bool b )                     { m_useWeightedBiPred = b;    }
      bool         getUseWP               ()                             { return m_useWeightedPred;   }
      bool         getWPBiPred            ()                             { return m_useWeightedBiPred; }
      void         setLog2ParallelMergeLevelMinus2   ( uint32_t u )          { m_log2ParallelMergeLevelMinus2       = u;    }
      uint32_t         getLog2ParallelMergeLevelMinus2   ()                  { return m_log2ParallelMergeLevelMinus2;       }
      void         setMaxNumMergeCand                ( uint32_t u )          { m_maxNumMergeCand = u;      }
      uint32_t         getMaxNumMergeCand                ()                  { return m_maxNumMergeCand;   }
    
    #if JVET_L0632_AFFINE_MERGE
      void         setMaxNumAffineMergeCand          ( uint32_t u )      { m_maxNumAffineMergeCand = u;    }
      uint32_t     getMaxNumAffineMergeCand          ()                  { return m_maxNumAffineMergeCand; }
    #endif
    
    #if HEVC_USE_SCALING_LISTS
      void         setUseScalingListId    ( ScalingListMode u )          { m_useScalingListId       = u;   }
      ScalingListMode getUseScalingListId    ()                          { return m_useScalingListId;      }
      void         setScalingListFileName       ( const std::string &s ) { m_scalingListFileName = s;      }
      const std::string& getScalingListFileName () const                 { return m_scalingListFileName;   }
    #endif
      void         setTMVPModeId ( int  u )                              { m_TMVPModeId = u;    }
      int          getTMVPModeId ()                                      { return m_TMVPModeId; }
      WeightedPredictionMethod getWeightedPredictionMethod() const       { return m_weightedPredictionMethod; }
      void         setWeightedPredictionMethod( WeightedPredictionMethod m ) { m_weightedPredictionMethod = m; }
      void         setDepQuantEnabledFlag( bool b )                      { m_DepQuantEnabledFlag = b;    }
      bool         getDepQuantEnabledFlag()                              { return m_DepQuantEnabledFlag; }
    #if HEVC_USE_SIGN_HIDING
      void         setSignDataHidingEnabledFlag( bool b )                { m_SignDataHidingEnabledFlag = b;    }
      bool         getSignDataHidingEnabledFlag()                        { return m_SignDataHidingEnabledFlag; }
    #endif
      bool         getUseRateCtrl         () const                       { return m_RCEnableRateControl;   }
      void         setUseRateCtrl         ( bool b )                     { m_RCEnableRateControl = b;      }
      int          getTargetBitrate       ()                             { return m_RCTargetBitrate;       }
      void         setTargetBitrate       ( int bitrate )                { m_RCTargetBitrate  = bitrate;   }
      int          getKeepHierBit         ()                             { return m_RCKeepHierarchicalBit; }
      void         setKeepHierBit         ( int i )                      { m_RCKeepHierarchicalBit = i;    }
      bool         getLCULevelRC          ()                             { return m_RCLCULevelRC; }
      void         setLCULevelRC          ( bool b )                     { m_RCLCULevelRC = b; }
      bool         getUseLCUSeparateModel ()                             { return m_RCUseLCUSeparateModel; }
      void         setUseLCUSeparateModel ( bool b )                     { m_RCUseLCUSeparateModel = b;    }
      int          getInitialQP           ()                             { return m_RCInitialQP;           }
      void         setInitialQP           ( int QP )                     { m_RCInitialQP = QP;             }
      bool         getForceIntraQP        ()                             { return m_RCForceIntraQP;        }
      void         setForceIntraQP        ( bool b )                     { m_RCForceIntraQP = b;           }
    #if U0132_TARGET_BITS_SATURATION
      bool         getCpbSaturationEnabled()                             { return m_RCCpbSaturationEnabled;}
      void         setCpbSaturationEnabled( bool b )                     { m_RCCpbSaturationEnabled = b;   }
      uint32_t         getCpbSize             ()                             { return m_RCCpbSize;}
      void         setCpbSize             ( uint32_t ui )                    { m_RCCpbSize = ui;   }
      double       getInitialCpbFullness  ()                             { return m_RCInitialCpbFullness;  }
      void         setInitialCpbFullness  (double f)                     { m_RCInitialCpbFullness = f;     }
    #endif
      bool         getTransquantBypassEnabledFlag()                      { return m_TransquantBypassEnabledFlag; }
      void         setTransquantBypassEnabledFlag(bool flag)             { m_TransquantBypassEnabledFlag = flag; }
      bool         getCUTransquantBypassFlagForceValue() const           { return m_CUTransquantBypassFlagForce; }
      void         setCUTransquantBypassFlagForceValue(bool flag)        { m_CUTransquantBypassFlagForce = flag; }
      CostMode     getCostMode( ) const                                  { return m_costMode; }
      void         setCostMode(CostMode m )                              { m_costMode = m; }
    
    #if HEVC_VPS
      void         setVPS(VPS *p)                                        { m_cVPS = *p; }
      VPS *        getVPS()                                              { return &m_cVPS; }
    #endif
      void         setUseRecalculateQPAccordingToLambda (bool b)         { m_recalculateQPAccordingToLambda = b;    }
      bool         getUseRecalculateQPAccordingToLambda ()               { return m_recalculateQPAccordingToLambda; }
    
    #if HEVC_USE_INTRA_SMOOTHING_T32 || HEVC_USE_INTRA_SMOOTHING_T64
      void         setUseStrongIntraSmoothing ( bool b )                 { m_useStrongIntraSmoothing = b;    }
      bool         getUseStrongIntraSmoothing ()                         { return m_useStrongIntraSmoothing; }
    
    #endif
      void         setEfficientFieldIRAPEnabled( bool b )                { m_bEfficientFieldIRAPEnabled = b; }
      bool         getEfficientFieldIRAPEnabled( ) const                 { return m_bEfficientFieldIRAPEnabled; }
    
      void         setHarmonizeGopFirstFieldCoupleEnabled( bool b )      { m_bHarmonizeGopFirstFieldCoupleEnabled = b; }
      bool         getHarmonizeGopFirstFieldCoupleEnabled( ) const       { return m_bHarmonizeGopFirstFieldCoupleEnabled; }
    
      void         setActiveParameterSetsSEIEnabled ( int b )            { m_activeParameterSetsSEIEnabled = b; }
      int          getActiveParameterSetsSEIEnabled ()                   { return m_activeParameterSetsSEIEnabled; }
      bool         getVuiParametersPresentFlag()                         { return m_vuiParametersPresentFlag; }
      void         setVuiParametersPresentFlag(bool i)                   { m_vuiParametersPresentFlag = i; }
      bool         getAspectRatioInfoPresentFlag()                       { return m_aspectRatioInfoPresentFlag; }
      void         setAspectRatioInfoPresentFlag(bool i)                 { m_aspectRatioInfoPresentFlag = i; }
      int          getAspectRatioIdc()                                   { return m_aspectRatioIdc; }
      void         setAspectRatioIdc(int i)                              { m_aspectRatioIdc = i; }
      int          getSarWidth()                                         { return m_sarWidth; }
      void         setSarWidth(int i)                                    { m_sarWidth = i; }
      int          getSarHeight()                                        { return m_sarHeight; }
      void         setSarHeight(int i)                                   { m_sarHeight = i; }
      bool         getOverscanInfoPresentFlag()                          { return m_overscanInfoPresentFlag; }
      void         setOverscanInfoPresentFlag(bool i)                    { m_overscanInfoPresentFlag = i; }
      bool         getOverscanAppropriateFlag()                          { return m_overscanAppropriateFlag; }
      void         setOverscanAppropriateFlag(bool i)                    { m_overscanAppropriateFlag = i; }
      bool         getVideoSignalTypePresentFlag()                       { return m_videoSignalTypePresentFlag; }
      void         setVideoSignalTypePresentFlag(bool i)                 { m_videoSignalTypePresentFlag = i; }
      int          getVideoFormat()                                      { return m_videoFormat; }
      void         setVideoFormat(int i)                                 { m_videoFormat = i; }
      bool         getVideoFullRangeFlag()                               { return m_videoFullRangeFlag; }
      void         setVideoFullRangeFlag(bool i)                         { m_videoFullRangeFlag = i; }
      bool         getColourDescriptionPresentFlag()                     { return m_colourDescriptionPresentFlag; }
      void         setColourDescriptionPresentFlag(bool i)               { m_colourDescriptionPresentFlag = i; }
      int          getColourPrimaries()                                  { return m_colourPrimaries; }
      void         setColourPrimaries(int i)                             { m_colourPrimaries = i; }
      int          getTransferCharacteristics()                          { return m_transferCharacteristics; }
      void         setTransferCharacteristics(int i)                     { m_transferCharacteristics = i; }
      int          getMatrixCoefficients()                               { return m_matrixCoefficients; }
      void         setMatrixCoefficients(int i)                          { m_matrixCoefficients = i; }
      bool         getChromaLocInfoPresentFlag()                         { return m_chromaLocInfoPresentFlag; }
      void         setChromaLocInfoPresentFlag(bool i)                   { m_chromaLocInfoPresentFlag = i; }
      int          getChromaSampleLocTypeTopField()                      { return m_chromaSampleLocTypeTopField; }
      void         setChromaSampleLocTypeTopField(int i)                 { m_chromaSampleLocTypeTopField = i; }
      int          getChromaSampleLocTypeBottomField()                   { return m_chromaSampleLocTypeBottomField; }
      void         setChromaSampleLocTypeBottomField(int i)              { m_chromaSampleLocTypeBottomField = i; }
      bool         getNeutralChromaIndicationFlag()                      { return m_neutralChromaIndicationFlag; }
      void         setNeutralChromaIndicationFlag(bool i)                { m_neutralChromaIndicationFlag = i; }
      Window      &getDefaultDisplayWindow()                             { return m_defaultDisplayWindow; }
      void         setDefaultDisplayWindow (int offsetLeft, int offsetRight, int offsetTop, int offsetBottom ) { m_defaultDisplayWindow.setWindow (offsetLeft, offsetRight, offsetTop, offsetBottom); }
      bool         getFrameFieldInfoPresentFlag()                        { return m_frameFieldInfoPresentFlag; }
      void         setFrameFieldInfoPresentFlag(bool i)                  { m_frameFieldInfoPresentFlag = i; }
      bool         getPocProportionalToTimingFlag()                      { return m_pocProportionalToTimingFlag; }
      void         setPocProportionalToTimingFlag(bool x)                { m_pocProportionalToTimingFlag = x;    }
      int          getNumTicksPocDiffOneMinus1()                         { return m_numTicksPocDiffOneMinus1;    }
      void         setNumTicksPocDiffOneMinus1(int x)                    { m_numTicksPocDiffOneMinus1 = x;       }
      bool         getBitstreamRestrictionFlag()                         { return m_bitstreamRestrictionFlag; }
      void         setBitstreamRestrictionFlag(bool i)                   { m_bitstreamRestrictionFlag = i; }
    #if HEVC_TILES_WPP
      bool         getTilesFixedStructureFlag()                          { return m_tilesFixedStructureFlag; }
      void         setTilesFixedStructureFlag(bool i)                    { m_tilesFixedStructureFlag = i; }
    #endif
      bool         getMotionVectorsOverPicBoundariesFlag()               { return m_motionVectorsOverPicBoundariesFlag; }
      void         setMotionVectorsOverPicBoundariesFlag(bool i)         { m_motionVectorsOverPicBoundariesFlag = i; }
      int          getMinSpatialSegmentationIdc()                        { return m_minSpatialSegmentationIdc; }
      void         setMinSpatialSegmentationIdc(int i)                   { m_minSpatialSegmentationIdc = i; }
      int          getMaxBytesPerPicDenom()                              { return m_maxBytesPerPicDenom; }
      void         setMaxBytesPerPicDenom(int i)                         { m_maxBytesPerPicDenom = i; }
      int          getMaxBitsPerMinCuDenom()                             { return m_maxBitsPerMinCuDenom; }
      void         setMaxBitsPerMinCuDenom(int i)                        { m_maxBitsPerMinCuDenom = i; }
      int          getLog2MaxMvLengthHorizontal()                        { return m_log2MaxMvLengthHorizontal; }
      void         setLog2MaxMvLengthHorizontal(int i)                   { m_log2MaxMvLengthHorizontal = i; }
      int          getLog2MaxMvLengthVertical()                          { return m_log2MaxMvLengthVertical; }
      void         setLog2MaxMvLengthVertical(int i)                     { m_log2MaxMvLengthVertical = i; }
    
      bool         getProgressiveSourceFlag() const                      { return m_progressiveSourceFlag; }
      void         setProgressiveSourceFlag(bool b)                      { m_progressiveSourceFlag = b; }
    
      bool         getInterlacedSourceFlag() const                       { return m_interlacedSourceFlag; }
      void         setInterlacedSourceFlag(bool b)                       { m_interlacedSourceFlag = b; }
    
      bool         getNonPackedConstraintFlag() const                    { return m_nonPackedConstraintFlag; }
      void         setNonPackedConstraintFlag(bool b)                    { m_nonPackedConstraintFlag = b; }
    
      bool         getFrameOnlyConstraintFlag() const                    { return m_frameOnlyConstraintFlag; }
      void         setFrameOnlyConstraintFlag(bool b)                    { m_frameOnlyConstraintFlag = b; }
    
      uint32_t         getBitDepthConstraintValue() const                    { return m_bitDepthConstraintValue; }
      void         setBitDepthConstraintValue(uint32_t v)                    { m_bitDepthConstraintValue=v; }
    
      ChromaFormat getChromaFormatConstraintValue() const                { return m_chromaFormatConstraintValue; }
      void         setChromaFormatConstraintValue(ChromaFormat v)        { m_chromaFormatConstraintValue=v; }
    
      bool         getIntraConstraintFlag() const                        { return m_intraConstraintFlag; }
      void         setIntraConstraintFlag(bool b)                        { m_intraConstraintFlag=b; }
    
      bool         getOnePictureOnlyConstraintFlag() const               { return m_onePictureOnlyConstraintFlag; }
      void         setOnePictureOnlyConstraintFlag(bool b)               { m_onePictureOnlyConstraintFlag=b; }
    
      bool         getLowerBitRateConstraintFlag() const                 { return m_lowerBitRateConstraintFlag; }
      void         setLowerBitRateConstraintFlag(bool b)                 { m_lowerBitRateConstraintFlag=b; }
    
      bool         getChromaResamplingFilterHintEnabled()                { return m_chromaResamplingFilterHintEnabled;}
      void         setChromaResamplingFilterHintEnabled(bool i)          { m_chromaResamplingFilterHintEnabled = i;}
      int          getChromaResamplingHorFilterIdc()                     { return m_chromaResamplingHorFilterIdc;}
      void         setChromaResamplingHorFilterIdc(int i)                { m_chromaResamplingHorFilterIdc = i;}
      int          getChromaResamplingVerFilterIdc()                     { return m_chromaResamplingVerFilterIdc;}
      void         setChromaResamplingVerFilterIdc(int i)                { m_chromaResamplingVerFilterIdc = i;}
    
      void         setSummaryOutFilename(const std::string &s)           { m_summaryOutFilename = s; }
      const std::string& getSummaryOutFilename() const                   { return m_summaryOutFilename; }
      void         setSummaryPicFilenameBase(const std::string &s)       { m_summaryPicFilenameBase = s; }
      const std::string& getSummaryPicFilenameBase() const               { return m_summaryPicFilenameBase; }
    
      void         setSummaryVerboseness(uint32_t v)                         { m_summaryVerboseness = v; }
      uint32_t         getSummaryVerboseness( ) const                        { return m_summaryVerboseness; }
      void         setIMV(int n)                                         { m_ImvMode = n; }
      int          getIMV() const                                        { return m_ImvMode; }
      void         setIMV4PelFast(int n)                                 { m_Imv4PelFast = n; }
      int          getIMV4PelFast() const                                { return m_Imv4PelFast; }
      void         setIMVMaxCand(int n)                                  { m_ImvMaxCand = n; }
      int          getIMVMaxCand() const                                 { return m_ImvMaxCand; }
      void         setDecodeBitstream( int i, const std::string& s )     { m_decodeBitstreams[i] = s; }
      const std::string& getDecodeBitstream( int i )               const { return m_decodeBitstreams[i]; }
      bool         getForceDecodeBitstream1()                      const { return m_forceDecodeBitstream1; }
      void         setForceDecodeBitstream1( bool b )                    { m_forceDecodeBitstream1 = b; }
      void         setSwitchPOC( int i )                                 { m_switchPOC = i; }
      int          getSwitchPOC()                                  const { return m_switchPOC; }
      void         setSwitchDQP( int i )                                 { m_switchDQP = i; }
      int          getSwitchDQP()                                  const { return m_switchDQP; }
      void         setFastForwardToPOC( int i )                          { m_fastForwardToPOC = i; }
      int          getFastForwardToPOC()                           const { return m_fastForwardToPOC; }
      bool         useFastForwardToPOC()                           const { return m_fastForwardToPOC >= 0; }
      void         setStopAfterFFtoPOC( bool b )                         { m_stopAfterFFtoPOC = b; }
      bool         getStopAfterFFtoPOC()                           const { return m_stopAfterFFtoPOC; }
      void         setBs2ModPOCAndType( bool b )                         { m_bs2ModPOCAndType = b; }
      bool         getBs2ModPOCAndType()                           const { return m_bs2ModPOCAndType; }
    
    
    #if ENABLE_SPLIT_PARALLELISM
      void         setNumSplitThreads( int n )                           { m_numSplitThreads = n; }
      int          getNumSplitThreads()                            const { return m_numSplitThreads; }
      void         setForceSingleSplitThread( bool b )                   { m_forceSingleSplitThread = b; }
      int          getForceSingleSplitThread()                     const { return m_forceSingleSplitThread; }
    #endif
    #if ENABLE_WPP_PARALLELISM
      void         setNumWppThreads( int n )                             { m_numWppThreads = n; }
      int          getNumWppThreads()                              const { return m_numWppThreads; }
      void         setNumWppExtraLines( int n )                          { m_numWppExtraLines = n; }
      int          getNumWppExtraLines()                           const { return m_numWppExtraLines; }
      void         setEnsureWppBitEqual( bool b)                         { m_ensureWppBitEqual = b; }
      bool         getEnsureWppBitEqual()                          const { return m_ensureWppBitEqual; }
    #endif
      void        setUseALF( bool b ) { m_alf = b; }
      bool        getUseALF()                                      const { return m_alf; }
    };
    
    //! \}
      
    #endif // !defined(AFX_TENCCFG_H__6B99B797_F4DA_4E46_8E78_7656339A6C41__INCLUDED_)