HEVC Test Model (HM)  HM-16.18
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TComSlice.h
Go to the documentation of this file.
1 /* The copyright in this software is being made available under the BSD
2  * License, included below. This software may be subject to other third party
3  * and contributor rights, including patent rights, and no such rights are
4  * granted under this license.
5  *
6  * Copyright (c) 2010-2017, ITU/ISO/IEC
7  * All rights reserved.
8  *
9  * Redistribution and use in source and binary forms, with or without
10  * modification, are permitted provided that the following conditions are met:
11  *
12  * * Redistributions of source code must retain the above copyright notice,
13  * this list of conditions and the following disclaimer.
14  * * Redistributions in binary form must reproduce the above copyright notice,
15  * this list of conditions and the following disclaimer in the documentation
16  * and/or other materials provided with the distribution.
17  * * Neither the name of the ITU/ISO/IEC nor the names of its contributors may
18  * be used to endorse or promote products derived from this software without
19  * specific prior written permission.
20  *
21  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
25  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
26  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
31  * THE POSSIBILITY OF SUCH DAMAGE.
32  */
33 
38 #ifndef __TCOMSLICE__
39 #define __TCOMSLICE__
40 
41 #include <cstring>
42 #include <map>
43 #include <vector>
44 #include "CommonDef.h"
45 #include "TComRom.h"
46 #include "TComList.h"
47 #include "TComChromaFormat.h"
48 
51 
52 class TComPic;
53 class TComTrQuant;
54 // ====================================================================================================================
55 // Constants
56 // ====================================================================================================================
57 
58 static const UInt REF_PIC_LIST_NUM_IDX=32;
59 
60 // ====================================================================================================================
61 // Class definition
62 // ====================================================================================================================
63 
66 {
67 private:
84 
85 public:
87  virtual ~TComReferencePictureSet();
88  Int getPocLSBLT(Int i) const { return m_pocLSBLT[i]; }
89  Void setPocLSBLT(Int i, Int x) { m_pocLSBLT[i] = x; }
94  Void setUsed(Int bufferNum, Bool used);
95  Void setDeltaPOC(Int bufferNum, Int deltaPOC);
96  Void setPOC(Int bufferNum, Int deltaPOC);
97  Void setNumberOfPictures(Int numberOfPictures);
98  Void setCheckLTMSBPresent(Int bufferNum, Bool b );
99  Bool getCheckLTMSBPresent(Int bufferNum) const;
100 
101  Int getUsed(Int bufferNum) const;
102  Int getDeltaPOC(Int bufferNum) const;
103  Int getPOC(Int bufferNum) const;
104  Int getNumberOfPictures() const;
105 
112 
118  Int getDeltaRPS() const { return m_deltaRPS; }
120  Int getNumRefIdc() const { return m_numRefIdc; }
121 
122  Void setRefIdc(Int bufferNum, Int refIdc);
123  Int getRefIdc(Int bufferNum) const ;
124 
125  Void sortDeltaPOC();
126  Void printDeltaPOC() const;
127 };
128 
131 {
132 private:
133  std::vector<TComReferencePictureSet> m_referencePictureSets;
134 
135 public:
137  virtual ~TComRPSList() { }
138 
139  Void create (Int numberOfEntries) { m_referencePictureSets.resize(numberOfEntries); }
140  Void destroy () { }
141 
142 
143  TComReferencePictureSet* getReferencePictureSet(Int referencePictureSetNum) { return &m_referencePictureSets[referencePictureSetNum]; }
144  const TComReferencePictureSet* getReferencePictureSet(Int referencePictureSetNum) const { return &m_referencePictureSets[referencePictureSetNum]; }
145 
147 };
148 
151 {
152 public:
153  TComScalingList();
154  virtual ~TComScalingList() { }
155  Int* getScalingListAddress(UInt sizeId, UInt listId) { return &(m_scalingListCoef[sizeId][listId][0]); }
156  const Int* getScalingListAddress(UInt sizeId, UInt listId) const { return &(m_scalingListCoef[sizeId][listId][0]); }
157  Void checkPredMode(UInt sizeId, UInt listId);
158 
159  Void setRefMatrixId(UInt sizeId, UInt listId, UInt u) { m_refMatrixId[sizeId][listId] = u; }
160  UInt getRefMatrixId(UInt sizeId, UInt listId) const { return m_refMatrixId[sizeId][listId]; }
161 
162  const Int* getScalingListDefaultAddress(UInt sizeId, UInt listId);
163  Void processDefaultMatrix(UInt sizeId, UInt listId);
164 
165  Void setScalingListDC(UInt sizeId, UInt listId, UInt u) { m_scalingListDC[sizeId][listId] = u; }
166  Int getScalingListDC(UInt sizeId, UInt listId) const { return m_scalingListDC[sizeId][listId]; }
167 
168  Void setScalingListPredModeFlag(UInt sizeId, UInt listId, Bool bIsDPCM) { m_scalingListPredModeFlagIsDPCM[sizeId][listId] = bIsDPCM; }
169  Bool getScalingListPredModeFlag(UInt sizeId, UInt listId) const { return m_scalingListPredModeFlagIsDPCM[sizeId][listId]; }
170 
172  Void processRefMatrix(UInt sizeId, UInt listId , UInt refListId );
173  Bool xParseScalingList(const std::string &fileName);
176 
177 private:
178  Void outputScalingLists(std::ostream &os) const;
183 };
184 
186 {
192 
202 
203 public:
205 
206  Int getProfileSpace() const { return m_profileSpace; }
208 
209  Level::Tier getTierFlag() const { return m_tierFlag; }
211 
214 
217 
218  Level::Name getLevelIdc() const { return m_levelIdc; }
220 
223 
226 
229 
232 
235 
238 
241 
244 
247 };
248 
249 
250 class TComPTL
251 {
253  ProfileTierLevel m_subLayerPTL [MAX_TLAYER-1]; // max. value of max_sub_layers_minus1 is MAX_TLAYER-1 (= 6)
256 
257 public:
258  TComPTL();
261 
264 
266  const ProfileTierLevel* getGeneralPTL() const { return &m_generalPTL; }
268  const ProfileTierLevel* getSubLayerPTL(Int i) const { return &m_subLayerPTL[i]; }
269 };
270 
272 
274 {
285 };
286 
287 class TComHRD
288 {
289 private:
304 
305 public:
314  ,m_bitRateScale (0)
315  ,m_cpbSizeScale (0)
319  {}
320 
321  virtual ~TComHRD() {}
322 
325 
328 
331 
334 
337 
340 
343 
344  Void setBitRateScale( UInt value ) { m_bitRateScale = value; }
345  UInt getBitRateScale( ) const { return m_bitRateScale; }
346 
347  Void setCpbSizeScale( UInt value ) { m_cpbSizeScale = value; }
348  UInt getCpbSizeScale( ) const { return m_cpbSizeScale; }
351 
354 
357 
360 
361  Void setFixedPicRateFlag( Int layer, Bool flag ) { m_HRD[layer].fixedPicRateFlag = flag; }
362  Bool getFixedPicRateFlag( Int layer ) const { return m_HRD[layer].fixedPicRateFlag; }
363 
366 
367  Void setPicDurationInTcMinus1( Int layer, UInt value ) { m_HRD[layer].picDurationInTcMinus1 = value; }
368  UInt getPicDurationInTcMinus1( Int layer ) const { return m_HRD[layer].picDurationInTcMinus1; }
369 
370  Void setLowDelayHrdFlag( Int layer, Bool flag ) { m_HRD[layer].lowDelayHrdFlag = flag; }
371  Bool getLowDelayHrdFlag( Int layer ) const { return m_HRD[layer].lowDelayHrdFlag; }
372 
373  Void setCpbCntMinus1( Int layer, UInt value ) { m_HRD[layer].cpbCntMinus1 = value; }
374  UInt getCpbCntMinus1( Int layer ) const { return m_HRD[layer].cpbCntMinus1; }
375 
376  Void setBitRateValueMinus1( Int layer, Int cpbcnt, Int nalOrVcl, UInt value ) { m_HRD[layer].bitRateValueMinus1[cpbcnt][nalOrVcl] = value; }
377  UInt getBitRateValueMinus1( Int layer, Int cpbcnt, Int nalOrVcl ) const { return m_HRD[layer].bitRateValueMinus1[cpbcnt][nalOrVcl]; }
378 
379  Void setCpbSizeValueMinus1( Int layer, Int cpbcnt, Int nalOrVcl, UInt value ) { m_HRD[layer].cpbSizeValue[cpbcnt][nalOrVcl] = value; }
380  UInt getCpbSizeValueMinus1( Int layer, Int cpbcnt, Int nalOrVcl ) const { return m_HRD[layer].cpbSizeValue[cpbcnt][nalOrVcl]; }
381  Void setDuCpbSizeValueMinus1( Int layer, Int cpbcnt, Int nalOrVcl, UInt value ) { m_HRD[layer].ducpbSizeValue[cpbcnt][nalOrVcl] = value; }
382  UInt getDuCpbSizeValueMinus1( Int layer, Int cpbcnt, Int nalOrVcl ) const { return m_HRD[layer].ducpbSizeValue[cpbcnt][nalOrVcl]; }
383  Void setDuBitRateValueMinus1( Int layer, Int cpbcnt, Int nalOrVcl, UInt value ) { m_HRD[layer].duBitRateValue[cpbcnt][nalOrVcl] = value; }
384  UInt getDuBitRateValueMinus1(Int layer, Int cpbcnt, Int nalOrVcl ) const { return m_HRD[layer].duBitRateValue[cpbcnt][nalOrVcl]; }
385  Void setCbrFlag( Int layer, Int cpbcnt, Int nalOrVcl, Bool value ) { m_HRD[layer].cbrFlag[cpbcnt][nalOrVcl] = value; }
386  Bool getCbrFlag( Int layer, Int cpbcnt, Int nalOrVcl ) const { return m_HRD[layer].cbrFlag[cpbcnt][nalOrVcl]; }
387 
389 };
390 
392 {
398 public:
400  : m_timingInfoPresentFlag (false)
401  , m_numUnitsInTick (1001)
402  , m_timeScale (60000)
405  {}
406 
409 
412 
413  Void setTimeScale( UInt value ) { m_timeScale = value; }
414  UInt getTimeScale( ) const { return m_timeScale; }
415 
418 
421 };
422 
424 {
425  union
426  {
427  struct {
430  } comp;
431  Int offset[2]; /* two chroma components */
432  } u;
433 };
434 
435 class TComVPS
436 {
437 private:
442 
445  UInt m_uiMaxLatencyIncrease[MAX_TLAYER]; // Really max latency increase plus 1 (value 0 expresses no limit)
446 
449  std::vector<TComHRD> m_hrdParameters;
450  std::vector<UInt> m_hrdOpSetIdx;
451  std::vector<Bool> m_cprmsPresentFlag;
454 
457 
458 public:
459  TComVPS();
460 
461  virtual ~TComVPS();
462 
464  {
468  }
469 
471  const TComHRD* getHrdParameters( UInt i ) const { return &m_hrdParameters[ i ]; }
472  UInt getHrdOpSetIdx( UInt i ) const { return m_hrdOpSetIdx[ i ]; }
473  Void setHrdOpSetIdx( UInt val, UInt i ) { m_hrdOpSetIdx[ i ] = val; }
474  Bool getCprmsPresentFlag( UInt i ) const { return m_cprmsPresentFlag[ i ]; }
476 
477  Int getVPSId() const { return m_VPSId; }
478  Void setVPSId(Int i) { m_VPSId = i; }
479 
480  UInt getMaxTLayers() const { return m_uiMaxTLayers; }
482 
483  UInt getMaxLayers() const { return m_uiMaxLayers; }
485 
488 
489  Void setNumReorderPics(UInt v, UInt tLayer) { m_numReorderPics[tLayer] = v; }
490  UInt getNumReorderPics(UInt tLayer) const { return m_numReorderPics[tLayer]; }
491 
492  Void setMaxDecPicBuffering(UInt v, UInt tLayer) { assert(tLayer < MAX_TLAYER); m_uiMaxDecPicBuffering[tLayer] = v; }
493  UInt getMaxDecPicBuffering(UInt tLayer) const { return m_uiMaxDecPicBuffering[tLayer]; }
494 
496  UInt getMaxLatencyIncrease(UInt tLayer) const { return m_uiMaxLatencyIncrease[tLayer]; }
497 
500 
503 
504  UInt getMaxOpSets() const { return m_numOpSets; }
506  Bool getLayerIdIncludedFlag(UInt opsIdx, UInt id) const { return m_layerIdIncludedFlag[opsIdx][id]; }
507  Void setLayerIdIncludedFlag(Bool v, UInt opsIdx, UInt id) { m_layerIdIncludedFlag[opsIdx][id] = v; }
508 
509  TComPTL* getPTL() { return &m_pcPTL; }
510  const TComPTL* getPTL() const { return &m_pcPTL; }
512  const TimingInfo* getTimingInfo() const { return &m_timingInfo; }
513 };
514 
515 class TComVUI
516 {
517 private:
550 
551 public:
553  : m_aspectRatioInfoPresentFlag (false) //TODO: This initialiser list contains magic numbers
554  , m_aspectRatioIdc (0)
555  , m_sarWidth (0)
556  , m_sarHeight (0)
557  , m_overscanInfoPresentFlag (false)
558  , m_overscanAppropriateFlag (false)
560  , m_videoFormat (5)
561  , m_videoFullRangeFlag (false)
563  , m_colourPrimaries (2)
570  , m_fieldSeqFlag (false)
574  , m_tilesFixedStructureFlag (false)
582  {}
583 
584  virtual ~TComVUI() {}
585 
588 
591 
592  Int getSarWidth() const { return m_sarWidth; }
594 
595  Int getSarHeight() const { return m_sarHeight; }
597 
600 
603 
606 
607  Int getVideoFormat() const { return m_videoFormat; }
609 
612 
615 
618 
621 
624 
627 
630 
633 
636 
637  Bool getFieldSeqFlag() const { return m_fieldSeqFlag; }
639 
642 
645  Void setDefaultDisplayWindow(Window& defaultDisplayWindow ) { m_defaultDisplayWindow = defaultDisplayWindow; }
646 
649 
652 
655 
658 
661 
664 
667 
670 
673 
676 
678  const TComHRD* getHrdParameters() const { return &m_hrdParameters; }
679 
681  const TimingInfo* getTimingInfo() const { return &m_timingInfo; }
682 };
683 
685 class TComSPSRExt // Names aligned to text specification
686 {
687 private:
696 
697 public:
698  TComSPSRExt();
699 
701  {
711  }
712 
713 
716 
719 
720  Bool getRdpcmEnabledFlag(const RDPCMSignallingMode signallingMode) const { return m_rdpcmEnabledFlag[signallingMode]; }
721  Void setRdpcmEnabledFlag(const RDPCMSignallingMode signallingMode, const Bool value) { m_rdpcmEnabledFlag[signallingMode] = value; }
722 
725 
728 
731 
734 
737 };
738 
740 class TComSPS
741 {
742 private:
746 
747  UInt m_uiMaxTLayers; // maximum number of temporal layers
748 
749  // Structure
752 
758 
760 
765 
766  // Tool list
775 
776  // Parameter
781 
786  // Max physical transform size
788 
790 
791  Bool m_bTemporalIdNestingFlag; // temporal_id_nesting_flag
792 
798 
800 
803 
805 
809 
810 #if O0043_BEST_EFFORT_DECODING
811  UInt m_forceDecodeBitDepth; // 0 = do not force the decoder's bit depth, other = force the decoder's bit depth to this value (best effort decoding)
812 #endif
813 
814 public:
815  TComSPS();
816  virtual ~TComSPS();
817 #if O0043_BEST_EFFORT_DECODING
818  Void setForceDecodeBitDepth(UInt bitDepth) { m_forceDecodeBitDepth = bitDepth; }
819  UInt getForceDecodeBitDepth() const { return m_forceDecodeBitDepth; }
820 #endif
821 
822  Int getVPSId() const { return m_VPSId; }
823  Void setVPSId(Int i) { m_VPSId = i; }
824  Int getSPSId() const { return m_SPSId; }
825  Void setSPSId(Int i) { m_SPSId = i; }
828 
829  static Int getWinUnitX (Int chromaFormatIdc) { assert (chromaFormatIdc >= 0 && chromaFormatIdc < NUM_CHROMA_FORMAT); return m_winUnitX[chromaFormatIdc]; }
830  static Int getWinUnitY (Int chromaFormatIdc) { assert (chromaFormatIdc >= 0 && chromaFormatIdc < NUM_CHROMA_FORMAT); return m_winUnitY[chromaFormatIdc]; }
831 
832  // structure
837 
840  Void setConformanceWindow(Window& conformanceWindow ) { m_conformanceWindow = conformanceWindow; }
841 
844 
845  UInt getLtRefPicPocLsbSps(UInt index) const { assert( index < MAX_NUM_LONG_TERM_REF_PICS ); return m_ltRefPicPocLsbSps[index]; }
846  Void setLtRefPicPocLsbSps(UInt index, UInt val) { assert( index < MAX_NUM_LONG_TERM_REF_PICS ); m_ltRefPicPocLsbSps[index] = val; }
847 
850 
855 
857  UInt getMaxCUWidth() const { return m_uiMaxCUWidth; }
859  UInt getMaxCUHeight() const { return m_uiMaxCUHeight; }
862  Void setUsePCM( Bool b ) { m_usePCM = b; }
863  Bool getUsePCM() const { return m_usePCM; }
869  UInt getBitsForPOC() const { return m_uiBitsForPOC; }
870  Bool getUseAMP() const { return m_useAMP; }
871  Void setUseAMP( Bool b ) { m_useAMP = b; }
880  Void setNumReorderPics(Int i, UInt tlayer) { m_numReorderPics[tlayer] = i; }
881  Int getNumReorderPics(UInt tlayer) const { return m_numReorderPics[tlayer]; }
882  Void createRPSList( Int numRPS );
883  const TComRPSList* getRPSList() const { return &m_RPSList; }
889  // physical transform
891  UInt getMaxTrSize() const { return m_uiMaxTrSize; }
892 
893  // Bit-depth
894  Int getBitDepth(ChannelType type) const { return m_bitDepths.recon[type]; }
895  Void setBitDepth(ChannelType type, Int u ) { m_bitDepths.recon[type] = u; }
896 #if O0043_BEST_EFFORT_DECODING
897  Int getStreamBitDepth(ChannelType type) const { return m_bitDepths.stream[type]; }
898  Void setStreamBitDepth(ChannelType type, Int u ) { m_bitDepths.stream[type] = u; }
899 #endif
900  const BitDepths& getBitDepths() const { return m_bitDepths; }
901  Int getMaxLog2TrDynamicRange(ChannelType channelType) const { return getSpsRangeExtension().getExtendedPrecisionProcessingFlag() ? std::max<Int>(15, Int(m_bitDepths.recon[channelType] + 6)) : 15; }
902 
904  Int getQpBDOffset(ChannelType type) const { return m_qpBDOffset[type]; }
906 
907  Void setUseSAO(Bool bVal) { m_bUseSAO = bVal; }
908  Bool getUseSAO() const { return m_bUseSAO; }
909 
910  UInt getMaxTLayers() const { return m_uiMaxTLayers; }
911  Void setMaxTLayers( UInt uiMaxTLayers ) { assert( uiMaxTLayers <= MAX_TLAYER ); m_uiMaxTLayers = uiMaxTLayers; }
912 
915  UInt getPCMBitDepth(ChannelType type) const { return m_pcmBitDepths[type]; }
919 
925  const TComScalingList& getScalingList() const { return m_scalingList; }
926  UInt getMaxDecPicBuffering(UInt tlayer) const { return m_uiMaxDecPicBuffering[tlayer]; }
927  Void setMaxDecPicBuffering( UInt ui, UInt tlayer ) { assert(tlayer < MAX_TLAYER); m_uiMaxDecPicBuffering[tlayer] = ui; }
930 
933 
937  const TComVUI* getVuiParameters() const { return &m_vuiParameters; }
938  const TComPTL* getPTL() const { return &m_pcPTL; }
939  TComPTL* getPTL() { return &m_pcPTL; }
940 
943 };
944 
945 
947 
949 {
950 private:
955 
956 public:
958  virtual ~TComRefPicListModification();
959 
964  UInt getRefPicSetIdxL0(UInt idx) const { assert(idx<REF_PIC_LIST_NUM_IDX); return m_RefPicSetIdxL0[idx]; }
965  Void setRefPicSetIdxL0(UInt idx, UInt refPicSetIdx) { assert(idx<REF_PIC_LIST_NUM_IDX); m_RefPicSetIdxL0[idx] = refPicSetIdx; }
966  UInt getRefPicSetIdxL1(UInt idx) const { assert(idx<REF_PIC_LIST_NUM_IDX); return m_RefPicSetIdxL1[idx]; }
967  Void setRefPicSetIdxL1(UInt idx, UInt refPicSetIdx) { assert(idx<REF_PIC_LIST_NUM_IDX); m_RefPicSetIdxL1[idx] = refPicSetIdx; }
968 };
969 
970 
971 
973 class TComPPSRExt // Names aligned to text specification
974 {
975 private:
978 
979  // Chroma QP Adjustments
981  Int m_chromaQpOffsetListLen; // size (excludes the null entry used in the following array).
983 
985 
986 public:
987  TComPPSRExt();
988 
989  Bool settingsDifferFromDefaults(const bool bTransformSkipEnabledFlag) const
990  {
991  return (bTransformSkipEnabledFlag && (getLog2MaxTransformSkipBlockSize() !=2))
996  }
997 
1000 
1003 
1005 
1008 
1011 
1012  const ChromaQpAdj& getChromaQpOffsetListEntry( Int cuChromaQpOffsetIdxPlus1 ) const
1013  {
1014  assert(cuChromaQpOffsetIdxPlus1 < m_chromaQpOffsetListLen+1);
1015  return m_ChromaQpAdjTableIncludingNullEntry[cuChromaQpOffsetIdxPlus1]; // Array includes entry [0] for the null offset used when cu_chroma_qp_offset_flag=0, and entries [cu_chroma_qp_offset_idx+1...] otherwise
1016  }
1017 
1018  Void setChromaQpOffsetListEntry( Int cuChromaQpOffsetIdxPlus1, Int cbOffset, Int crOffset )
1019  {
1020  assert (cuChromaQpOffsetIdxPlus1 != 0 && cuChromaQpOffsetIdxPlus1 <= MAX_QP_OFFSET_LIST_SIZE);
1021  m_ChromaQpAdjTableIncludingNullEntry[cuChromaQpOffsetIdxPlus1].u.comp.CbOffset = cbOffset; // Array includes entry [0] for the null offset used when cu_chroma_qp_offset_flag=0, and entries [cu_chroma_qp_offset_idx+1...] otherwise
1022  m_ChromaQpAdjTableIncludingNullEntry[cuChromaQpOffsetIdxPlus1].u.comp.CrOffset = crOffset;
1023  m_chromaQpOffsetListLen = max(m_chromaQpOffsetListLen, cuChromaQpOffsetIdxPlus1);
1024  }
1025 
1026  // Now: getPpsRangeExtension().getLog2SaoOffsetScale and getPpsRangeExtension().setLog2SaoOffsetScale
1028  Void setLog2SaoOffsetScale(ChannelType type, UInt uiBitShift) { m_log2SaoOffsetScale[type] = uiBitShift; }
1029 
1030 };
1031 
1032 
1034 class TComPPS
1035 {
1036 private:
1037  Int m_PPSId; // pic_parameter_set_id
1038  Int m_SPSId; // seq_parameter_set_id
1041  Bool m_bConstrainedIntraPred; // constrained_intra_pred_flag
1042  Bool m_bSliceChromaQpFlag; // slicelevel_chroma_qp_flag
1043 
1044  // access channel
1046 
1049 
1052 
1061 
1066  std::vector<Int> m_tileColumnWidth;
1067  std::vector<Int> m_tileRowHeight;
1068 
1070 
1072 
1078  Int m_deblockingFilterBetaOffsetDiv2; //< beta offset for deblocking filter
1079  Int m_deblockingFilterTcOffsetDiv2; //< tc offset for deblocking filter
1085 
1087 
1088 public:
1089  TComPPS();
1090  virtual ~TComPPS();
1091 
1092  Int getPPSId() const { return m_PPSId; }
1093  Void setPPSId(Int i) { m_PPSId = i; }
1094  Int getSPSId() const { return m_SPSId; }
1095  Void setSPSId(Int i) { m_SPSId = i; }
1096 
1099  Bool getUseDQP() const { return m_useDQP; }
1100  Void setUseDQP( Bool b ) { m_useDQP = b; }
1105 
1108 
1110  {
1111  if (compID==COMPONENT_Cb)
1112  {
1113  m_chromaCbQpOffset = i;
1114  }
1115  else if (compID==COMPONENT_Cr)
1116  {
1117  m_chromaCrQpOffset = i;
1118  }
1119  else
1120  {
1121  assert(0);
1122  }
1123  }
1125  {
1126  return (compID==COMPONENT_Y) ? 0 : (compID==COMPONENT_Cb ? m_chromaCbQpOffset : m_chromaCrQpOffset );
1127  }
1128 
1133 
1134  Bool getUseWP() const { return m_bUseWeightPred; }
1138 
1143 
1146 
1153 
1160  Void setTileColumnWidth(const std::vector<Int>& columnWidth ) { m_tileColumnWidth = columnWidth; }
1161  UInt getTileColumnWidth(UInt columnIdx) const { return m_tileColumnWidth[columnIdx]; }
1164  Void setTileRowHeight(const std::vector<Int>& rowHeight) { m_tileRowHeight = rowHeight; }
1165  UInt getTileRowHeight(UInt rowIdx) const { return m_tileRowHeight[rowIdx]; }
1166 
1169 
1185  const TComScalingList& getScalingList() const { return m_scalingList; }
1196 
1199 };
1200 
1202 {
1203  // Explicit weighted prediction parameters parsed in slice header,
1204  // or Implicit weighted prediction parameters (8 bits depth values).
1209 
1210  // Weighted prediction scaling values built from above parameters (bitdepth scaled):
1216 };
1217 
1219 {
1222 };
1223 
1226 {
1227 
1228 private:
1229  // Bitstream writing
1237  const TComReferencePictureSet* m_pRPS; //< pointer to RPS, either in the SPS or the local RPS in the same slice header
1238  TComReferencePictureSet m_localRPS; //< RPS when present in slice header
1239  Int m_rpsIdx; //< index of used RPS in the SPS or -1 for local RPS in the slice header
1245 #if ADAPTIVE_QP_SELECTION
1247 #endif
1250  Bool m_deblockingFilterOverrideFlag; //< offsets for deblocking filter inherit from PPS
1251  Int m_deblockingFilterBetaOffsetDiv2; //< beta offset for deblocking filter
1252  Int m_deblockingFilterTcOffsetDiv2; //< tc offset for deblocking filter
1254  Int m_aiNumRefIdx [NUM_REF_PIC_LIST_01]; // for multiple reference of current slice
1255 
1257 
1258  // Data
1265 
1266  // referenced slice?
1268 
1269  // access channel
1274  Bool m_colFromL0Flag; // collocated picture from List0 flag
1275 
1279 
1282 
1284 
1288 
1303 
1306  WPScalingParam m_weightPredTable[NUM_REF_PIC_LIST_01][MAX_NUM_REF][MAX_NUM_COMPONENT]; // [REF_PIC_LIST_0 or REF_PIC_LIST_1][refIdx][0:Y, 1:U, 2:V]
1308 
1309  std::vector<UInt> m_substreamSizes;
1310 
1312 
1316 
1318 
1319  SliceType m_encCABACTableIdx; // Used to transmit table selection across slices.
1320 
1321 public:
1322  TComSlice();
1323  virtual ~TComSlice();
1324  Void initSlice();
1325 
1326  Void setVPS( TComVPS* pcVPS ) { m_pcVPS = pcVPS; }
1327  const TComVPS* getVPS() const { return m_pcVPS; }
1328  Void setSPS( const TComSPS* pcSPS ) { m_pcSPS = pcSPS; }
1329  const TComSPS* getSPS() const { return m_pcSPS; }
1330 
1331  Void setPPS( const TComPPS* pcPPS ) { m_pcPPS = pcPPS; m_iPPSId = (pcPPS) ? pcPPS->getPPSId() : -1; }
1332  const TComPPS* getPPS() const { return m_pcPPS; }
1333 
1334  Void setPPSId( Int PPSId ) { m_iPPSId = PPSId; }
1335  Int getPPSId() const { return m_iPPSId; }
1339  Bool getSaoEnabledFlag(ChannelType chType) const { return m_saoEnabledFlag[chType]; }
1340  Void setRPS( const TComReferencePictureSet *pcRPS ) { m_pRPS = pcRPS; }
1343 
1344  Void setRPSidx( Int rpsIdx ) { m_rpsIdx = rpsIdx; }
1345  Int getRPSidx() const { return m_rpsIdx; }
1347  Void setLastIDR(Int iIDRPOC) { m_iLastIDR = iIDRPOC; }
1348  Int getLastIDR() const { return m_iLastIDR; }
1349  Void setAssociatedIRAPPOC(Int iAssociatedIRAPPOC) { m_iAssociatedIRAP = iAssociatedIRAPPOC; }
1351  Void setAssociatedIRAPType(NalUnitType associatedIRAPType) { m_iAssociatedIRAPType = associatedIRAPType; }
1354  Int getPOC() const { return m_iPOC; }
1355  Int getSliceQp() const { return m_iSliceQp; }
1359 #if ADAPTIVE_QP_SELECTION
1360  Int getSliceQpBase() const { return m_iSliceQpBase; }
1361 #endif
1363  Int getSliceChromaQpDelta(ComponentID compID) const { return isLuma(compID) ? 0 : m_iSliceChromaQpDelta[compID]; }
1369 
1370  Int getNumRefIdx( RefPicList e ) const { return m_aiNumRefIdx[e]; }
1371  TComPic* getPic() { return m_pcPic; }
1372  const TComPic* getPic() const { return m_pcPic; }
1373  TComPic* getRefPic( RefPicList e, Int iRefIdx) { return m_apcRefPicList[e][iRefIdx]; }
1374  const TComPic* getRefPic( RefPicList e, Int iRefIdx) const { return m_apcRefPicList[e][iRefIdx]; }
1375  Int getRefPOC( RefPicList e, Int iRefIdx) const { return m_aiRefPOCList[e][iRefIdx]; }
1376  Int getDepth() const { return m_iDepth; }
1378  UInt getColRefIdx() const { return m_colRefIdx; }
1379  Void checkColRefIdx(UInt curSliceIdx, TComPic* pic);
1380  Bool getIsUsedAsLongTerm(Int i, Int j) const { return m_bIsUsedAsLongTerm[i][j]; }
1381  Void setIsUsedAsLongTerm(Int i, Int j, Bool value) { m_bIsUsedAsLongTerm[i][j] = value; }
1382  Bool getCheckLDC() const { return m_bCheckLDC; }
1384  Int getNumRpsCurrTempList() const;
1385  Int getList1IdxToList0Idx( Int list1Idx ) const { return m_list1IdxToList0Idx[list1Idx]; }
1387  Bool isReferenced() const { return m_bRefenced; }
1389  Void setPOC( Int i ) { m_iPOC = i; }
1392  Bool getRapPicFlag() const;
1394  Bool isIRAP() const { return (getNalUnitType() >= 16) && (getNalUnitType() <= 23); }
1395  Void checkCRA(const TComReferencePictureSet *pReferencePictureSet, Int& pocCRA, NalUnitType& associatedIRAPType, TComList<TComPic *>& rcListPic);
1396  Void decodingRefreshMarking(Int& pocCRA, Bool& bRefreshPending, TComList<TComPic*>& rcListPic, const bool bEfficientFieldIRAPEnabled);
1399 #if ADAPTIVE_QP_SELECTION
1401 #endif
1403  Void setSliceChromaQpDelta( ComponentID compID, Int i ) { m_iSliceChromaQpDelta[compID] = isLuma(compID) ? 0 : i; }
1409 
1410  Void setRefPic( TComPic* p, RefPicList e, Int iRefIdx ) { m_apcRefPicList[e][iRefIdx] = p; }
1411  Void setRefPOC( Int i, RefPicList e, Int iRefIdx ) { m_aiRefPOCList[e][iRefIdx] = i; }
1413  Void setPic( TComPic* p ) { m_pcPic = p; }
1414  Void setDepth( Int iDepth ) { m_iDepth = iDepth; }
1415 
1416  Void setRefPicList( TComList<TComPic*>& rcListPic, Bool checkNumPocTotalCurr = false );
1417  Void setRefPOCList();
1418  Void setColFromL0Flag( Bool colFromL0 ) { m_colFromL0Flag = colFromL0; }
1419  Void setColRefIdx( UInt refIdx) { m_colRefIdx = refIdx; }
1422 
1423  Bool isIntra() const { return m_eSliceType == I_SLICE; }
1424  Bool isInterB() const { return m_eSliceType == B_SLICE; }
1425  Bool isInterP() const { return m_eSliceType == P_SLICE; }
1426 
1427  Void setLambdas( const Double lambdas[MAX_NUM_COMPONENT] ) { for (Int component = 0; component < MAX_NUM_COMPONENT; component++) m_lambdas[component] = lambdas[component]; }
1428  const Double* getLambdas() const { return m_lambdas; }
1429 
1430  Void initEqualRef();
1431  Bool isEqualRef( RefPicList e, Int iRefIdx1, Int iRefIdx2 )
1432  {
1433  assert(e<NUM_REF_PIC_LIST_01);
1434  if (iRefIdx1 < 0 || iRefIdx2 < 0)
1435  {
1436  return false;
1437  }
1438  else
1439  {
1440  return m_abEqualRef[e][iRefIdx1][iRefIdx2];
1441  }
1442  }
1443 
1444  Void setEqualRef( RefPicList e, Int iRefIdx1, Int iRefIdx2, Bool b)
1445  {
1446  assert(e<NUM_REF_PIC_LIST_01);
1447  m_abEqualRef[e][iRefIdx1][iRefIdx2] = m_abEqualRef[e][iRefIdx2][iRefIdx1] = b;
1448  }
1449 
1450  static Void sortPicList( TComList<TComPic*>& rcListPic );
1452 
1453  UInt getTLayer() const { return m_uiTLayer; }
1454  Void setTLayer( UInt uiTLayer ) { m_uiTLayer = uiTLayer; }
1455 
1456  Void setTLayerInfo( UInt uiTLayer );
1457  Void decodingMarking( TComList<TComPic*>& rcListPic, Int iGOPSIze, Int& iMaxRefPicNum );
1462  Int checkThatAllRefPicsAreAvailable( TComList<TComPic*>& rcListPic, const TComReferencePictureSet *pReferencePictureSet, Bool printErrors, Int pocRandomAccess = 0, Bool bUseRecoveryPoint = false);
1463  Void createExplicitReferencePictureSetFromReference( TComList<TComPic*>& rcListPic, const TComReferencePictureSet *pReferencePictureSet, Bool isRAP, Int pocRandomAccess, Bool bUseRecoveryPoint, const Bool bEfficientFieldIRAPEnabled);
1466 
1469 
1472 
1475 
1478  Void setSliceArgument( UInt uiArgument ) { m_sliceArgument = uiArgument; }
1480  Void setSliceCurStartCtuTsAddr( UInt ctuTsAddr ) { m_sliceCurStartCtuTsAddr = ctuTsAddr; } // CTU Tile-scan address (as opposed to raster-scan)
1481  UInt getSliceCurStartCtuTsAddr() const { return m_sliceCurStartCtuTsAddr; } // CTU Tile-scan address (as opposed to raster-scan)
1482  Void setSliceCurEndCtuTsAddr( UInt ctuTsAddr ) { m_sliceCurEndCtuTsAddr = ctuTsAddr; } // CTU Tile-scan address (as opposed to raster-scan)
1483  UInt getSliceCurEndCtuTsAddr() const { return m_sliceCurEndCtuTsAddr; } // CTU Tile-scan address (as opposed to raster-scan)
1485  UInt getSliceIdx() const { return m_sliceIdx; }
1486  Void copySliceInfo(TComSlice *pcSliceSrc);
1491  Void setSliceSegmentCurStartCtuTsAddr( UInt ctuTsAddr ) { m_sliceSegmentCurStartCtuTsAddr = ctuTsAddr; } // CTU Tile-scan address (as opposed to raster-scan)
1492  UInt getSliceSegmentCurStartCtuTsAddr() const { return m_sliceSegmentCurStartCtuTsAddr; } // CTU Tile-scan address (as opposed to raster-scan)
1493  Void setSliceSegmentCurEndCtuTsAddr( UInt ctuTsAddr ) { m_sliceSegmentCurEndCtuTsAddr = ctuTsAddr; } // CTU Tile-scan address (as opposed to raster-scan)
1494  UInt getSliceSegmentCurEndCtuTsAddr() const { return m_sliceSegmentCurEndCtuTsAddr; } // CTU Tile-scan address (as opposed to raster-scan)
1495  Void setSliceBits( UInt uiVal ) { m_sliceBits = uiVal; }
1496  UInt getSliceBits() const { return m_sliceBits; }
1499  Void setFinalized( Bool uiVal ) { m_bFinalized = uiVal; }
1500  Bool getFinalized() const { return m_bFinalized; }
1506  {
1507  memcpy(m_weightPredTable, wp, sizeof(WPScalingParam)*NUM_REF_PIC_LIST_01*MAX_NUM_REF*MAX_NUM_COMPONENT);
1508  }
1509 
1510  Void getWpScaling( RefPicList e, Int iRefIdx, WPScalingParam *&wp);
1511 
1512  Void resetWpScaling();
1513  Void initWpScaling(const TComSPS *sps);
1514 
1516  {
1517  memcpy(m_weightACDCParam, wp, sizeof(WPACDCParam)*MAX_NUM_COMPONENT);
1518  }
1519 
1522 
1525  Void addSubstreamSize( UInt size ) { m_substreamSizes.push_back(size); }
1526  UInt getSubstreamSize( Int idx ) { assert(idx<getNumberOfSubstreamSizes()); return m_substreamSizes[idx]; }
1527 
1534 
1537 
1540 
1541 protected:
1542  TComPic* xGetRefPic (TComList<TComPic*>& rcListPic, Int poc);
1543  TComPic* xGetLongTermRefPic(TComList<TComPic*>& rcListPic, Int poc, Bool pocHasMsb);
1544 };// END CLASS DEFINITION TComSlice
1545 
1546 
1547 Void calculateParameterSetChangedFlag(Bool &bChanged, const std::vector<UChar> *pOldData, const std::vector<UChar> *pNewData);
1548 
1549 template <class T> class ParameterSetMap
1550 {
1551 public:
1552  template <class Tm>
1553  struct MapData
1554  {
1556  std::vector<UChar> *pNaluData; // Can be null
1558  };
1559 
1561  :m_maxId (maxId)
1562  {}
1563 
1565  {
1566  for (typename std::map<Int,MapData<T> >::iterator i = m_paramsetMap.begin(); i!= m_paramsetMap.end(); i++)
1567  {
1568  delete (*i).second.pNaluData;
1569  delete (*i).second.parameterSet;
1570  }
1571  }
1572 
1573  T *allocatePS(const Int psId)
1574  {
1575  assert ( psId < m_maxId );
1576  if ( m_paramsetMap.find(psId) == m_paramsetMap.end() )
1577  {
1578  m_paramsetMap[psId].bChanged = true;
1579  m_paramsetMap[psId].pNaluData=0;
1580  m_paramsetMap[psId].parameterSet = new T;
1581  setID(m_paramsetMap[psId].parameterSet, psId);
1582  }
1583  return m_paramsetMap[psId].parameterSet;
1584  }
1585 
1586  Void storePS(Int psId, T *ps, const std::vector<UChar> *pNaluData)
1587  {
1588  assert ( psId < m_maxId );
1589  if ( m_paramsetMap.find(psId) != m_paramsetMap.end() )
1590  {
1591  MapData<T> &mapData=m_paramsetMap[psId];
1592 
1593  // work out changed flag
1594  calculateParameterSetChangedFlag(mapData.bChanged, mapData.pNaluData, pNaluData);
1595  delete m_paramsetMap[psId].pNaluData;
1596  delete m_paramsetMap[psId].parameterSet;
1597 
1598  m_paramsetMap[psId].parameterSet = ps;
1599  }
1600  else
1601  {
1602  m_paramsetMap[psId].parameterSet = ps;
1603  m_paramsetMap[psId].bChanged = false;
1604  }
1605  if (pNaluData != 0)
1606  {
1607  m_paramsetMap[psId].pNaluData=new std::vector<UChar>;
1608  *(m_paramsetMap[psId].pNaluData) = *pNaluData;
1609  }
1610  else
1611  {
1612  m_paramsetMap[psId].pNaluData=0;
1613  }
1614  }
1615 
1616  Void setChangedFlag(Int psId, Bool bChanged=true)
1617  {
1618  if ( m_paramsetMap.find(psId) != m_paramsetMap.end() )
1619  {
1620  m_paramsetMap[psId].bChanged=bChanged;
1621  }
1622  }
1623 
1625  {
1626  if ( m_paramsetMap.find(psId) != m_paramsetMap.end() )
1627  {
1628  m_paramsetMap[psId].bChanged=false;
1629  }
1630  }
1631 
1633  {
1634  const typename std::map<Int,MapData<T> >::const_iterator constit=m_paramsetMap.find(psId);
1635  if ( constit != m_paramsetMap.end() )
1636  {
1637  return constit->second.bChanged;
1638  }
1639  return false;
1640  }
1641 
1642  T* getPS(Int psId)
1643  {
1644  typename std::map<Int,MapData<T> >::iterator it=m_paramsetMap.find(psId);
1645  return ( it == m_paramsetMap.end() ) ? NULL : (it)->second.parameterSet;
1646  }
1647 
1648  const T* getPS(Int psId) const
1649  {
1650  typename std::map<Int,MapData<T> >::const_iterator it=m_paramsetMap.find(psId);
1651  return ( it == m_paramsetMap.end() ) ? NULL : (it)->second.parameterSet;
1652  }
1653 
1655  {
1656  return (m_paramsetMap.begin() == m_paramsetMap.end() ) ? NULL : m_paramsetMap.begin()->second.parameterSet;
1657  }
1658 
1659 private:
1660  std::map<Int,MapData<T> > m_paramsetMap;
1662 
1663  static Void setID(T* parameterSet, const Int psId);
1664 };
1665 
1666 
1668 {
1669 public:
1671  virtual ~ParameterSetManager();
1672 
1674  Void storeVPS(TComVPS *vps, const std::vector<UChar> &naluData) { m_vpsMap.storePS( vps->getVPSId(), vps, &naluData); };
1676  TComVPS* getVPS(Int vpsId) { return m_vpsMap.getPS(vpsId); };
1677  Bool getVPSChangedFlag(Int vpsId) const { return m_vpsMap.getChangedFlag(vpsId); }
1680 
1682  Void storeSPS(TComSPS *sps, const std::vector<UChar> &naluData) { m_spsMap.storePS( sps->getSPSId(), sps, &naluData); };
1684  TComSPS* getSPS(Int spsId) { return m_spsMap.getPS(spsId); };
1685  Bool getSPSChangedFlag(Int spsId) const { return m_spsMap.getChangedFlag(spsId); }
1688 
1690  Void storePPS(TComPPS *pps, const std::vector<UChar> &naluData) { m_ppsMap.storePS( pps->getPPSId(), pps, &naluData); };
1692  TComPPS* getPPS(Int ppsId) { return m_ppsMap.getPS(ppsId); };
1693  Bool getPPSChangedFlag(Int ppsId) const { return m_ppsMap.getChangedFlag(ppsId); }
1696 
1699  // Bool activateSPSWithSEI(Int SPSId);
1700 
1703  Bool activatePPS(Int ppsId, Bool isIRAP);
1704 
1705  const TComVPS* getActiveVPS()const { return m_vpsMap.getPS(m_activeVPSId); };
1706  const TComSPS* getActiveSPS()const { return m_spsMap.getPS(m_activeSPSId); };
1707 
1708 protected:
1712 
1713  Int m_activeVPSId; // -1 for nothing active
1714  Int m_activeSPSId; // -1 for nothing active
1715 };
1716 
1718 
1719 #endif // __TCOMSLICE__
Bool getPCMFilterDisableFlag() const
Definition: TComSlice.h:918
UInt m_refMatrixId[SCALING_LIST_SIZE_NUM][SCALING_LIST_NUM]
RefMatrixID.
Definition: TComSlice.h:181
Bool m_profileCompatibilityFlag[32]
Definition: TComSlice.h:190
Bool getOnePictureOnlyConstraintFlag() const
Definition: TComSlice.h:242
Void setNumTileColumnsMinus1(Int i)
Definition: TComSlice.h:1158
Int getNumberOfPositivePictures() const
Definition: TComSlice.h:109
Bool m_bIsUsedAsLongTerm[NUM_REF_PIC_LIST_01][MAX_NUM_REF+1]
Definition: TComSlice.h:1263
Void setColourDescriptionPresentFlag(Bool i)
Definition: TComSlice.h:614
Bool m_fieldSeqFlag
Definition: TComSlice.h:535
Void setCheckLDC(Bool b)
Definition: TComSlice.h:1420
Bool getNalHrdParametersPresentFlag() const
Definition: TComSlice.h:324
Bool isEqualRef(RefPicList e, Int iRefIdx1, Int iRefIdx2)
Definition: TComSlice.h:1431
Int getNumTileRowsMinus1() const
Definition: TComSlice.h:1163
Int getLastIDR() const
Definition: TComSlice.h:1348
Bool getPicOutputFlag() const
Definition: TComSlice.h:1337
UInt m_bitRateScale
Definition: TComSlice.h:297
Bool m_bLMvdL1Zero
Definition: TComSlice.h:1313
static const Int MAX_NUM_REF_PICS
max. number of pictures used for reference
Definition: CommonDef.h:124
Bool getCrossComponentPredictionEnabledFlag() const
Definition: TComSlice.h:1001
Void setSliceSegmentCurEndCtuTsAddr(UInt ctuTsAddr)
Definition: TComSlice.h:1493
Void setPPSId(Int i)
Definition: TComSlice.h:1093
const TComReferencePictureSet * m_pRPS
Definition: TComSlice.h:1237
HrdSubLayerInfo m_HRD[MAX_TLAYER]
Definition: TComSlice.h:303
Void setSliceSegmentMode(SliceConstraint mode)
Definition: TComSlice.h:1487
Bool isStepwiseTemporalLayerSwitchingPointCandidate(TComList< TComPic * > &rcListPic)
Definition: TComSlice.cpp:809
virtual ~TComSPS()
Definition: TComSlice.cpp:1561
UInt m_uiBitsForPOC
Definition: TComSlice.h:782
Void setNoOutputPriorPicsFlag(Bool val)
Definition: TComSlice.h:1467
UInt m_sliceSegmentBits
Definition: TComSlice.h:1301
Void setMaxTotalCUDepth(UInt u)
Definition: TComSlice.h:860
Int getPicInitQPMinus26() const
Definition: TComSlice.h:1097
Void setTransformSkipRotationEnabledFlag(const Bool value)
Definition: TComSlice.h:715
UInt getDuCpbRemovalDelayLengthMinus1() const
Definition: TComSlice.h:336
Void checkPredMode(UInt sizeId, UInt listId)
Definition: TComSlice.cpp:1838
virtual ~ParameterSetManager()
Definition: TComSlice.cpp:2102
static const Int SCALING_LIST_NUM
list number for quantization matrix
Definition: CommonDef.h:232
std::vector< Int > m_tileRowHeight
Definition: TComSlice.h:1067
UInt m_uiMaxLayers
Definition: TComSlice.h:440
Void setUsed(Int bufferNum, Bool used)
Definition: TComSlice.cpp:1650
Int m_deblockingFilterTcOffsetDiv2
Definition: TComSlice.h:1079
Void setQuadtreeTULog2MaxSize(UInt u)
Definition: TComSlice.h:872
Void clearSubstreamSizes()
Definition: TComSlice.h:1523
UInt getMaxNuhReservedZeroLayerId() const
Definition: TComSlice.h:501
Int getSPSId() const
Definition: TComSlice.h:1094
SliceType
supported slice type
Definition: TypeDef.h:283
Bool getFixedPicRateFlag(Int layer) const
Definition: TComSlice.h:362
Bool getVclHrdParametersPresentFlag() const
Definition: TComSlice.h:327
Void decodingMarking(TComList< TComPic * > &rcListPic, Int iGOPSIze, Int &iMaxRefPicNum)
UInt getMaxLatencyIncrease(UInt tLayer) const
Definition: TComSlice.h:496
Void setPPSId(Int PPSId)
Definition: TComSlice.h:1334
Bool m_subLayerLevelPresentFlag[MAX_TLAYER-1]
Definition: TComSlice.h:255
Bool m_progressiveSourceFlag
Definition: TComSlice.h:193
UInt m_cpbRemovalDelayLengthMinus1
Definition: TComSlice.h:301
Bool getPersistentRiceAdaptationEnabledFlag() const
Definition: TComSlice.h:732
Void setVideoSignalTypePresentFlag(Bool i)
Definition: TComSlice.h:605
T * getPS(Int psId)
Definition: TComSlice.h:1642
Bool getSPSTemporalMVPEnabledFlag() const
Definition: TComSlice.h:887
Void setDeblockingFilterTcOffsetDiv2(Int i)
Definition: TComSlice.h:1408
Bool m_hrdParametersPresentFlag
Definition: TComSlice.h:538
Int getLog2MinCodingBlockSize() const
Definition: TComSlice.h:851
Bool testWeightBiPred() const
Definition: TComSlice.h:1503
Void setSPSId(Int i)
Definition: TComSlice.h:825
Void setSarHeight(Int i)
Definition: TComSlice.h:596
Bool getUsedByCurrPicLtSPSFlag(Int i) const
Definition: TComSlice.h:848
virtual ~TComPPS()
Definition: TComSlice.cpp:1622
Bool getUseStrongIntraSmoothing() const
Definition: TComSlice.h:932
Int getDeltaPocMSBCycleLT(Int i) const
Definition: TComSlice.h:90
UInt getMaxTLayers() const
Definition: TComSlice.h:480
TComPPSRExt m_ppsRangeExtension
Definition: TComSlice.h:1086
Void setMaxCUHeight(UInt u)
Definition: TComSlice.h:858
Void setUseWP(Bool b)
Definition: TComSlice.h:1136
virtual ~TComHRD()
Definition: TComSlice.h:321
Int * getScalingListAddress(UInt sizeId, UInt listId)
get matrix coefficient
Definition: TComSlice.h:155
Void setColRefIdx(UInt refIdx)
Definition: TComSlice.h:1419
Void getWpAcDcParam(WPACDCParam *&wp)
get AC and DC values for weighted pred
Definition: TComSlice.cpp:1389
SliceType getSliceType() const
Definition: TComSlice.h:1353
Void setUseDQP(Bool b)
Definition: TComSlice.h:1100
Level::Name m_levelIdc
Definition: TComSlice.h:191
Void setDependentSliceSegmentFlag(Bool val)
Definition: TComSlice.h:1358
Int m_iPPSId
picture parameter set ID
Definition: TComSlice.h:1231
Int m_aiRefPOCList[NUM_REF_PIC_LIST_01][MAX_NUM_REF+1]
Definition: TComSlice.h:1262
Void setColFromL0Flag(Bool colFromL0)
Definition: TComSlice.h:1418
Void setFixedPicRateFlag(Int layer, Bool flag)
Definition: TComSlice.h:361
ChannelType
Definition: TypeDef.h:301
Bool m_motionVectorsOverPicBoundariesFlag
Definition: TComSlice.h:541
UInt getCpbSizeValueMinus1(Int layer, Int cpbcnt, Int nalOrVcl) const
Definition: TComSlice.h:380
Bool getVideoFullRangeFlag() const
Definition: TComSlice.h:610
Bool getTemporalLayerNonReferenceFlag()
Definition: TComSlice.h:1530
Int getSPSId() const
Definition: TComSlice.h:824
static Void setID(T *parameterSet, const Int psId)
Void setRefPicSetIdxL0(UInt idx, UInt refPicSetIdx)
Definition: TComSlice.h:965
Int getSarHeight() const
Definition: TComSlice.h:595
Int getNumTileColumnsMinus1() const
Definition: TComSlice.h:1159
Bool checkDefaultScalingList()
Definition: TComSlice.cpp:1809
UInt getHrdOpSetIdx(UInt i) const
Definition: TComSlice.h:472
Bool getPPSChangedFlag(Int ppsId) const
Definition: TComSlice.h:1693
Void printDeltaPOC() const
Definition: TComSlice.cpp:1753
Void processRefMatrix(UInt sizeId, UInt listId, UInt refListId)
Definition: TComSlice.cpp:1833
UInt m_uiMaxCuDQPDepth
Definition: TComSlice.h:1045
Void setMatrixCoefficients(Int i)
Definition: TComSlice.h:623
BitDepths m_bitDepths
Definition: TComSlice.h:777
SliceConstraint getSliceMode() const
Definition: TComSlice.h:1477
picture class (symbol + YUV buffers)
Definition: TComPic.h:56
Bool m_dependentSliceSegmentsEnabledFlag
Indicates the presence of dependent slices.
Definition: TComSlice.h:1058
Int m_iPOC
Definition: TComSlice.h:1233
TComPic * xGetLongTermRefPic(TComList< TComPic * > &rcListPic, Int poc, Bool pocHasMsb)
Definition: TComSlice.cpp:247
Void setTierFlag(Level::Tier x)
Definition: TComSlice.h:210
UInt getSubstreamSize(Int idx)
Definition: TComSlice.h:1526
Defines version information, constants and small in-line functions.
Bool getCprmsPresentFlag(UInt i) const
Definition: TComSlice.h:474
void Void
Definition: TypeDef.h:203
const Window & getConformanceWindow() const
Definition: TComSlice.h:839
Int getRPSidx() const
Definition: TComSlice.h:1345
Int m_SPSId
Definition: TComSlice.h:1038
Void setVideoFullRangeFlag(Bool i)
Definition: TComSlice.h:611
Void setRefPicSetIdxL1(UInt idx, UInt refPicSetIdx)
Definition: TComSlice.h:967
Void initEqualRef()
Definition: TComSlice.cpp:487
Void setDuCpbSizeScale(UInt value)
Definition: TComSlice.h:349
Void setScalingListPredModeFlag(UInt sizeId, UInt listId, Bool bIsDPCM)
Definition: TComSlice.h:168
Int m_iLastIDR
Definition: TComSlice.h:1234
Int getUsed(Int bufferNum) const
Definition: TComSlice.cpp:1665
Int getPocLSBLT(Int i) const
Definition: TComSlice.h:88
Void setNumberOfNegativePictures(Int number)
Definition: TComSlice.h:106
Int getNumTicksPocDiffOneMinus1() const
Definition: TComSlice.h:420
const TComPPSRExt & getPpsRangeExtension() const
Definition: TComSlice.h:1197
Bool getLayerIdIncludedFlag(UInt opsIdx, UInt id) const
Definition: TComSlice.h:506
Bool getTransformSkipContextEnabledFlag() const
Definition: TComSlice.h:717
Int m_minSpatialSegmentationIdc
Definition: TComSlice.h:543
Bool m_videoFullRangeFlag
Definition: TComSlice.h:526
Bool getSliceChromaQpFlag() const
Definition: TComSlice.h:1103
Void setMinSpatialSegmentationIdc(Int i)
Definition: TComSlice.h:663
Int m_iDepth
Definition: TComSlice.h:1264
Int m_aspectRatioIdc
Definition: TComSlice.h:519
TComScalingList m_scalingList
Definition: TComSlice.h:795
const TComSPSRExt & getSpsRangeExtension() const
Definition: TComSlice.h:941
Void setWpScaling(WPScalingParam wp[NUM_REF_PIC_LIST_01][MAX_NUM_REF][MAX_NUM_COMPONENT])
Definition: TComSlice.h:1505
Void setTransquantBypassEnabledFlag(Bool b)
Definition: TComSlice.h:1141
Int getVPSId() const
Definition: TComSlice.h:822
UInt getTimeScale() const
Definition: TComSlice.h:414
Void setDependentSliceSegmentsEnabledFlag(Bool val)
Definition: TComSlice.h:1150
Void setMaxCUWidth(UInt u)
Definition: TComSlice.h:856
Void setDeblockingFilterBetaOffsetDiv2(Int i)
Definition: TComSlice.h:1407
Void clearChangedFlag(Int psId)
Definition: TComSlice.h:1624
global variables &amp; functions (header)
UInt m_sliceArgument
Definition: TComSlice.h:1290
UInt getBitDepthConstraint() const
Definition: TComSlice.h:233
Void setScalingListPresentFlag(Bool b)
Definition: TComSlice.h:1183
NalUnitType getAssociatedIRAPType() const
Definition: TComSlice.h:1352
Bool getNeutralChromaIndicationFlag() const
Definition: TComSlice.h:634
const Int * getScalingListDefaultAddress(UInt sizeId, UInt listId)
get default matrix coefficient
Definition: TComSlice.cpp:2044
UInt m_numLongTermRefPicSPS
Definition: TComSlice.h:783
#define NULL
Definition: CommonDef.h:107
TimingInfo m_timingInfo
Definition: TComSlice.h:549
Void setSubLayerProfilePresentFlag(Int i, Bool x)
Definition: TComSlice.h:260
Void setChromaSampleLocTypeTopField(Int i)
Definition: TComSlice.h:629
Void setEnableTMVPFlag(Bool b)
Definition: TComSlice.h:1535
Bool lowDelayHrdFlag
Definition: TComSlice.h:278
Bool m_bUseWeightPred
Use of Weighting Prediction (P_SLICE)
Definition: TComSlice.h:1053
Bool m_useWeightedBiPred
Use of Weighting Bi-Prediction (B_SLICE)
Definition: TComSlice.h:1054
Int getNumExtraSliceHeaderBits() const
Definition: TComSlice.h:1190
Bool m_frameFieldInfoPresentFlag
Definition: TComSlice.h:537
union ChromaQpAdj::@2 u
UInt getBitsForPOC() const
Definition: TComSlice.h:869
Void checkDcOfMatrix()
Definition: TComSlice.cpp:2077
Bool m_bUseSAO
Definition: TComSlice.h:789
Void setCabacInitPresentFlag(Bool flag)
Definition: TComSlice.h:1170
Bool m_bCheckLDC
Definition: TComSlice.h:1256
Void copySliceInfo(TComSlice *pcSliceSrc)
Definition: TComSlice.cpp:665
Bool m_bRefenced
Definition: TComSlice.h:1267
Int m_chromaQpOffsetListLen
Definition: TComSlice.h:981
UInt m_cpbSizeScale
Definition: TComSlice.h:298
Void addSubstreamSize(UInt size)
Definition: TComSlice.h:1525
Void storePS(Int psId, T *ps, const std::vector< UChar > *pNaluData)
Definition: TComSlice.h:1586
SliceConstraint m_sliceSegmentMode
Definition: TComSlice.h:1294
const ChromaQpAdj & getChromaQpOffsetListEntry(Int cuChromaQpOffsetIdxPlus1) const
Definition: TComSlice.h:1012
Void setPCMFilterDisableFlag(Bool bValue)
Definition: TComSlice.h:917
Void setFrameOnlyConstraintFlag(Bool b)
Definition: TComSlice.h:231
Bool getUseChromaQpAdj() const
Definition: TComSlice.h:1364
UInt m_log2SaoOffsetScale[MAX_NUM_CHANNEL_TYPE]
Definition: TComSlice.h:984
Bool m_PicOutputFlag
pic_output_flag
Definition: TComSlice.h:1232
Int m_scalingListDC[SCALING_LIST_SIZE_NUM][SCALING_LIST_NUM]
the DC value of the matrix coefficient for 16x16
Definition: TComSlice.h:180
Bool m_bCheckLTMSB[MAX_NUM_REF_PICS]
Definition: TComSlice.h:80
Int m_numTicksPocDiffOneMinus1
Definition: TComSlice.h:397
Bool getCabacInitPresentFlag() const
Definition: TComSlice.h:1171
Void setPersistentRiceAdaptationEnabledFlag(const Bool value)
Definition: TComSlice.h:733
Int m_colourPrimaries
Definition: TComSlice.h:528
UInt getNumHrdParameters() const
Definition: TComSlice.h:498
const TimingInfo * getTimingInfo() const
Definition: TComSlice.h:681
Int m_iAssociatedIRAP
Definition: TComSlice.h:1235
Void clearVPSChangedFlag(Int vpsId)
Definition: TComSlice.h:1678
Bool getScalingListPresentFlag() const
Definition: TComSlice.h:922
Void setIsUsedAsLongTerm(Int i, Int j, Bool value)
Definition: TComSlice.h:1381
Void setDuCpbSizeValueMinus1(Int layer, Int cpbcnt, Int nalOrVcl, UInt value)
Definition: TComSlice.h:381
unsigned int UInt
Definition: TypeDef.h:212
SliceConstraint getSliceSegmentMode() const
Definition: TComSlice.h:1488
Bool getHrdParametersPresentFlag() const
Definition: TComSlice.h:647
Bool m_lowerBitRateConstraintFlag
Definition: TComSlice.h:201
Void setSaoEnabledFlag(ChannelType chType, Bool s)
Definition: TComSlice.h:1338
Void setDeltaPOC(Int bufferNum, Int deltaPOC)
Definition: TComSlice.cpp:1655
Bool m_usedByCurrPicLtSPSFlag[MAX_NUM_LONG_TERM_REF_PICS]
Definition: TComSlice.h:785
Bool getUseSAO() const
Definition: TComSlice.h:908
Void setCprmsPresentFlag(Bool val, UInt i)
Definition: TComSlice.h:475
Void setDiffCuChromaQpOffsetDepth(UInt u)
Definition: TComSlice.h:1007
TimingInfo m_timingInfo
Definition: TComSlice.h:456
Bool getMvdL1ZeroFlag() const
Definition: TComSlice.h:1383
UInt m_colRefIdx
Definition: TComSlice.h:1280
Void setMaxBytesPerPicDenom(Int i)
Definition: TComSlice.h:666
Void setRefPOCList()
Definition: TComSlice.cpp:290
Bool m_listsModificationPresentFlag
Definition: TComSlice.h:1082
static Int getWinUnitY(Int chromaFormatIdc)
Definition: TComSlice.h:830
Void clearSPSChangedFlag(Int spsId)
Definition: TComSlice.h:1686
Bool m_handleCraAsBlaFlag
Definition: TComSlice.h:1278
TComScalingList m_scalingList
ScalingList class.
Definition: TComSlice.h:1081
Bool m_OutputFlagPresentFlag
Indicates the presence of output_flag in slice header.
Definition: TComSlice.h:1055
UInt m_numRefIdxL1DefaultActive
Definition: TComSlice.h:1051
std::vector< Bool > m_cprmsPresentFlag
Definition: TComSlice.h:451
Int m_matrixCoefficients
Definition: TComSlice.h:530
ParameterSetMap(Int maxId)
Definition: TComSlice.h:1560
Int m_VPSId
Definition: TComSlice.h:744
Int m_chromaSampleLocTypeBottomField
Definition: TComSlice.h:533
const ProfileTierLevel * getSubLayerPTL(Int i) const
Definition: TComSlice.h:268
Void setLowerBitRateConstraintFlag(Bool b)
Definition: TComSlice.h:246
Bool isReferenced() const
Definition: TComSlice.h:1387
Void destroy()
Definition: TComSlice.h:140
ProfileTierLevel m_subLayerPTL[MAX_TLAYER-1]
Definition: TComSlice.h:253
Void setMaxBitsPerMinCuDenom(Int i)
Definition: TComSlice.h:669
Void setMaxCuDQPDepth(UInt u)
Definition: TComSlice.h:1106
Void setQuadtreeTUMaxDepthInter(UInt u)
Definition: TComSlice.h:876
Int m_sarHeight
Definition: TComSlice.h:521
Bool m_highPrecisionOffsetsEnabledFlag
Definition: TComSlice.h:693
Int m_iSliceQp
Definition: TComSlice.h:1243
Void setLtRefPicPocLsbSps(UInt index, UInt val)
Definition: TComSlice.h:846
Void setQpOffset(ComponentID compID, Int i)
Definition: TComSlice.h:1109
Void clearPPSChangedFlag(Int ppsId)
Definition: TComSlice.h:1694
SCALING_LIST class.
Definition: TComSlice.h:150
Void setNalUnitType(NalUnitType e)
Definition: TComSlice.h:1390
Int getMaxBytesPerPicDenom() const
Definition: TComSlice.h:665
UInt getPCMLog2MaxSize() const
Definition: TComSlice.h:865
Void setNumHrdParameters(UInt v)
Definition: TComSlice.h:499
Bool getRestrictedRefPicListsFlag() const
Definition: TComSlice.h:659
Int getMaxBitsPerMinCuDenom() const
Definition: TComSlice.h:668
Bool m_bTestWeightPred
Definition: TComSlice.h:1304
Void setRefPOC(Int i, RefPicList e, Int iRefIdx)
Definition: TComSlice.h:1411
const TComRPSList * getRPSList() const
Definition: TComSlice.h:883
Bool getNonPackedConstraintFlag() const
Definition: TComSlice.h:227
Void setTransformSkipContextEnabledFlag(const Bool value)
Definition: TComSlice.h:718
Int m_deblockingFilterTcOffsetDiv2
Definition: TComSlice.h:1252
Int getDeblockingFilterBetaOffsetDiv2() const
Definition: TComSlice.h:1367
Void setPicHeightInLumaSamples(UInt u)
Definition: TComSlice.h:835
UInt getMaxCUHeight() const
Definition: TComSlice.h:859
Void setPPS(const TComPPS *pcPPS)
Definition: TComSlice.h:1331
Void setCpbRemovalDelayLengthMinus1(UInt value)
Definition: TComSlice.h:355
Bool m_dependentSliceSegmentFlag
Definition: TComSlice.h:1244
Bool getLowDelayHrdFlag(Int layer) const
Definition: TComSlice.h:371
UInt getMaxDecPicBuffering(UInt tlayer) const
Definition: TComSlice.h:926
Bool getNoRaslOutputFlag() const
Definition: TComSlice.h:1471
Int getLog2MaxMvLengthVertical() const
Definition: TComSlice.h:674
Void setNumReorderPics(Int i, UInt tlayer)
Definition: TComSlice.h:880
const TComPic * getPic() const
Definition: TComSlice.h:1372
TComPic * m_apcRefPicList[NUM_REF_PIC_LIST_01][MAX_NUM_REF+1]
Definition: TComSlice.h:1261
UInt getDuCpbSizeValueMinus1(Int layer, Int cpbcnt, Int nalOrVcl) const
Definition: TComSlice.h:382
Int getTransferCharacteristics() const
Definition: TComSlice.h:619
TComRefPicListModification * getRefPicListModification()
Definition: TComSlice.h:1346
Bool isTemporalLayerSwitchingPoint(TComList< TComPic * > &rcListPic)
Definition: TComSlice.cpp:788
Bool getPPSDeblockingFilterDisabledFlag() const
get offset for deblocking filter disabled
Definition: TComSlice.h:1177
Bool xParseScalingList(const std::string &fileName)
Definition: TComSlice.cpp:1915
TComSPSRExt & getSpsRangeExtension()
Definition: TComSlice.h:942
Void setSliceCurStartCtuTsAddr(UInt ctuTsAddr)
Definition: TComSlice.h:1480
std::vector< TComReferencePictureSet > m_referencePictureSets
Definition: TComSlice.h:133
Void setChromaFormatConstraint(ChromaFormat fmt)
Definition: TComSlice.h:237
Reference Picture Lists class.
Definition: TComSlice.h:948
Bool m_subPicCpbParamsInPicTimingSEIFlag
Definition: TComSlice.h:295
UInt m_timeScale
Definition: TComSlice.h:395
Window & getDefaultDisplayWindow()
Definition: TComSlice.h:643
Void setMaxLatencyIncreasePlus1(UInt ui, UInt tlayer)
Definition: TComSlice.h:929
TComPic * xGetRefPic(TComList< TComPic * > &rcListPic, Int poc)
Definition: TComSlice.cpp:230
Void setAssociatedIRAPPOC(Int iAssociatedIRAPPOC)
Definition: TComSlice.h:1349
UInt getLog2MaxTransformSkipBlockSize() const
Definition: TComSlice.h:998
Int getDeblockingFilterTcOffsetDiv2() const
Definition: TComSlice.h:1368
Bool getHandleCraAsBlaFlag() const
Definition: TComSlice.h:1474
Bool settingsDifferFromDefaults() const
Definition: TComSlice.h:700
Void setUseAMP(Bool b)
Definition: TComSlice.h:871
static const Int MAX_NUM_REF
max. number of entries in picture reference list
Definition: CommonDef.h:125
ChromaFormat getChromaFormatIdc() const
Definition: TComSlice.h:826
virtual ~TComReferencePictureSet()
Definition: TComSlice.cpp:1646
Int getScalingListDC(UInt sizeId, UInt listId) const
get DC value
Definition: TComSlice.h:166
Void setNumReorderPics(UInt v, UInt tLayer)
Definition: TComSlice.h:489
Void setChromaSampleLocTypeBottomField(Int i)
Definition: TComSlice.h:632
Void setRPS(const TComReferencePictureSet *pcRPS)
Definition: TComSlice.h:1340
UInt m_ltRefPicPocLsbSps[MAX_NUM_LONG_TERM_REF_PICS]
Definition: TComSlice.h:784
Int m_log2MaxMvLengthHorizontal
Definition: TComSlice.h:546
Level::Tier m_tierFlag
Definition: TComSlice.h:188
Void setSliceIdx(UInt i)
Definition: TComSlice.h:1484
Void setCrossComponentPredictionEnabledFlag(Bool value)
Definition: TComSlice.h:1002
Int recon[MAX_NUM_CHANNEL_TYPE]
the bit depth as indicated in the SPS
Definition: TypeDef.h:793
Void setMaxLayers(UInt l)
Definition: TComSlice.h:484
Bool getMotionVectorsOverPicBoundariesFlag() const
Definition: TComSlice.h:656
Bool m_LFCrossSliceBoundaryFlag
Definition: TComSlice.h:1315
Bool getTransquantBypassEnabledFlag() const
Definition: TComSlice.h:1142
Int getChromaQpOffsetListLen() const
Definition: TComSlice.h:1010
Int getNumRefIdx(RefPicList e) const
Definition: TComSlice.h:1370
Void setEntropyCodingSyncEnabledFlag(Bool val)
Definition: TComSlice.h:1152
Level::Tier getTierFlag() const
Definition: TComSlice.h:209
Void resetWpScaling()
reset Default WP tables settings : no weight.
Definition: TComSlice.cpp:1412
Void setIntraConstraintFlag(Bool b)
Definition: TComSlice.h:240
static const Int MAX_CPB_CNT
Upper bound of (cpb_cnt_minus1 + 1)
Definition: CommonDef.h:150
ProfileTierLevel * getSubLayerPTL(Int i)
Definition: TComSlice.h:267
Bool m_intraConstraintFlag
Definition: TComSlice.h:199
Int getChromaSampleLocTypeBottomField() const
Definition: TComSlice.h:631
TComVPS * getFirstVPS()
Definition: TComSlice.h:1679
Void setLastIDR(Int iIDRPOC)
Definition: TComSlice.h:1347
Void setTimeScale(UInt value)
Definition: TComSlice.h:413
UInt getTileRowHeight(UInt rowIdx) const
Definition: TComSlice.h:1165
Void setNalHrdParametersPresentFlag(Bool flag)
Definition: TComSlice.h:323
UInt m_sliceCurStartCtuTsAddr
Definition: TComSlice.h:1291
Bool getSubLayerProfilePresentFlag(Int i) const
Definition: TComSlice.h:259
Bool getRefPicListModificationFlagL1() const
Definition: TComSlice.h:962
Bool getFrameOnlyConstraintFlag() const
Definition: TComSlice.h:230
Bool getSaoEnabledFlag(ChannelType chType) const
Definition: TComSlice.h:1339
std::vector< UInt > m_hrdOpSetIdx
Definition: TComSlice.h:450
Void setRefPicListModificationFlagL1(Bool flag)
Definition: TComSlice.h:963
Bool getLongTermRefsPresent() const
Definition: TComSlice.h:885
Void setSPSId(Int i)
Definition: TComSlice.h:1095
Bool getInterlacedSourceFlag() const
Definition: TComSlice.h:224
Void setBitsForPOC(UInt u)
Definition: TComSlice.h:868
Bool m_frameOnlyConstraintFlag
Definition: TComSlice.h:196
Void setChromaFormatIdc(ChromaFormat i)
Definition: TComSlice.h:827
Void setEncCABACTableIdx(SliceType idx)
Definition: TComSlice.h:1538
Void setPic(TComPic *p)
Definition: TComSlice.h:1413
Void setCpbSizeScale(UInt value)
Definition: TComSlice.h:347
const TComPic * getRefPic(RefPicList e, Int iRefIdx) const
Definition: TComSlice.h:1374
UInt getMaxTrSize() const
Definition: TComSlice.h:891
Bool getSignDataHidingEnabledFlag() const
Definition: TComSlice.h:1168
Void setTileUniformSpacingFlag(Bool b)
Definition: TComSlice.h:1156
Void storePPS(TComPPS *pps, const std::vector< UChar > &naluData)
store picture parameter set and take ownership of it
Definition: TComSlice.h:1690
TComVUI * getVuiParameters()
Definition: TComSlice.h:936
UInt getDiffCuChromaQpOffsetDepth() const
Definition: TComSlice.h:1006
Void setFieldSeqFlag(Bool i)
Definition: TComSlice.h:638
Void setSliceBits(UInt uiVal)
Definition: TComSlice.h:1495
std::map< Int, MapData< T > > m_paramsetMap
Definition: TComSlice.h:1660
Int m_chromaCbQpOffset
Definition: TComSlice.h:1047
Void setUsedByCurrPicLtSPSFlag(Int i, Bool x)
Definition: TComSlice.h:849
TComVUI m_vuiParameters
Definition: TComSlice.h:802
Void setDuCpbRemovalDelayLengthMinus1(UInt value)
Definition: TComSlice.h:335
Bool m_deltaPocMSBPresentFlag[MAX_NUM_REF_PICS]
Definition: TComSlice.h:83
Void setLog2MaxMvLengthVertical(Int i)
Definition: TComSlice.h:675
Bool isInterB() const
Definition: TComSlice.h:1424
Void setSliceSegmentArgument(UInt uiArgument)
Definition: TComSlice.h:1489
Bool getTilesEnabledFlag() const
Definition: TComSlice.h:1155
Void setLFCrossSliceBoundaryFlag(Bool val)
Definition: TComSlice.h:1532
Bool m_signDataHidingEnabledFlag
Definition: TComSlice.h:1069
Bool m_bPCMFilterDisableFlag
Definition: TComSlice.h:780
Bool m_deblockingFilterDisable
Definition: TComSlice.h:1249
static const Int MAX_VPS_OP_SETS_PLUS1
Definition: CommonDef.h:144
Void setRestrictedRefPicListsFlag(Bool b)
Definition: TComSlice.h:660
Void setInterRPSPrediction(Bool flag)
Definition: TComSlice.h:113
TComRefPicListModification m_RefPicListModification
Definition: TComSlice.h:1240
Int getRefIdc(Int bufferNum) const
get the reference idc value at uiBufferNum
Definition: TComSlice.cpp:1707
Void setAspectRatioIdc(Int i)
Definition: TComSlice.h:590
Void setSignDataHidingEnabledFlag(Bool b)
Definition: TComSlice.h:1167
Bool m_layerIdIncludedFlag[MAX_VPS_OP_SETS_PLUS1][MAX_VPS_NUH_RESERVED_ZERO_LAYER_ID_PLUS1]
Definition: TComSlice.h:453
Void setList1IdxToList0Idx()
Definition: TComSlice.cpp:302
Int m_numExtraSliceHeaderBits
Definition: TComSlice.h:1084
Void setRefPicListModificationFlagL0(Bool flag)
Definition: TComSlice.h:961
Int m_POC[MAX_NUM_REF_PICS]
Definition: TComSlice.h:73
Void setVPSId(Int i)
Definition: TComSlice.h:823
ParameterSetMap< TComVPS > m_vpsMap
Definition: TComSlice.h:1706
std::vector< Int > m_scalingListCoef[SCALING_LIST_SIZE_NUM][SCALING_LIST_NUM]
quantization matrix
Definition: TComSlice.h:182
Void setHandleCraAsBlaFlag(Bool val)
Definition: TComSlice.h:1473
virtual ~TComVPS()
Definition: TComSlice.cpp:1483
Int getDeltaRIdxMinus1() const
Definition: TComSlice.h:116
Bool m_useTransformSkip
Definition: TComSlice.h:1057
WPScalingParam m_weightPredTable[NUM_REF_PIC_LIST_01][MAX_NUM_REF][MAX_NUM_COMPONENT]
Definition: TComSlice.h:1306
UInt getMaxTotalCUDepth() const
Definition: TComSlice.h:861
UInt getLtRefPicPocLsbSps(UInt index) const
Definition: TComSlice.h:845
Bool m_cabacInitFlag
Definition: TComSlice.h:1311
TComHRD m_hrdParameters
Definition: TComSlice.h:548
Double m_lambdas[MAX_NUM_COMPONENT]
Definition: TComSlice.h:1283
Bool getFieldSeqFlag() const
Definition: TComSlice.h:637
Bool getDependentSliceSegmentFlag() const
Definition: TComSlice.h:1357
Void setPOC(Int bufferNum, Int deltaPOC)
Definition: TComSlice.cpp:1685
Void setLog2DiffMaxMinCodingBlockSize(Int val)
Definition: TComSlice.h:854
Int m_pocLSBLT[MAX_NUM_REF_PICS]
Definition: TComSlice.h:81
Void setSliceChromaQpFlag(Bool b)
Definition: TComSlice.h:1104
Void setRefIdc(Int bufferNum, Int refIdc)
set the reference idc value at uiBufferNum entry to the value of iRefIdc
Definition: TComSlice.cpp:1701
Bool getSPSChangedFlag(Int spsId) const
Definition: TComSlice.h:1685
UInt m_uiQuadtreeTULog2MinSize
Definition: TComSlice.h:768
Void setPocProportionalToTimingFlag(Bool x)
Definition: TComSlice.h:416
Int m_deltaPOC[MAX_NUM_REF_PICS]
Definition: TComSlice.h:72
ProfileTierLevel * getGeneralPTL()
Definition: TComSlice.h:265
Bool getListsModificationPresentFlag() const
Definition: TComSlice.h:1186
Bool getLoopFilterAcrossSlicesEnabledFlag() const
Definition: TComSlice.h:1193
Bool testWeightPred() const
Definition: TComSlice.h:1501
Int m_log2MaxTransformSkipBlockSize
Definition: TComSlice.h:976
Void setDeblockingFilterBetaOffsetDiv2(Int val)
set beta offset for deblocking filter
Definition: TComSlice.h:1178
UInt m_duCpbRemovalDelayLengthMinus1
Definition: TComSlice.h:294
Void setNonPackedConstraintFlag(Bool b)
Definition: TComSlice.h:228
Bool m_useDQP
Definition: TComSlice.h:1040
UInt m_log2ParallelMergeLevelMinus2
Definition: TComSlice.h:1083
Void setMaxDecPicBuffering(UInt v, UInt tLayer)
Definition: TComSlice.h:492
TComVPS * getVPS(Int vpsId)
get pointer to existing video parameter set
Definition: TComSlice.h:1676
Int m_iSliceQpBase
Definition: TComSlice.h:1246
Void setSliceType(SliceType e)
Definition: TComSlice.h:1397
Int getSarWidth() const
Definition: TComSlice.h:592
Bool m_vuiParametersPresentFlag
Definition: TComSlice.h:801
std::vector< UChar > * pNaluData
Definition: TComSlice.h:1556
Void setNoRaslOutputFlag(Bool val)
Definition: TComSlice.h:1470
UInt getNumRefIdxL1DefaultActive() const
Definition: TComSlice.h:1132
UInt m_dpbOutputDelayLengthMinus1
Definition: TComSlice.h:302
Bool getTilesFixedStructureFlag() const
Definition: TComSlice.h:653
Void checkLeadingPictureRestrictions(TComList< TComPic * > &rcListPic)
Definition: TComSlice.cpp:829
virtual ~TComRefPicListModification()
Definition: TComSlice.cpp:1779
Bool m_bTemporalIdNestingFlag
Definition: TComSlice.h:791
Void storeVPS(TComVPS *vps, const std::vector< UChar > &naluData)
store sequence parameter set and take ownership of it
Definition: TComSlice.h:1674
Void setTileColumnWidth(const std::vector< Int > &columnWidth)
Definition: TComSlice.h:1160
Void setLevelIdc(Level::Name x)
Definition: TComSlice.h:219
const TComSPS * m_pcSPS
Definition: TComSlice.h:1271
Bool m_useStrongIntraSmoothing
Definition: TComSlice.h:799
Void setLayerIdIncludedFlag(Bool v, UInt opsIdx, UInt id)
Definition: TComSlice.h:507
Void setQuadtreeTULog2MinSize(UInt u)
Definition: TComSlice.h:874
Bool m_pocProportionalToTimingFlag
Definition: TComSlice.h:396
UInt getMaxOpSets() const
Definition: TComSlice.h:504
Void setNumberOfPositivePictures(Int number)
Definition: TComSlice.h:108
Void setTemporalLayerNonReferenceFlag(Bool x)
Definition: TComSlice.h:1531
Bool m_neutralChromaIndicationFlag
Definition: TComSlice.h:534
ChromaFormat getChromaFormatConstraint() const
Definition: TComSlice.h:236
UInt m_numHrdParameters
Definition: TComSlice.h:447
general list class (header)
Int m_PPSId
Definition: TComSlice.h:1037
TComVUI()
Definition: TComSlice.h:552
std::vector< Int > m_tileColumnWidth
Definition: TComSlice.h:1066
Void setVPS(TComVPS *pcVPS)
Definition: TComSlice.h:1326
TComPTL * getPTL()
Definition: TComSlice.h:939
Int offset[2]
Definition: TComSlice.h:431
Void setTilesFixedStructureFlag(Bool i)
Definition: TComSlice.h:654
Int m_VPSId
Definition: TComSlice.h:438
UInt getMaxNumMergeCand() const
Definition: TComSlice.h:1465
Void setDpbOutputDelayDuLengthMinus1(UInt value)
Definition: TComSlice.h:341
Void clearChromaQpOffsetList()
Definition: TComSlice.h:1004
Int m_picInitQPMinus26
Definition: TComSlice.h:1039
Void setDeltaRPS(Int x)
Definition: TComSlice.h:117
Bool m_crossComponentPredictionEnabledFlag
Definition: TComSlice.h:977
Bool m_loopFilterAcrossSlicesEnabledFlag
Definition: TComSlice.h:1074
Bool getTemporalIdNestingFlag() const
Definition: TComSlice.h:913
Void setMaxLatencyIncrease(UInt v, UInt tLayer)
Definition: TComSlice.h:495
UInt ducpbSizeValue[MAX_CPB_CNT][2]
Definition: TComSlice.h:282
Bool getSubLayerLevelPresentFlag(Int i) const
Definition: TComSlice.h:262
Bool m_rdpcmEnabledFlag[NUMBER_OF_RDPCM_SIGNALLING_MODES]
Definition: TComSlice.h:690
Int getMinSpatialSegmentationIdc() const
Definition: TComSlice.h:662
UInt m_maxNumMergeCand
Definition: TComSlice.h:1281
WPACDCParam m_weightACDCParam[MAX_NUM_COMPONENT]
Definition: TComSlice.h:1307
Int getQpBDOffset(ChannelType type) const
Definition: TComSlice.h:904
UInt m_uiMaxDecPicBuffering[MAX_TLAYER]
Definition: TComSlice.h:444
TComScalingList & getScalingList()
Definition: TComSlice.h:1184
Bool getScalingListPredModeFlag(UInt sizeId, UInt listId) const
Definition: TComSlice.h:169
Void setScalingListDC(UInt sizeId, UInt listId, UInt u)
set DC value
Definition: TComSlice.h:165
UInt m_picWidthInLumaSamples
Definition: TComSlice.h:750
Void setOverscanInfoPresentFlag(Bool i)
Definition: TComSlice.h:599
UInt m_uiMaxCUHeight
Definition: TComSlice.h:756
UInt getLog2SaoOffsetScale(ChannelType type) const
Definition: TComSlice.h:1027
bool Bool
Definition: TypeDef.h:204
Bool getUseTransformSkip() const
Definition: TComSlice.h:1144
Void setSliceSegmentBits(UInt uiVal)
Definition: TComSlice.h:1497
const TComReferencePictureSet * getRPS()
Definition: TComSlice.h:1341
Int m_deblockingFilterBetaOffsetDiv2
Definition: TComSlice.h:1251
Bool m_scalingListPredModeFlagIsDPCM[SCALING_LIST_SIZE_NUM][SCALING_LIST_NUM]
reference list index
Definition: TComSlice.h:179
Bool m_cabacBypassAlignmentEnabledFlag
Definition: TComSlice.h:695
Void setLog2ParallelMergeLevelMinus2(UInt mrgLevel)
Definition: TComSlice.h:1189
std::vector< TComHRD > m_hrdParameters
Definition: TComSlice.h:449
UInt m_sliceSegmentCurStartCtuTsAddr
Definition: TComSlice.h:1296
ProfileTierLevel m_generalPTL
Definition: TComSlice.h:252
long long Int64
Definition: TypeDef.h:232
Bool getLowerBitRateConstraintFlag() const
Definition: TComSlice.h:245
Bool m_nextSliceSegment
Definition: TComSlice.h:1299
Bool getSubPicCpbParamsPresentFlag() const
Definition: TComSlice.h:330
Void setBitRateValueMinus1(Int layer, Int cpbcnt, Int nalOrVcl, UInt value)
Definition: TComSlice.h:376
TComReferencePictureSet * getReferencePictureSet(Int referencePictureSetNum)
Definition: TComSlice.h:143
Void setVclHrdParametersPresentFlag(Bool flag)
Definition: TComSlice.h:326
Bool m_tilesEnabledFlag
Indicates the presence of tiles.
Definition: TComSlice.h:1059
Bool m_overscanInfoPresentFlag
Definition: TComSlice.h:522
Int getAssociatedIRAPPOC() const
Definition: TComSlice.h:1350
Void setSliceQpDelta(Int i)
Definition: TComSlice.h:1402
Bool m_interlacedSourceFlag
Definition: TComSlice.h:194
Void setPicDurationInTcMinus1(Int layer, UInt value)
Definition: TComSlice.h:367
Void setCbrFlag(Int layer, Int cpbcnt, Int nalOrVcl, Bool value)
Definition: TComSlice.h:385
Bool getRefPicListModificationFlagL0() const
Definition: TComSlice.h:960
Bool getProgressiveSourceFlag() const
Definition: TComSlice.h:221
Bool m_tilesFixedStructureFlag
Definition: TComSlice.h:540
Int CrOffset
Definition: TComSlice.h:429
Void setProfileSpace(Int x)
Definition: TComSlice.h:207
Bool getColourDescriptionPresentFlag() const
Definition: TComSlice.h:613
UInt getQuadtreeTUMaxDepthIntra() const
Definition: TComSlice.h:879
PPS class.
Definition: TComSlice.h:1034
Void setLog2MaxTransformSkipBlockSize(UInt u)
Definition: TComSlice.h:999
Void decodingRefreshMarking(Int &pocCRA, Bool &bRefreshPending, TComList< TComPic * > &rcListPic, const bool bEfficientFieldIRAPEnabled)
Definition: TComSlice.cpp:587
Bool m_bitstreamRestrictionFlag
Definition: TComSlice.h:539
UInt m_uiMaxDecPicBuffering[MAX_TLAYER]
Definition: TComSlice.h:796
Bool getVPSChangedFlag(Int vpsId) const
Definition: TComSlice.h:1677
Bool getSubPicCpbParamsInPicTimingSEIFlag() const
Definition: TComSlice.h:339
Void setVPSId(Int i)
Definition: TComSlice.h:478
Void setRefPic(TComPic *p, RefPicList e, Int iRefIdx)
Definition: TComSlice.h:1410
Void setDeltaPocMSBCycleLT(Int i, Int x)
Definition: TComSlice.h:91
Bool getOverscanInfoPresentFlag() const
Definition: TComSlice.h:598
Void setColourPrimaries(Int i)
Definition: TComSlice.h:617
Bool m_bTLayerSwitchingFlag
Definition: TComSlice.h:1287
UInt m_uiTLayer
Definition: TComSlice.h:1286
UInt getCpbSizeScale() const
Definition: TComSlice.h:348
UInt getPicHeightInLumaSamples() const
Definition: TComSlice.h:836
Void setMaxTLayers(UInt uiMaxTLayers)
Definition: TComSlice.h:911
Bool getCbrFlag(Int layer, Int cpbcnt, Int nalOrVcl) const
Definition: TComSlice.h:386
Void setUseSAO(Bool bVal)
Definition: TComSlice.h:907
UInt uiLog2WeightDenom
Definition: TComSlice.h:1206
const Int * getScalingListAddress(UInt sizeId, UInt listId) const
get matrix coefficient
Definition: TComSlice.h:156
virtual ~TComRPSList()
Definition: TComSlice.h:137
TimingInfo * getTimingInfo()
Definition: TComSlice.h:511
Void setAssociatedIRAPType(NalUnitType associatedIRAPType)
Definition: TComSlice.h:1351
UInt getSliceBits() const
Definition: TComSlice.h:1496
Void setDeltaPocMSBPresentFlag(Int i, Bool x)
Definition: TComSlice.h:93
static const UInt REF_PIC_LIST_NUM_IDX
Definition: TComSlice.h:58
Void storeSPS(TComSPS *sps, const std::vector< UChar > &naluData)
store sequence parameter set and take ownership of it
Definition: TComSlice.h:1682
TComRPSList m_RPSList
Definition: TComSlice.h:761
UInt getNumberOfSubstreamSizes()
Definition: TComSlice.h:1524
Void setProfileCompatibilityFlag(Int i, Bool x)
Definition: TComSlice.h:216
Int getDeltaPOC(Int bufferNum) const
Definition: TComSlice.cpp:1670
UInt getPCMLog2MinSize() const
Definition: TComSlice.h:867
Int m_transferCharacteristics
Definition: TComSlice.h:529
Void setMaxTLayers(UInt t)
Definition: TComSlice.h:481
Void setScalingListPresentFlag(Bool b)
Definition: TComSlice.h:923
Int getMatrixCoefficients() const
Definition: TComSlice.h:622
Void setRefPicList(TComList< TComPic * > &rcListPic, Bool checkNumPocTotalCurr=false)
Definition: TComSlice.cpp:319
Bool m_restrictedRefPicListsFlag
Definition: TComSlice.h:542
Int getAspectRatioIdc() const
Definition: TComSlice.h:589
Int getDeltaRPS() const
Definition: TComSlice.h:118
Void setLog2MaxMvLengthHorizontal(Int i)
Definition: TComSlice.h:672
Bool getPocProportionalToTimingFlag() const
Definition: TComSlice.h:417
Void setDefaultDisplayWindow(Window &defaultDisplayWindow)
Definition: TComSlice.h:645
Bool getTransformSkipRotationEnabledFlag() const
Definition: TComSlice.h:714
Bool m_used[MAX_NUM_REF_PICS]
Definition: TComSlice.h:74
UInt getSliceSegmentBits() const
Definition: TComSlice.h:1498
UInt getMaxLatencyIncreasePlus1(UInt tlayer) const
Definition: TComSlice.h:928
ChromaQpAdj m_ChromaQpAdjTableIncludingNullEntry[1+MAX_QP_OFFSET_LIST_SIZE]
Array includes entry [0] for the null offset used when cu_chroma_qp_offset_flag=0, and entries [cu_chroma_qp_offset_idx+1...] otherwise.
Definition: TComSlice.h:982
Reference Picture Set set class.
Definition: TComSlice.h:130
Int m_qpBDOffset[MAX_NUM_CHANNEL_TYPE]
Definition: TComSlice.h:778
Int getRefPOC(RefPicList e, Int iRefIdx) const
Definition: TComSlice.h:1375
Void setTileRowHeight(const std::vector< Int > &rowHeight)
Definition: TComSlice.h:1164
Void processDefaultMatrix(UInt sizeId, UInt listId)
Definition: TComSlice.cpp:2069
Void setDepth(Int iDepth)
Definition: TComSlice.h:1414
Bool getFrameFieldInfoPresentFlag() const
Definition: TComSlice.h:640
Void setHrdParametersPresentFlag(Bool i)
Definition: TComSlice.h:648
UInt duBitRateValue[MAX_CPB_CNT][2]
Definition: TComSlice.h:284
Int getBitDepth(ChannelType type) const
Definition: TComSlice.h:894
Bool m_timingInfoPresentFlag
Definition: TComSlice.h:393
Void setDeblockingFilterOverrideFlag(Bool b)
Definition: TComSlice.h:1406
Void setNumTicksPocDiffOneMinus1(Int x)
Definition: TComSlice.h:419
Bool getTemporalNestingFlag() const
Definition: TComSlice.h:486
Bool m_ppsDeblockingFilterDisabledFlag
Definition: TComSlice.h:1077
const T * getPS(Int psId) const
Definition: TComSlice.h:1648
UInt m_uiMaxCUWidth
Definition: TComSlice.h:755
Int m_log2MinCodingBlockSize
Definition: TComSlice.h:753
Int m_log2DiffMaxMinCodingBlockSize
Definition: TComSlice.h:754
Bool getLFCrossSliceBoundaryFlag()
Definition: TComSlice.h:1533
Bool getUseDQP() const
Definition: TComSlice.h:1099
Void setTilesEnabledFlag(Bool val)
Definition: TComSlice.h:1154
Int getDifferentialLumaChromaBitDepth() const
Definition: TComSlice.h:903
Int m_iSliceChromaQpDelta[MAX_NUM_COMPONENT]
Definition: TComSlice.h:1260
SliceConstraint
Definition: TypeDef.h:514
UInt getNumLongTermRefPicSPS() const
Definition: TComSlice.h:842
RefPicList
reference list index
Definition: TypeDef.h:370
Bool m_temporalLayerNonReferenceFlag
Definition: TComSlice.h:1314
UInt m_ducpbSizeScale
Definition: TComSlice.h:299
Bool getColFromL0Flag() const
Definition: TComSlice.h:1377
Void setSliceCurEndCtuTsAddr(UInt ctuTsAddr)
Definition: TComSlice.h:1482
Void setUseStrongIntraSmoothing(Bool bVal)
Definition: TComSlice.h:931
Bool getEnableTMVPFlag() const
Definition: TComSlice.h:1536
static Void sortPicList(TComList< TComPic * > &rcListPic)
Definition: TComSlice.cpp:190
Bool getCabacBypassAlignmentEnabledFlag() const
Definition: TComSlice.h:735
Int getProfileSpace() const
Definition: TComSlice.h:206
Void setWpAcDcParam(WPACDCParam wp[MAX_NUM_COMPONENT])
Definition: TComSlice.h:1515
Int getSliceQpBase() const
Definition: TComSlice.h:1360
const TComPTL * getPTL() const
Definition: TComSlice.h:938
Void setSliceQpBase(Int i)
Definition: TComSlice.h:1400
Bool m_colourDescriptionPresentFlag
Definition: TComSlice.h:527
UInt getMaxCuDQPDepth() const
Definition: TComSlice.h:1107
Void getWpScaling(RefPicList e, Int iRefIdx, WPScalingParam *&wp)
get tables for weighted prediction
Definition: TComSlice.cpp:1405
ChromaFormat
chroma formats (according to semantics of chroma_format_idc)
Definition: TypeDef.h:292
Void setCheckLTMSBPresent(Int bufferNum, Bool b)
Definition: TComSlice.cpp:1695
Void setScalingListFlag(Bool b)
Definition: TComSlice.h:921
UInt getInitialCpbRemovalDelayLengthMinus1() const
Definition: TComSlice.h:353
Bool getTimingInfoPresentFlag() const
Definition: TComSlice.h:408
Int m_maxBytesPerPicDenom
Definition: TComSlice.h:544
UInt getQuadtreeTULog2MinSize() const
Definition: TComSlice.h:875
const BitDepths & getBitDepths() const
Definition: TComSlice.h:900
const TComPPS * m_pcPPS
Definition: TComSlice.h:1272
UInt getDpbOutputDelayLengthMinus1() const
Definition: TComSlice.h:359
UInt m_sliceIdx
Definition: TComSlice.h:1293
RDPCMSignallingMode
Definition: TypeDef.h:275
Bool getCheckLTMSBPresent(Int bufferNum) const
Definition: TComSlice.cpp:1690
UInt getSliceSegmentCurStartCtuTsAddr() const
Definition: TComSlice.h:1492
Int m_chromaCrQpOffset
Definition: TComSlice.h:1048
const TComVPS * getActiveVPS() const
Definition: TComSlice.h:1705
Int getMaxLog2TrDynamicRange(ChannelType channelType) const
Definition: TComSlice.h:901
UInt m_uiMaxTLayers
Definition: TComSlice.h:747
Int m_numTileRowsMinus1
Definition: TComSlice.h:1065
Void setTestWeightBiPred(Bool bValue)
Definition: TComSlice.h:1504
Window m_defaultDisplayWindow
Definition: TComSlice.h:536
const TComHRD * getHrdParameters(UInt i) const
Definition: TComSlice.h:471
T * allocatePS(const Int psId)
Definition: TComSlice.h:1573
Void setPCMBitDepth(ChannelType type, UInt u)
Definition: TComSlice.h:916
Bool m_transformSkipContextEnabledFlag
Definition: TComSlice.h:689
Bool getNoOutputPriorPicsFlag() const
Definition: TComSlice.h:1468
Void setTestWeightPred(Bool bValue)
Definition: TComSlice.h:1502
UInt m_numReorderPics[MAX_TLAYER]
Definition: TComSlice.h:443
Bool getAspectRatioInfoPresentFlag() const
Definition: TComSlice.h:586
Void setNumberOfPictures(Int numberOfPictures)
Definition: TComSlice.cpp:1660
Void setMaxNuhReservedZeroLayerId(UInt v)
Definition: TComSlice.h:502
UInt getNumRefIdxL0DefaultActive() const
Definition: TComSlice.h:1130
Bool getIsUsedAsLongTerm(Int i, Int j) const
Definition: TComSlice.h:1380
const TComPPS * getPPS() const
Definition: TComSlice.h:1332
Int getDeblockingFilterBetaOffsetDiv2() const
get beta offset for deblocking filter
Definition: TComSlice.h:1179
UInt getPicWidthInLumaSamples() const
Definition: TComSlice.h:834
Void setQpBDOffset(ChannelType type, Int i)
Definition: TComSlice.h:905
TComHRD()
Definition: TComSlice.h:306
Void setMaxTrSize(UInt u)
Definition: TComSlice.h:890
Bool m_scalingListEnabledFlag
Definition: TComSlice.h:793
Int getPPSId() const
Definition: TComSlice.h:1335
Void setSliceChromaQpDelta(ComponentID compID, Int i)
Definition: TComSlice.h:1403
Void setMaxNumMergeCand(UInt val)
Definition: TComSlice.h:1464
Bool getIdrPicFlag() const
Definition: TComSlice.h:1393
Void setExtendedPrecisionProcessingFlag(Bool value)
Definition: TComSlice.h:724
Void setCpbCntMinus1(Int layer, UInt value)
Definition: TComSlice.h:373
Bool m_persistentRiceAdaptationEnabledFlag
Definition: TComSlice.h:694
Int getLog2MaxMvLengthHorizontal() const
Definition: TComSlice.h:671
UInt getTileColumnWidth(UInt columnIdx) const
Definition: TComSlice.h:1161
Profile::Name getProfileIdc() const
Definition: TComSlice.h:212
Int getSliceQpDelta() const
Definition: TComSlice.h:1362
Bool getUseWeightedPrediction() const
Definition: TComSlice.h:1356
Bool m_nalHrdParametersPresentFlag
Definition: TComSlice.h:290
Bool m_deblockingFilterOverrideFlag
Definition: TComSlice.h:1250
Level::Name getLevelIdc() const
Definition: TComSlice.h:218
UInt getSliceArgument() const
Definition: TComSlice.h:1479
Bool m_uniformSpacingFlag
Definition: TComSlice.h:1063
Int getDepth() const
Definition: TComSlice.h:1376
UInt m_bitDepthConstraintValue
Definition: TComSlice.h:197
UInt getSliceSegmentArgument() const
Definition: TComSlice.h:1490
Bool getUseWP() const
Definition: TComSlice.h:1134
Bool getProfileCompatibilityFlag(Int i) const
Definition: TComSlice.h:215
Void setRPSidx(Int rpsIdx)
Definition: TComSlice.h:1344
Bool getIntraSmoothingDisabledFlag() const
Definition: TComSlice.h:726
Bool isIntra() const
Definition: TComSlice.h:1423
Bool getScalingListPresentFlag() const
Definition: TComSlice.h:1182
Bool m_bLongTermRefsPresent
Definition: TComSlice.h:762
Void setProfileIdc(Profile::Name x)
Definition: TComSlice.h:213
Name
Definition: TypeDef.h:599
Void initWpScaling(const TComSPS *sps)
init WP table
Definition: TComSlice.cpp:1432
TComSPS * getFirstSPS()
Definition: TComSlice.h:1687
Void setConformanceWindow(Window &conformanceWindow)
Definition: TComSlice.h:840
Void setHighPrecisionOffsetsEnabledFlag(Bool value)
Definition: TComSlice.h:730
Void checkCRA(const TComReferencePictureSet *pReferencePictureSet, Int &pocCRA, NalUnitType &associatedIRAPType, TComList< TComPic * > &rcListPic)
Definition: TComSlice.cpp:527
Int getPPSId() const
Definition: TComSlice.h:1092
Void setFrameFieldInfoPresentFlag(Bool i)
Definition: TComSlice.h:641
const Window & getDefaultDisplayWindow() const
Definition: TComSlice.h:644
Void initWpAcDcParam()
init AC and DC values for weighted pred
Definition: TComSlice.cpp:1395
Void setPCMLog2MinSize(UInt u)
Definition: TComSlice.h:866
UInt m_sliceBits
Definition: TComSlice.h:1300
UInt m_uiPCMLog2MinSize
Definition: TComSlice.h:773
UInt getMaxLayers() const
Definition: TComSlice.h:483
Bool m_cabacInitPresentFlag
Definition: TComSlice.h:1071
Profile::Name m_profileIdc
Definition: TComSlice.h:189
Int getPOC() const
Definition: TComSlice.h:1354
Bool getDeblockingFilterControlPresentFlag() const
Definition: TComSlice.h:1173
Void setAspectRatioInfoPresentFlag(Bool i)
Definition: TComSlice.h:587
Bool getEntropyCodingSyncEnabledFlag() const
Definition: TComSlice.h:1151
Int m_numTileColumnsMinus1
Definition: TComSlice.h:1064
Void setSPSTemporalMVPEnabledFlag(Bool b)
Definition: TComSlice.h:888
virtual ~TComSlice()
Definition: TComSlice.cpp:147
TimingInfo * getTimingInfo()
Definition: TComSlice.h:680
TComPTL * getPTL()
Definition: TComSlice.h:509
Void setListsModificationPresentFlag(Bool b)
Definition: TComSlice.h:1187
Void setHrdOpSetIdx(UInt val, UInt i)
Definition: TComSlice.h:473
Bool isInterP() const
Definition: TComSlice.h:1425
Int getLog2DiffMaxMinCodingBlockSize() const
Definition: TComSlice.h:853
Int m_deltaPOCMSBCycleLT[MAX_NUM_REF_PICS]
Definition: TComSlice.h:82
static const Int MAX_TLAYER
Explicit temporal layer QP offset - max number of temporal layer.
Definition: CommonDef.h:134
Void setEqualRef(RefPicList e, Int iRefIdx1, Int iRefIdx2, Bool b)
Definition: TComSlice.h:1444
UInt getSliceCurStartCtuTsAddr() const
Definition: TComSlice.h:1481
const TComVPS * getVPS() const
Definition: TComSlice.h:1327
Void setMaxDecPicBuffering(UInt ui, UInt tlayer)
Definition: TComSlice.h:927
virtual ~TComScalingList()
Definition: TComSlice.h:154
Bool getVideoSignalTypePresentFlag() const
Definition: TComSlice.h:604
UInt getSliceIdx() const
Definition: TComSlice.h:1485
Void setProgressiveSourceFlag(Bool b)
Definition: TComSlice.h:222
UInt getCpbRemovalDelayLengthMinus1() const
Definition: TComSlice.h:356
Bool m_useAMP
Definition: TComSlice.h:774
Int m_list1IdxToList0Idx[MAX_NUM_REF]
Definition: TComSlice.h:1253
SliceType m_eSliceType
Definition: TComSlice.h:1242
Bool getUsePCM() const
Definition: TComSlice.h:863
Bool m_deblockingFilterOverrideEnabledFlag
Definition: TComSlice.h:1076
UInt bitRateValueMinus1[MAX_CPB_CNT][2]
Definition: TComSlice.h:280
const TComPTL * getPTL() const
Definition: TComSlice.h:510
Bool m_deblockingFilterControlPresentFlag
Definition: TComSlice.h:1075
Bool getScalingListFlag() const
Definition: TComSlice.h:920
Void setUsePCM(Bool b)
Definition: TComSlice.h:862
const TComSPS * getActiveSPS() const
Definition: TComSlice.h:1706
ParameterSetMap< TComSPS > m_spsMap
Definition: TComSlice.h:1710
Void setLongTermRefsPresent(Bool b)
Definition: TComSlice.h:886
Void setOnePictureOnlyConstraintFlag(Bool b)
Definition: TComSlice.h:243
Bool getFinalized() const
Definition: TComSlice.h:1500
ParameterSetMap< TComPPS > m_ppsMap
Definition: TComSlice.h:1711
Void setWPBiPred(Bool b)
Definition: TComSlice.h:1137
Void setDpbOutputDelayLengthMinus1(UInt value)
Definition: TComSlice.h:358
Void setPocLSBLT(Int i, Int x)
Definition: TComSlice.h:89
Void setPOC(Int i)
Definition: TComSlice.h:1389
Void setCabacInitFlag(Bool val)
set CABAC initial flag
Definition: TComSlice.h:1528
UInt m_uiMaxLatencyIncrease[MAX_TLAYER]
Definition: TComSlice.h:445
UInt m_uiMaxTrSize
Definition: TComSlice.h:787
TComPic * getPic()
Definition: TComSlice.h:1371
Int m_sarWidth
Definition: TComSlice.h:520
Int m_videoFormat
Definition: TComSlice.h:525
Int getVideoFormat() const
Definition: TComSlice.h:607
Void initSlice()
Definition: TComSlice.cpp:152
Void setNumTileRowsMinus1(Int i)
Definition: TComSlice.h:1162
Int getNumberOfReferencePictureSets() const
Definition: TComSlice.h:146
Bool m_vclHrdParametersPresentFlag
Definition: TComSlice.h:291
Void setInterlacedSourceFlag(Bool b)
Definition: TComSlice.h:225
Void setNumRefIdxL1DefaultActive(UInt ui)
Definition: TComSlice.h:1131
UInt getDpbOutputDelayDuLengthMinus1() const
Definition: TComSlice.h:342
Void setSubPicCpbParamsInPicTimingSEIFlag(Bool flag)
Definition: TComSlice.h:338
Void setNumUnitsInTick(UInt value)
Definition: TComSlice.h:410
std::vector< UInt > m_substreamSizes
Definition: TComSlice.h:1309
Bool m_abEqualRef[NUM_REF_PIC_LIST_01][MAX_NUM_REF][MAX_NUM_REF]
Definition: TComSlice.h:1285
const ProfileTierLevel * getGeneralPTL() const
Definition: TComSlice.h:266
Void setQuadtreeTUMaxDepthIntra(UInt u)
Definition: TComSlice.h:877
Bool m_SPSTemporalMVPEnabledFlag
Definition: TComSlice.h:763
Int getColourPrimaries() const
Definition: TComSlice.h:616
UInt m_picHeightInLumaSamples
Definition: TComSlice.h:751
Bool getFixedPicRateWithinCvsFlag(Int layer) const
Definition: TComSlice.h:365
Void setBitstreamRestrictionFlag(Bool i)
Definition: TComSlice.h:651
Int getList1IdxToList0Idx(Int list1Idx) const
Definition: TComSlice.h:1385
Int m_iSliceQpDelta
Definition: TComSlice.h:1259
TComPPS * getPPS(Int ppsId)
get pointer to existing picture parameter set
Definition: TComSlice.h:1692
Void createHrdParamBuffer()
Definition: TComSlice.h:463
Void setSliceMode(SliceConstraint mode)
Definition: TComSlice.h:1476
Int m_diffCuChromaQpOffsetDepth
Definition: TComSlice.h:980
Void setChromaLocInfoPresentFlag(Bool i)
Definition: TComSlice.h:626
Void setMotionVectorsOverPicBoundariesFlag(Bool i)
Definition: TComSlice.h:657
Void setCpbSizeValueMinus1(Int layer, Int cpbcnt, Int nalOrVcl, UInt value)
Definition: TComSlice.h:379
Void setTransferCharacteristics(Int i)
Definition: TComSlice.h:620
UInt m_uiQuadtreeTUMaxDepthInter
Definition: TComSlice.h:769
Bool getCpbDpbDelaysPresentFlag() const
Definition: TComSlice.h:388
Bool fixedPicRateFlag
Definition: TComSlice.h:275
Bool isReferenceNalu() const
Definition: TComSlice.h:1388
Int getNumberOfNegativePictures() const
Definition: TComSlice.h:107
Bool m_aspectRatioInfoPresentFlag
Definition: TComSlice.h:518
Bool m_scalingListPresentFlag
Definition: TComSlice.h:794
Bool m_transformSkipRotationEnabledFlag
Definition: TComSlice.h:688
SliceType getEncCABACTableIdx() const
Definition: TComSlice.h:1539
const TComVUI * getVuiParameters() const
Definition: TComSlice.h:937
Bool getRdpcmEnabledFlag(const RDPCMSignallingMode signallingMode) const
Definition: TComSlice.h:720
Void setLoopFilterAcrossSlicesEnabledFlag(Bool bValue)
Definition: TComSlice.h:1192
Int m_refIdc[MAX_NUM_REF_PICS+1]
Definition: TComSlice.h:79
static const Int m_winUnitX[NUM_CHROMA_FORMAT]
Definition: TComSlice.h:806
Bool getUseAMP() const
Definition: TComSlice.h:870
Void setBitRateScale(UInt value)
Definition: TComSlice.h:344
Bool getDependentSliceSegmentsEnabledFlag() const
Definition: TComSlice.h:1149
Int getQpOffset(ComponentID compID) const
Definition: TComSlice.h:1124
Tier
Definition: TypeDef.h:592
const TComScalingList & getScalingList() const
Definition: TComSlice.h:1185
TComPic * m_pcPic
Definition: TComSlice.h:1273
Bool m_intraSmoothingDisabledFlag
Definition: TComSlice.h:692
transform and quantization class
Definition: TComTrQuant.h:98
static Int getWinUnitX(Int chromaFormatIdc)
Definition: TComSlice.h:829
Void setRefMatrixId(UInt sizeId, UInt listId, UInt u)
set reference matrix ID
Definition: TComSlice.h:159
Void setCabacBypassAlignmentEnabledFlag(const Bool value)
Definition: TComSlice.h:736
Bool m_videoSignalTypePresentFlag
Definition: TComSlice.h:524
Int getNumRefIdc() const
Definition: TComSlice.h:120
UInt m_numUnitsInTick
Definition: TComSlice.h:394
Void setNumRefIdxL0DefaultActive(UInt ui)
Definition: TComSlice.h:1129
UInt getDuBitRateValueMinus1(Int layer, Int cpbcnt, Int nalOrVcl) const
Definition: TComSlice.h:384
UInt m_tickDivisorMinus2
Definition: TComSlice.h:293
Void checkColRefIdx(UInt curSliceIdx, TComPic *pic)
Definition: TComSlice.cpp:501
Void createRPSList(Int numRPS)
Definition: TComSlice.cpp:1566
Void setDeblockingFilterControlPresentFlag(Bool val)
Definition: TComSlice.h:1172
Void setFixedPicRateWithinCvsFlag(Int layer, Bool flag)
Definition: TComSlice.h:364
Void setDuBitRateValueMinus1(Int layer, Int cpbcnt, Int nalOrVcl, UInt value)
Definition: TComSlice.h:383
Int m_SPSId
Definition: TComSlice.h:743
Bool m_extendedPrecisionProcessingFlag
Definition: TComSlice.h:691
Void setTimingInfoPresentFlag(Bool flag)
Definition: TComSlice.h:407
Bool m_nonPackedConstraintFlag
Definition: TComSlice.h:195
Void setSliceArgument(UInt uiArgument)
Definition: TComSlice.h:1478
Int m_deblockingFilterBetaOffsetDiv2
Definition: TComSlice.h:1078
UInt cpbSizeValue[MAX_CPB_CNT][2]
Definition: TComSlice.h:281
UInt getSliceSegmentCurEndCtuTsAddr() const
Definition: TComSlice.h:1494
Int getPOC(Int bufferNum) const
Definition: TComSlice.cpp:1680
Void setLowDelayHrdFlag(Int layer, Bool flag)
Definition: TComSlice.h:370
Void setVideoFormat(Int i)
Definition: TComSlice.h:608
TComPPS * getFirstPPS()
Definition: TComSlice.h:1695
UInt m_pcmLog2MaxSize
Definition: TComSlice.h:772
UInt getBitRateValueMinus1(Int layer, Int cpbcnt, Int nalOrVcl) const
Definition: TComSlice.h:377
UInt getMaxDecPicBuffering(UInt tLayer) const
Definition: TComSlice.h:493
Bool getSliceHeaderExtensionPresentFlag() const
Definition: TComSlice.h:1194
UInt getRefPicSetIdxL1(UInt idx) const
Definition: TComSlice.h:966
UInt getLog2ParallelMergeLevelMinus2() const
Definition: TComSlice.h:1188
Void setTLayer(UInt uiTLayer)
Definition: TComSlice.h:1454
Bool m_overscanAppropriateFlag
Definition: TComSlice.h:523
static const Int MAX_NUM_LONG_TERM_REF_PICS
Definition: CommonDef.h:203
Bool m_onePictureOnlyConstraintFlag
Definition: TComSlice.h:200
Bool getChromaLocInfoPresentFlag() const
Definition: TComSlice.h:625
Void setLog2MinCodingBlockSize(Int val)
Definition: TComSlice.h:852
Void setOutputFlagPresentFlag(Bool b)
Definition: TComSlice.h:1139
Bool getCabacInitFlag()
get CABAC initial flag
Definition: TComSlice.h:1529
TComScalingList & getScalingList()
Definition: TComSlice.h:924
Int getNumberOfPictures() const
Definition: TComSlice.cpp:1675
Void setNumExtraSliceHeaderBits(Int i)
Definition: TComSlice.h:1191
Bool m_noOutputPriorPicsFlag
Definition: TComSlice.h:1276
Void setLoopFilterAcrossTilesEnabledFlag(Bool b)
Definition: TComSlice.h:1147
int Int
Definition: TypeDef.h:211
Bool m_TransquantBypassEnabledFlag
Indicates presence of cu_transquant_bypass_flag in CUs.
Definition: TComSlice.h:1056
Bool m_bTestWeightBiPred
Definition: TComSlice.h:1305
Window & getConformanceWindow()
Definition: TComSlice.h:838
Void setVuiParametersPresentFlag(Bool b)
Definition: TComSlice.h:935
Bool getBitstreamRestrictionFlag() const
Definition: TComSlice.h:650
Void setSliceSegmentCurStartCtuTsAddr(UInt ctuTsAddr)
Definition: TComSlice.h:1491
UInt m_uiQuadtreeTUMaxDepthIntra
Definition: TComSlice.h:770
NalUnitType m_iAssociatedIRAPType
Definition: TComSlice.h:1236
UInt getPCMBitDepth(ChannelType type) const
Definition: TComSlice.h:915
SliceType m_encCABACTableIdx
Definition: TComSlice.h:1319
Bool m_bFinalized
Definition: TComSlice.h:1302
UInt getQuadtreeTULog2MaxSize() const
Definition: TComSlice.h:873
Void applyReferencePictureSet(TComList< TComPic * > &rcListPic, const TComReferencePictureSet *RPSList)
Definition: TComSlice.cpp:996
Void setPicWidthInLumaSamples(UInt u)
Definition: TComSlice.h:833
Bool m_loopFilterAcrossTilesEnabledFlag
Definition: TComSlice.h:1062
UInt getMaxTLayers() const
Definition: TComSlice.h:910
Bool settingsDifferFromDefaults(const bool bTransformSkipEnabledFlag) const
Definition: TComSlice.h:989
TComSPS * getSPS(Int spsId)
get pointer to existing sequence parameter set
Definition: TComSlice.h:1684
ComponentID
Definition: TypeDef.h:308
Void setPPSDeblockingFilterDisabledFlag(Bool val)
set offset for deblocking filter disabled
Definition: TComSlice.h:1176
Int getNumRpsCurrTempList() const
Definition: TComSlice.cpp:469
const Double * getLambdas() const
Definition: TComSlice.h:1428
Bool getRapPicFlag() const
Definition: TComSlice.cpp:179
Int getSliceChromaQpDelta(ComponentID compID) const
Definition: TComSlice.h:1363
Int getSliceQp() const
Definition: TComSlice.h:1355
Bool m_noRaslOutputFlag
Definition: TComSlice.h:1277
UInt m_uiMaxTLayers
Definition: TComSlice.h:439
Void setSubPicCpbParamsPresentFlag(Bool flag)
Definition: TComSlice.h:329
Bool getTileUniformSpacingFlag() const
Definition: TComSlice.h:1157
Void setNumLongTermRefPicSPS(UInt val)
Definition: TComSlice.h:843
TComPTL m_pcPTL
Definition: TComSlice.h:455
Void setTickDivisorMinus2(UInt value)
Definition: TComSlice.h:332
Void setDeltaRIdxMinus1(Int x)
Definition: TComSlice.h:115
NalUnitType
Definition: TypeDef.h:664
Int checkThatAllRefPicsAreAvailable(TComList< TComPic * > &rcListPic, const TComReferencePictureSet *pReferencePictureSet, Bool printErrors, Int pocRandomAccess=0, Bool bUseRecoveryPoint=false)
Definition: TComSlice.cpp:1074
Void setRdpcmEnabledFlag(const RDPCMSignallingMode signallingMode, const Bool value)
Definition: TComSlice.h:721
virtual ~TComVUI()
Definition: TComSlice.h:584
Void setLambdas(const Double lambdas[MAX_NUM_COMPONENT])
Definition: TComSlice.h:1427
UInt getCpbCntMinus1(Int layer) const
Definition: TComSlice.h:374
Bool getLoopFilterAcrossTilesEnabledFlag() const
Definition: TComSlice.h:1148
Void setPCMLog2MaxSize(UInt u)
Definition: TComSlice.h:864
Bool m_nextSlice
Definition: TComSlice.h:1298
Int getNumberOfLongtermPictures() const
Definition: TComSlice.h:111
Bool m_saoEnabledFlag[MAX_NUM_CHANNEL_TYPE]
Definition: TComSlice.h:1230
Void setLog2SaoOffsetScale(ChannelType type, UInt uiBitShift)
Definition: TComSlice.h:1028
Bool fixedPicRateWithinCvsFlag
Definition: TComSlice.h:276
UInt getNumReorderPics(UInt tLayer) const
Definition: TComSlice.h:490
UInt getPicDurationInTcMinus1(Int layer) const
Definition: TComSlice.h:368
Bool activatePPS(Int ppsId, Bool isIRAP)
Definition: TComSlice.cpp:2135
Bool m_bSliceChromaQpFlag
Definition: TComSlice.h:1042
UInt m_RefPicSetIdxL0[REF_PIC_LIST_NUM_IDX]
Definition: TComSlice.h:953
Bool getDeblockingFilterOverrideFlag() const
Definition: TComSlice.h:1366
Void setTLayerInfo(UInt uiTLayer)
Definition: TComSlice.cpp:781
Bool getConstrainedIntraPred() const
Definition: TComSlice.h:1101
Void create(Int numberOfEntries)
Definition: TComSlice.h:139
TComSPSRExt m_spsRangeExtension
Definition: TComSlice.h:804
UInt m_dpbOutputDelayDuLengthMinus1
Definition: TComSlice.h:296
UInt m_numOpSets
Definition: TComSlice.h:452
Int m_numReorderPics[MAX_TLAYER]
Definition: TComSlice.h:764
Void setUseChromaQpAdj(Bool b)
Definition: TComSlice.h:1404
Void setBitDepthConstraint(UInt bitDepth)
Definition: TComSlice.h:234
Void setOverscanAppropriateFlag(Bool i)
Definition: TComSlice.h:602
static const Int m_winUnitY[NUM_CHROMA_FORMAT]
Definition: TComSlice.h:807
Bool getChromaQpOffsetListEnabledFlag() const
Definition: TComSlice.h:1009
Void setChromaQpOffsetListEntry(Int cuChromaQpOffsetIdxPlus1, Int cbOffset, Int crOffset)
Definition: TComSlice.h:1018
Void setDeblockingFilterDisable(Bool b)
Definition: TComSlice.h:1405
Int m_aiNumRefIdx[NUM_REF_PIC_LIST_01]
Definition: TComSlice.h:1254
VPS class.
Definition: TComSlice.h:273
TComReferencePictureSet m_localRPS
Definition: TComSlice.h:1238
double Double
Definition: TypeDef.h:213
UInt getColRefIdx() const
Definition: TComSlice.h:1378
Bool getInterRPSPrediction() const
Definition: TComSlice.h:114
Void createExplicitReferencePictureSetFromReference(TComList< TComPic * > &rcListPic, const TComReferencePictureSet *pReferencePictureSet, Bool isRAP, Int pocRandomAccess, Bool bUseRecoveryPoint, const Bool bEfficientFieldIRAPEnabled)
Definition: TComSlice.cpp:1270
Bool m_scalingListPresentFlag
Definition: TComSlice.h:1080
Void setDeblockingFilterOverrideEnabledFlag(Bool val)
Definition: TComSlice.h:1174
Bool m_enableTMVPFlag
Definition: TComSlice.h:1317
Void setDeblockingFilterTcOffsetDiv2(Int val)
set tc offset for deblocking filter
Definition: TComSlice.h:1180
Void setConstrainedIntraPred(Bool b)
Definition: TComSlice.h:1102
UInt getQuadtreeTUMaxDepthInter() const
Definition: TComSlice.h:878
Int m_chromaSampleLocTypeTopField
Definition: TComSlice.h:532
Bool getOverscanAppropriateFlag() const
Definition: TComSlice.h:601
TComPPSRExt & getPpsRangeExtension()
Definition: TComSlice.h:1198
UInt m_numRefIdxL0DefaultActive
Definition: TComSlice.h:1050
Void outputScalingLists(std::ostream &os) const
Definition: TComSlice.cpp:1886
Reference Picture Set class.
Definition: TComSlice.h:65
ChromaFormat m_chromaFormatConstraintValue
Definition: TComSlice.h:198
Bool getDeblockingFilterDisable() const
Definition: TComSlice.h:1365
SPS RExt class.
Definition: TComSlice.h:685
NalUnitType getNalUnitType() const
Definition: TComSlice.h:1391
UInt m_uiQuadtreeTULog2MaxSize
Definition: TComSlice.h:767
Void setFinalized(Bool uiVal)
Definition: TComSlice.h:1499
slice header class
Definition: TComSlice.h:1225
Void calculateParameterSetChangedFlag(Bool &bChanged, const std::vector< UChar > *pOldData, const std::vector< UChar > *pNewData)
Definition: TComSlice.cpp:2218
Bool isIRAP() const
Definition: TComSlice.h:1394
UInt getTLayer() const
Definition: TComSlice.h:1453
Bool m_usePCM
Definition: TComSlice.h:771
Void setNumRefIdx(RefPicList e, Int i)
Definition: TComSlice.h:1412
const TComHRD * getHrdParameters() const
Definition: TComSlice.h:678
TComHRD * getHrdParameters(UInt i)
Definition: TComSlice.h:470
Bool getWPBiPred() const
Definition: TComSlice.h:1135
const TComScalingList & getScalingList() const
Definition: TComSlice.h:925
Void setChangedFlag(Int psId, Bool bChanged=true)
Definition: TComSlice.h:1616
Window m_conformanceWindow
Definition: TComSlice.h:759
Bool m_ChromaQpAdjEnabled
Definition: TComSlice.h:1248
Void setSPS(const TComSPS *pcSPS)
Definition: TComSlice.h:1328
static const Int MAX_VPS_NUH_RESERVED_ZERO_LAYER_ID_PLUS1
Definition: CommonDef.h:145
UInt m_sliceCurEndCtuTsAddr
Definition: TComSlice.h:1292
Int getVPSId() const
Definition: TComSlice.h:477
UInt m_uiMaxTotalCUDepth
Total CU depth, relative to the smallest possible transform block size.
Definition: TComSlice.h:757
Void setPicOutputFlag(Bool b)
Definition: TComSlice.h:1336
Int m_pcmBitDepths[MAX_NUM_CHANNEL_TYPE]
Definition: TComSlice.h:779
Int m_maxBitsPerMinCuDenom
Definition: TComSlice.h:545
const TComReferencePictureSet * getReferencePictureSet(Int referencePictureSetNum) const
Definition: TComSlice.h:144
Void setBitDepth(ChannelType type, Int u)
Definition: TComSlice.h:895
ChromaFormat m_chromaFormatIdc
Definition: TComSlice.h:745
UInt m_sliceSegmentArgument
Definition: TComSlice.h:1295
Int getDeblockingFilterTcOffsetDiv2() const
get tc offset for deblocking filter
Definition: TComSlice.h:1181
Void setMvdL1ZeroFlag(Bool b)
Definition: TComSlice.h:1421
Bool getIntraConstraintFlag() const
Definition: TComSlice.h:239
Void setDefaultScalingList()
Definition: TComSlice.cpp:1796
Void setTemporalNestingFlag(Bool t)
Definition: TComSlice.h:487
Bool getDeltaPocMSBPresentFlag(Int i) const
Definition: TComSlice.h:92
Void setReferenced(Bool b)
Definition: TComSlice.h:1386
Bool getChangedFlag(Int psId) const
Definition: TComSlice.h:1632
Void setNeutralChromaIndicationFlag(Bool i)
Definition: TComSlice.h:635
Void setSliceQp(Int i)
Definition: TComSlice.h:1398
Bool m_subLayerProfilePresentFlag[MAX_TLAYER-1]
Definition: TComSlice.h:254
Bool m_entropyCodingSyncEnabledFlag
Indicates the presence of wavefronts.
Definition: TComSlice.h:1060
TComPic * getRefPic(RefPicList e, Int iRefIdx)
Definition: TComSlice.h:1373
Bool m_chromaLocInfoPresentFlag
Definition: TComSlice.h:531
Void setSubLayerLevelPresentFlag(Int i, Bool x)
Definition: TComSlice.h:263
UInt getNumUnitsInTick() const
Definition: TComSlice.h:411
Bool getCheckLDC() const
Definition: TComSlice.h:1382
Bool m_subPicCpbParamsPresentFlag
Definition: TComSlice.h:292
PPS RExt class.
Definition: TComSlice.h:973
UInt m_initialCpbRemovalDelayLengthMinus1
Definition: TComSlice.h:300
UInt getDuCpbSizeScale() const
Definition: TComSlice.h:350
SliceConstraint m_sliceMode
Definition: TComSlice.h:1289
Int getChromaSampleLocTypeTopField() const
Definition: TComSlice.h:628
TComPTL m_pcPTL
Definition: TComSlice.h:808
Void setIntraSmoothingDisabledFlag(Bool bValue)
Definition: TComSlice.h:727
Bool getDeblockingFilterOverrideEnabledFlag() const
Definition: TComSlice.h:1175
UInt m_RefPicSetIdxL1[REF_PIC_LIST_NUM_IDX]
Definition: TComSlice.h:954
Void setTemporalIdNestingFlag(Bool bValue)
Definition: TComSlice.h:914
Void setMaxOpSets(UInt v)
Definition: TComSlice.h:505
UInt getRefMatrixId(UInt sizeId, UInt listId) const
get reference matrix ID
Definition: TComSlice.h:160
NalUnitType m_eNalUnitType
Nal unit type for the slice.
Definition: TComSlice.h:1241
Bool m_bTemporalIdNestingFlag
Definition: TComSlice.h:441
TComRPSList * getRPSList()
Definition: TComSlice.h:884
TComReferencePictureSet * getLocalRPS()
Definition: TComSlice.h:1342
TComHRD * getHrdParameters()
Definition: TComSlice.h:677
Bool getVuiParametersPresentFlag() const
Definition: TComSlice.h:934
Void setNumberOfLongtermPictures(Int number)
Definition: TComSlice.h:110
Void setInitialCpbRemovalDelayLengthMinus1(UInt value)
Definition: TComSlice.h:352
UInt m_maxNuhReservedZeroLayerId
Definition: TComSlice.h:448
UInt m_sliceSegmentCurEndCtuTsAddr
Definition: TComSlice.h:1297
Int m_rpsIdx
Definition: TComSlice.h:1239
UInt getSliceCurEndCtuTsAddr() const
Definition: TComSlice.h:1483
Bool m_bConstrainedIntraPred
Definition: TComSlice.h:1041
Void setUseTransformSkip(Bool b)
Definition: TComSlice.h:1145
Bool getExtendedPrecisionProcessingFlag() const
Definition: TComSlice.h:723
static Bool isLuma(const ComponentID id)
Void setPicInitQPMinus26(Int i)
Definition: TComSlice.h:1098
UInt m_uiMaxLatencyIncreasePlus1[MAX_TLAYER]
Definition: TComSlice.h:797
Void setSarWidth(Int i)
Definition: TComSlice.h:593
Int getNumReorderPics(UInt tlayer) const
Definition: TComSlice.h:881
Void setNumRefIdc(Int x)
Definition: TComSlice.h:119
UInt getRefPicSetIdxL0(UInt idx) const
Definition: TComSlice.h:964
UInt getMaxCUWidth() const
Definition: TComSlice.h:857
Bool m_sliceHeaderExtensionPresentFlag
Definition: TComSlice.h:1073
Bool getOutputFlagPresentFlag() const
Definition: TComSlice.h:1140
UInt getBitRateScale() const
Definition: TComSlice.h:345
Void setSliceHeaderExtensionPresentFlag(Bool val)
Definition: TComSlice.h:1195
UInt picDurationInTcMinus1
Definition: TComSlice.h:277
const TComVPS * m_pcVPS
Definition: TComSlice.h:1270
const TComSPS * getSPS() const
Definition: TComSlice.h:1329
SPS class.
Definition: TComSlice.h:740
Int CbOffset
Definition: TComSlice.h:428
Bool getHighPrecisionOffsetsEnabledFlag() const
Definition: TComSlice.h:729
static const Int MAX_QP_OFFSET_LIST_SIZE
Maximum size of QP offset list is 6 entries.
Definition: CommonDef.h:207
struct ChromaQpAdj::@2::@3 comp
const TimingInfo * getTimingInfo() const
Definition: TComSlice.h:512
Bool m_colFromL0Flag
Definition: TComSlice.h:1274
UInt getTickDivisorMinus2() const
Definition: TComSlice.h:333
Bool cbrFlag[MAX_CPB_CNT][2]
Definition: TComSlice.h:283
Int m_log2MaxMvLengthVertical
Definition: TComSlice.h:547