chromium/components/no_state_prefetch/renderer/no_state_prefetch_helper.h

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

#ifndef COMPONENTS_NO_STATE_PREFETCH_RENDERER_NO_STATE_PREFETCH_HELPER_H_
#define COMPONENTS_NO_STATE_PREFETCH_RENDERER_NO_STATE_PREFETCH_HELPER_H_

#include "base/compiler_specific.h"
#include "base/memory/weak_ptr.h"
#include "base/time/time.h"
#include "content/public/renderer/render_frame_observer.h"
#include "content/public/renderer/render_frame_observer_tracker.h"

namespace blink {
class URLLoaderThrottle;
}  // namespace blink

namespace prerender {
class NoStatePrefetchURLLoaderThrottle;

// Helper class to track whether its RenderFrame is currently being no-state
// prefetched. Created when prefetching starts and deleted as soon as it stops.
class NoStatePrefetchHelper
    : public content::RenderFrameObserver,
      public content::RenderFrameObserverTracker<NoStatePrefetchHelper> {};

}  // namespace prerender

#endif  // COMPONENTS_NO_STATE_PREFETCH_RENDERER_NO_STATE_PREFETCH_HELPER_H_