blob: 02f42314b36292d43a3b0aa702144034bf33e428 [file] [log] [blame]
// Copyright (c) 2011 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_FRAGMENTATION_CHECKER_WIN_H_
#define CHROME_BROWSER_FRAGMENTATION_CHECKER_WIN_H_
#pragma once
class FilePath;
namespace fragmentation_checker {
const int kMaxExtentCount = 1 << 16;
// Returns the number of extents for the file at |file_path|. The number is
// capped at kMaxExtentCount, files with more extents than that will be counted
// as having kMaxExtentCount extents. On failure, this function returns 0.
int CountFileExtents(const FilePath& file_path);
// Records fragmentation metrics for the current module. This records the number
// of fragments the current module is stored in.
// This will be used to determine whether pursuing more aggressive
// manual defragmentation is worth the effort.
void RecordFragmentationMetricForCurrentModule();
} // namespace fragmentation_checker
#endif // CHROME_BROWSER_FRAGMENTATION_CHECKER_WIN_H_