chromium/cc/base/simple_enclosed_region.h

// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CC_BASE_SIMPLE_ENCLOSED_REGION_H_
#define CC_BASE_SIMPLE_ENCLOSED_REGION_H_

#include <stddef.h>

#include <string>

#include "cc/base/base_export.h"
#include "ui/gfx/geometry/rect.h"

namespace cc {

class Region;

// A constant-sized approximation of a Region. The SimpleEnclosedRegion may
// exclude points in its approximation (may have false negatives) but will never
// include a point that would not be in the actual Region (no false positives).
class CC_BASE_EXPORT SimpleEnclosedRegion {};

inline bool operator==(const SimpleEnclosedRegion& a,
                       const SimpleEnclosedRegion& b) {}

inline bool operator!=(const SimpleEnclosedRegion& a,
                       const SimpleEnclosedRegion& b) {}

inline SimpleEnclosedRegion SubtractSimpleEnclosedRegions(
    const SimpleEnclosedRegion& a,
    const SimpleEnclosedRegion& b) {}

inline SimpleEnclosedRegion IntersectSimpleEnclosedRegions(
    const SimpleEnclosedRegion& a,
    const SimpleEnclosedRegion& b) {}

inline SimpleEnclosedRegion UnionSimpleEnclosedRegions(
    const SimpleEnclosedRegion& a,
    const SimpleEnclosedRegion& b) {}

}  // namespace cc

#endif  // CC_BASE_SIMPLE_ENCLOSED_REGION_H_