using System;
namespace CUETools.Codecs
{
///
/// This class provides an attribute for marking
/// classes that provide .
///
///
/// When plugins with classes that provide are
/// registered, their attributes are read.
///
///
/// using CUETools.Codecs;
///
///[AudioDecoderClass("libFLAC", "flac")]
///public class MyDecoder : IAudioSource {
/// ...
///}
///
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
public sealed class AudioDecoderClass : Attribute
{
public string DecoderName
{
get;
set;
}
public string Extension
{
get;
set;
}
public int Priority
{
get;
set;
}
public AudioDecoderClass(string decoderName, string extension, int priority)
{
DecoderName = decoderName;
Extension = extension;
Priority = priority;
}
}
}