forked from crskycode/BCnEncoder.NET
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathITextureFileFormat.cs
More file actions
37 lines (33 loc) · 863 Bytes
/
Copy pathITextureFileFormat.cs
File metadata and controls
37 lines (33 loc) · 863 Bytes
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
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using BCnEncoder.Shared;
namespace BCnEncoder.TextureFormats
{
public interface ITextureFileFormat
{
bool SupportsLdr { get; }
bool SupportsHdr { get; }
bool SupportsCubeMap { get; }
bool SupportsMipMaps { get; }
bool SupportsArrays { get; }
bool IsSupportedFormat(CompressionFormat format);
void FromTextureData(BCnTextureData textureData);
BCnTextureData ToTextureData();
void ReadFromStream(Stream inputStream);
void WriteToStream(Stream outputStream);
}
public interface ITextureFileFormat<T> : ITextureFileFormat where T : class, ITextureFileFormat<T>, new()
{
public static T Read(Stream inputStream)
{
var tex = new T();
tex.ReadFromStream(inputStream);
return tex;
}
}
public static class TextureFileFormatExtensions
{
}
}