Files
platform-external-webrtc/webrtc/modules/desktop_capture/resolution_tracker.h
Zijie He 7e1c24cba7 Update ResolutionChangeDetector to make it match common practices
ResolutionChangeDetector now does not update its internal state. There is no
impact because Reset() is always actively called.

So this change renames ResolutionChangeDetector to ResolutionTracker, and rename
the IsChanged() function into SetResolution(), which returns true if a
replacement happened. Internally it always records the latest DesktopSize.
Customers of this class can still use SetResolution() function to check whether
a DesktopSize change happened.

Bug: webrtc:8038
Change-Id: I6d25f3dd2d0567219a82b6688bf3e08560c8b0af
Reviewed-on: https://chromium-review.googlesource.com/587405
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Commit-Queue: Zijie He <zijiehe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19184}
2017-07-28 18:08:45 +00:00

35 lines
1020 B
C++

/*
* Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
#ifndef WEBRTC_MODULES_DESKTOP_CAPTURE_RESOLUTION_TRACKER_H_
#define WEBRTC_MODULES_DESKTOP_CAPTURE_RESOLUTION_TRACKER_H_
#include "webrtc/modules/desktop_capture/desktop_geometry.h"
namespace webrtc {
class ResolutionTracker final {
public:
// Sets the resolution to |size|. Returns true if a previous size was recorded
// and differs from |size|.
bool SetResolution(DesktopSize size);
// Resets to the initial state.
void Reset();
private:
DesktopSize last_size_;
bool initialized_ = false;
};
} // namespace webrtc
#endif // WEBRTC_MODULES_DESKTOP_CAPTURE_RESOLUTION_TRACKER_H_