2018-09-11 15:27:47 -07:00
|
|
|
// Copyright (c) Facebook, Inc. and its affiliates.
|
2018-05-31 15:31:03 -07:00
|
|
|
|
|
|
|
// This source code is licensed under the MIT license found in the
|
|
|
|
// LICENSE file in the root directory of this source tree.
|
2018-05-08 22:56:16 -07:00
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
2018-11-27 18:29:39 -08:00
|
|
|
#include <react/mounting/ShadowViewMutation.h>
|
2018-05-08 22:56:16 -07:00
|
|
|
|
|
|
|
namespace facebook {
|
|
|
|
namespace react {
|
|
|
|
|
|
|
|
class ShadowTree;
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Abstract class for ShadowTree's delegate.
|
|
|
|
*/
|
|
|
|
class ShadowTreeDelegate {
|
2018-10-09 16:25:13 -07:00
|
|
|
public:
|
2018-05-08 22:56:16 -07:00
|
|
|
/*
|
|
|
|
* Called right after Shadow Tree commit a new state of the the tree.
|
|
|
|
*/
|
2018-10-09 16:25:13 -07:00
|
|
|
virtual void shadowTreeDidCommit(
|
|
|
|
const ShadowTree &shadowTree,
|
2019-02-04 17:24:23 -08:00
|
|
|
const ShadowViewMutationList &mutations,
|
|
|
|
long commitStartTime,
|
|
|
|
long layoutTime) const = 0;
|
2018-09-07 11:12:13 -07:00
|
|
|
|
|
|
|
virtual ~ShadowTreeDelegate() noexcept = default;
|
2018-05-08 22:56:16 -07:00
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace react
|
|
|
|
} // namespace facebook
|