Files
Andres Suarez 8bd3edec88 Update copyright headers from Facebook to Meta
Reviewed By: aaronabramov

Differential Revision: D33367752

fbshipit-source-id: 4ce94d184485e5ee0a62cf67ad2d3ba16e285c8f
2021-12-30 15:11:21 -08:00

48 lines
1.2 KiB
C++

/*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
#include <react/renderer/mounting/MountingTransaction.h>
#pragma once
namespace facebook {
namespace react {
class MountingCoordinator;
/**
* Generic interface for anything that needs to override specific
* MountingCoordinator methods. This is for platform-specific escape hatches
* like animations.
*/
class MountingOverrideDelegate {
public:
virtual bool shouldOverridePullTransaction() const = 0;
virtual ~MountingOverrideDelegate() = default;
/**
* Delegates that override this method are responsible for:
*
* - Returning a MountingTransaction with mutations
* - Calling
* - Telemetry, if appropriate
*
* @param surfaceId
* @param number
* @param mountingCoordinator
* @return
*/
virtual butter::optional<MountingTransaction> pullTransaction(
SurfaceId surfaceId,
MountingTransaction::Number number,
TransactionTelemetry const &telemetry,
ShadowViewMutationList mutations) const = 0;
};
} // namespace react
} // namespace facebook