forked from MonoGame/MonoGame
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathIContentFIleCache.cs
More file actions
40 lines (35 loc) · 1.91 KB
/
IContentFIleCache.cs
File metadata and controls
40 lines (35 loc) · 1.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// MonoGame - Copyright (C) MonoGame Foundation, Inc
// This file is subject to the terms and conditions defined in
// file 'LICENSE.txt', which is part of this source code package.
namespace MonoGame.Framework.Content.Pipeline.Builder;
/// <summary>
/// An interface for storing information about the compiled content.
/// </summary>
public interface IContentFileCache
{
/// <summary>
/// Adds the specified file as a dependency related to the current content file.
/// </summary>
/// <param name="builder">A <see cref="ContentBuilder"/> the added depedency is related to.</param>
/// <param name="dependencyPath">A relative or absolute path to the dependency file.</param>
void AddDependency(ContentBuilder builder, string dependencyPath);
/// <summary>
/// Adds the specified file cache as a dependency related to the current content file.
/// </summary>
/// <param name="builder">A <see cref="ContentBuilder"/> the added depedency is related to.</param>
/// <param name="fileCache">A dependent file cache.</param>
void AddDependency(ContentBuilder builder, IContentFileCache fileCache);
/// <summary>
/// Adds the specified file as an output file related to the current content file.
/// </summary>
/// <param name="builder">A <see cref="ContentBuilder"/> the output file is related to.</param>
/// <param name="outputPath">A relative or absolute path to the output file.</param>
void AddOutputFile(ContentBuilder builder, string outputPath);
/// <summary>
///
/// </summary>
/// <param name="builder">A <see cref="ContentBuilder"/> the added depedency is related to.</param>
/// <param name="info">A <see cref="ContentInfo"/> for which to use to check the validity of the cached asset.</param>
/// <returns><c>true</c> if the file cache is still valid, <c>false</c> otherwise.</returns>
bool IsValid(ContentBuilder builder, ContentInfo info);
}