chromium/components/performance_manager/graph/page_node_impl.cc

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

#include "components/performance_manager/graph/page_node_impl.h"

#include <memory>
#include <utility>

#include "base/check_op.h"
#include "base/functional/bind.h"
#include "base/memory/raw_ptr.h"
#include "base/not_fatal_until.h"
#include "base/time/default_tick_clock.h"
#include "components/performance_manager/graph/frame_node_impl.h"
#include "components/performance_manager/graph/graph_impl.h"
#include "components/performance_manager/graph/graph_impl_operations.h"
#include "components/performance_manager/graph/process_node_impl.h"
#include "components/performance_manager/public/graph/graph_operations.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/web_contents.h"

namespace performance_manager {

PageNodeImpl::PageNodeImpl(base::WeakPtr<content::WebContents> web_contents,
                           const std::string& browser_context_id,
                           const GURL& visible_url,
                           PagePropertyFlags initial_properties,
                           base::TimeTicks visibility_change_time)
    :{}

PageNodeImpl::~PageNodeImpl() {}

const std::string& PageNodeImpl::GetBrowserContextID() const {}

resource_attribution::PageContext PageNodeImpl::GetResourceContext() const {}

PageNodeImpl::EmbeddingType PageNodeImpl::GetEmbeddingType() const {}

PageType PageNodeImpl::GetType() const {}

bool PageNodeImpl::IsFocused() const {}

bool PageNodeImpl::IsVisible() const {}

base::TimeDelta PageNodeImpl::GetTimeSinceLastVisibilityChange() const {}

bool PageNodeImpl::IsAudible() const {}

std::optional<base::TimeDelta> PageNodeImpl::GetTimeSinceLastAudibleChange()
    const {}

bool PageNodeImpl::HasPictureInPicture() const {}

bool PageNodeImpl::IsOffTheRecord() const {}

PageNode::LoadingState PageNodeImpl::GetLoadingState() const {}

ukm::SourceId PageNodeImpl::GetUkmSourceID() const {}

PageNodeImpl::LifecycleState PageNodeImpl::GetLifecycleState() const {}

bool PageNodeImpl::IsHoldingWebLock() const {}

bool PageNodeImpl::IsHoldingIndexedDBLock() const {}

bool PageNodeImpl::UsesWebRTC() const {}

int64_t PageNodeImpl::GetNavigationID() const {}

const std::string& PageNodeImpl::GetContentsMimeType() const {}

std::optional<blink::mojom::PermissionStatus>
PageNodeImpl::GetNotificationPermissionStatus() const {}

base::TimeDelta PageNodeImpl::GetTimeSinceLastNavigation() const {}

const GURL& PageNodeImpl::GetMainFrameUrl() const {}

uint64_t PageNodeImpl::EstimateMainFramePrivateFootprintSize() const {}

bool PageNodeImpl::HadFormInteraction() const {}

bool PageNodeImpl::HadUserEdits() const {}

base::WeakPtr<content::WebContents> PageNodeImpl::GetWebContents() const {}

uint64_t PageNodeImpl::EstimateResidentSetSize() const {}

uint64_t PageNodeImpl::EstimatePrivateFootprintSize() const {}

base::WeakPtr<PageNodeImpl> PageNodeImpl::GetWeakPtrOnUIThread() {}

base::WeakPtr<PageNodeImpl> PageNodeImpl::GetWeakPtr() {}

void PageNodeImpl::AddFrame(base::PassKey<FrameNodeImpl>,
                            FrameNodeImpl* frame_node) {}

void PageNodeImpl::RemoveFrame(base::PassKey<FrameNodeImpl>,
                               FrameNodeImpl* frame_node) {}

void PageNodeImpl::SetLoadingState(LoadingState loading_state) {}

void PageNodeImpl::SetType(PageType type) {}

void PageNodeImpl::SetIsFocused(bool is_focused) {}

void PageNodeImpl::SetIsVisible(bool is_visible) {}

void PageNodeImpl::SetIsAudible(bool is_audible) {}

void PageNodeImpl::SetHasPictureInPicture(bool has_picture_in_picture) {}

void PageNodeImpl::SetUkmSourceId(ukm::SourceId ukm_source_id) {}

void PageNodeImpl::OnFaviconUpdated() {}

void PageNodeImpl::OnTitleUpdated() {}

void PageNodeImpl::OnAboutToBeDiscarded(base::WeakPtr<PageNode> new_page_node) {}

void PageNodeImpl::SetMainFrameRestoredState(
    const GURL& url,
    blink::mojom::PermissionStatus notification_permission_status) {}

void PageNodeImpl::OnMainFrameNavigationCommitted(
    bool same_document,
    base::TimeTicks navigation_committed_time,
    int64_t navigation_id,
    const GURL& url,
    const std::string& contents_mime_type,
    std::optional<blink::mojom::PermissionStatus>
        notification_permission_status) {}

void PageNodeImpl::OnNotificationPermissionStatusChange(
    blink::mojom::PermissionStatus permission_status) {}

FrameNodeImpl* PageNodeImpl::opener_frame_node() const {}

FrameNodeImpl* PageNodeImpl::embedder_frame_node() const {}

FrameNodeImpl* PageNodeImpl::main_frame_node() const {}

PageNode::NodeSetView<FrameNodeImpl*> PageNodeImpl::main_frame_nodes() const {}

void PageNodeImpl::SetOpenerFrameNode(FrameNodeImpl* opener) {}

void PageNodeImpl::ClearOpenerFrameNode() {}

void PageNodeImpl::SetEmbedderFrameNodeAndEmbeddingType(
    FrameNodeImpl* embedder,
    EmbeddingType embedding_type) {}

void PageNodeImpl::ClearEmbedderFrameNodeAndEmbeddingType() {}

void PageNodeImpl::set_has_nonempty_beforeunload(
    bool has_nonempty_beforeunload) {}

void PageNodeImpl::OnJoiningGraph() {}

void PageNodeImpl::OnBeforeLeavingGraph() {}

void PageNodeImpl::RemoveNodeAttachedData() {}

const FrameNode* PageNodeImpl::GetOpenerFrameNode() const {}

const FrameNode* PageNodeImpl::GetEmbedderFrameNode() const {}

const FrameNode* PageNodeImpl::GetMainFrameNode() const {}

PageNode::NodeSetView<const FrameNode*> PageNodeImpl::GetMainFrameNodes()
    const {}

void PageNodeImpl::SetLifecycleState(LifecycleState lifecycle_state) {}

void PageNodeImpl::SetIsHoldingWebLock(bool is_holding_weblock) {}

void PageNodeImpl::SetIsHoldingIndexedDBLock(bool is_holding_indexeddb_lock) {}

void PageNodeImpl::SetUsesWebRTC(bool uses_web_rtc) {}

void PageNodeImpl::SetHadFormInteraction(bool had_form_interaction) {}

void PageNodeImpl::SetHadUserEdits(bool had_user_edits) {}

}  // namespace performance_manager