kodi
DirtyRegionTracker.h
1 /*
2  * Copyright (C) 2005-2018 Team Kodi
3  * This file is part of Kodi - https://kodi.tv
4  *
5  * SPDX-License-Identifier: GPL-2.0-or-later
6  * See LICENSES/README.md for more information.
7  */
8 
9 #pragma once
10 
11 #include "IDirtyRegionSolver.h"
12 
13 #if defined(TARGET_DARWIN_EMBEDDED)
14 #define DEFAULT_BUFFERING 4
15 #else
16 #define DEFAULT_BUFFERING 3
17 #endif
18 
20 {
21 public:
22  explicit CDirtyRegionTracker(int buffering = DEFAULT_BUFFERING);
24  void SelectAlgorithm();
25  void MarkDirtyRegion(const CDirtyRegion &region);
26 
27  const CDirtyRegionList &GetMarkedRegions() const;
28  CDirtyRegionList GetDirtyRegions();
29  void CleanMarkedRegions();
30 
31 private:
32  CDirtyRegionList m_markedRegions;
33  int m_buffering;
34  IDirtyRegionSolver *m_solver;
35 };
Definition: DirtyRegionTracker.h:19
Definition: IDirtyRegionSolver.h:18
Definition: DirtyRegion.h:15