blob: 56a3980bbf775daeab309f3e4b1a0439c5119c01 [file] [log] [blame]
// Copyright 2017 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 CHROME_BROWSER_RESOURCE_COORDINATOR_LIFECYCLE_UNIT_SOURCE_OBSERVER_H_
#define CHROME_BROWSER_RESOURCE_COORDINATOR_LIFECYCLE_UNIT_SOURCE_OBSERVER_H_
namespace resource_coordinator {
class LifecycleUnit;
// Interface to be notified when LifecycleUnits are created.
class LifecycleUnitSourceObserver {
public:
virtual ~LifecycleUnitSourceObserver() = default;
// Invoked immediately after a LifecycleUnit is created.
//
// The observer doesn't own |lifecycle_unit|. To use |lifecycle_unit| beyond
// this method invocation, register a LifecycleUnitObserver to be notified of
// its destruction.
virtual void OnLifecycleUnitCreated(LifecycleUnit* lifecycle_unit) = 0;
};
} // namespace resource_coordinator
#endif // CHROME_BROWSER_RESOURCE_COORDINATOR_LIFECYCLE_UNIT_SOURCE_OBSERVER_H_