0fe12bcfb7
Reason for revert: This workaround should no longer be needed, per comment#16 from thakis@ on the original CL. Original issue's description: > Add non-inline SkRTreeFactory constructor to fix clang-cl > > When Chromium is switched to build with VS 2015 that switches clang-cl > to build in -fmsc-version=1900 mode. This causes some changes in > importing of constructors and vftables which leads to link errors in > blink_platform.dll. Adding a non-inline constructor makes 1900 mode > behave consistently with 1800 mode and avoids the link error. > > The root cause needs investigation but this will unblock the VS 2015 > switch. > > BUG=440500,498544 > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1676833002 > > Committed: https://skia.googlesource.com/skia/+/964eec67760196585954203ba625e440607f7e92 TBR=reed@google.com,bsalomon@google.com,mtklein@chromium.org,thakis@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=440500,498544 Review URL: https://codereview.chromium.org/1739363002
32 lines
675 B
C++
32 lines
675 B
C++
/*
|
|
* Copyright 2014 Google Inc.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
* found in the LICENSE file.
|
|
*/
|
|
|
|
#ifndef SkBBHFactory_DEFINED
|
|
#define SkBBHFactory_DEFINED
|
|
|
|
#include "SkTypes.h"
|
|
class SkBBoxHierarchy;
|
|
struct SkRect;
|
|
|
|
class SK_API SkBBHFactory {
|
|
public:
|
|
/**
|
|
* Allocate a new SkBBoxHierarchy. Return NULL on failure.
|
|
*/
|
|
virtual SkBBoxHierarchy* operator()(const SkRect& bounds) const = 0;
|
|
virtual ~SkBBHFactory() {};
|
|
};
|
|
|
|
class SK_API SkRTreeFactory : public SkBBHFactory {
|
|
public:
|
|
SkBBoxHierarchy* operator()(const SkRect& bounds) const override;
|
|
private:
|
|
typedef SkBBHFactory INHERITED;
|
|
};
|
|
|
|
#endif
|