123456789101112131415161718192021222324252627282930 |
- // Copyright 2020 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- #ifndef COMPONENTS_PERFORMANCE_MANAGER_EXECUTION_CONTEXT_EXECUTION_CONTEXT_IMPL_H_
- #define COMPONENTS_PERFORMANCE_MANAGER_EXECUTION_CONTEXT_EXECUTION_CONTEXT_IMPL_H_
- namespace performance_manager {
- class FrameNode;
- class WorkerNode;
- namespace execution_context {
- class ExecutionContext;
- // Constructs ExecutionContext wrappers (implemented as NodeAttachedData) for
- // FrameNodes and WorkerNodes. Once created the objects will live until the
- // underlying node disappears. These should only be called from the graph
- // sequence, like the underlying objects they wrap. The public interface of
- // this is via ExecutionContextRegistry::GetExecutionContextFor*Node().
- const ExecutionContext* GetOrCreateExecutionContextForFrameNode(
- const FrameNode* frame_node);
- const ExecutionContext* GetOrCreateExecutionContextForWorkerNode(
- const WorkerNode* worker_node);
- } // namespace execution_context
- } // namespace performance_manager
- #endif // COMPONENTS_PERFORMANCE_MANAGER_EXECUTION_CONTEXT_EXECUTION_CONTEXT_IMPL_H_
|