| Index: webrtc/modules/video_coding/main/source/decoding_state.h
 | 
| diff --git a/webrtc/modules/video_coding/main/source/decoding_state.h b/webrtc/modules/video_coding/main/source/decoding_state.h
 | 
| index 99ee33519530fa78d431ed3ff43a38e360af4c39..0be0416321b1e15a3a7b411e54dd82d929d4c716 100644
 | 
| --- a/webrtc/modules/video_coding/main/source/decoding_state.h
 | 
| +++ b/webrtc/modules/video_coding/main/source/decoding_state.h
 | 
| @@ -21,6 +21,11 @@ class VCMPacket;
 | 
|  
 | 
|  class VCMDecodingState {
 | 
|   public:
 | 
| +  // The max number of bits used to reference back
 | 
| +  // to a previous frame when using flexible mode.
 | 
| +  static const uint16_t kNumRefBits = 14;
 | 
| +  static const uint16_t kFrameDecodedLength = 1 << kNumRefBits;
 | 
| +
 | 
|    VCMDecodingState();
 | 
|    ~VCMDecodingState();
 | 
|    // Check for old frame
 | 
| @@ -52,7 +57,9 @@ class VCMDecodingState {
 | 
|    bool ContinuousPictureId(int picture_id) const;
 | 
|    bool ContinuousSeqNum(uint16_t seq_num) const;
 | 
|    bool ContinuousLayer(int temporal_id, int tl0_pic_id) const;
 | 
| +  bool ContinuousFrameRefs(const VCMFrameBuffer* frame) const;
 | 
|    bool UsingPictureId(const VCMFrameBuffer* frame) const;
 | 
| +  bool UsingFlexibleMode(const VCMFrameBuffer* frame) const;
 | 
|  
 | 
|    // Keep state of last decoded frame.
 | 
|    // TODO(mikhal/stefan): create designated classes to handle these types.
 | 
| @@ -63,6 +70,10 @@ class VCMDecodingState {
 | 
|    int         tl0_pic_id_;
 | 
|    bool        full_sync_;  // Sync flag when temporal layers are used.
 | 
|    bool        in_initial_state_;
 | 
| +
 | 
| +  // Used to check references in flexible mode.
 | 
| +  bool frame_decoded_[kFrameDecodedLength];
 | 
| +  uint16_t frame_decoded_cleared_to_;
 | 
|  };
 | 
|  
 | 
|  }  // namespace webrtc
 | 
| 
 |