mirror of
https://github.com/claunia/cuetools.net.git
synced 2025-12-16 18:14:25 +00:00
CUETools: fix profiles
This commit is contained in:
@@ -15,6 +15,19 @@ namespace CUETools.Codecs
|
||||
public CUEToolsUDCList encoders;
|
||||
public CUEToolsUDCList decoders;
|
||||
|
||||
public CUEToolsCodecsConfig(CUEToolsCodecsConfig src)
|
||||
{
|
||||
encoders = new CUEToolsUDCList(true);
|
||||
foreach (var enc in src.encoders)
|
||||
encoders.Add(enc.Clone());
|
||||
decoders = new CUEToolsUDCList(false);
|
||||
foreach (var dec in src.decoders)
|
||||
decoders.Add(dec.Clone());
|
||||
formats = new Dictionary<string, CUEToolsFormat>();
|
||||
foreach (var fmt in src.formats)
|
||||
formats.Add(fmt.Key, fmt.Value.Clone(this));
|
||||
}
|
||||
|
||||
public CUEToolsCodecsConfig(List<Type> encs, List<Type> decs)
|
||||
{
|
||||
encoders = new CUEToolsUDCList(true);
|
||||
|
||||
@@ -30,10 +30,21 @@
|
||||
return "." + extension;
|
||||
}
|
||||
}
|
||||
|
||||
public CUEToolsFormat Clone(CUEToolsCodecsConfig cfg)
|
||||
{
|
||||
var res = this.MemberwiseClone() as CUEToolsFormat;
|
||||
if (decoder != null) cfg.decoders.TryGetValue(decoder.extension, decoder.lossless, decoder.name, out res.decoder);
|
||||
if (encoderLossy != null) cfg.encoders.TryGetValue(encoderLossy.extension, encoderLossy.lossless, encoderLossy.name, out res.encoderLossy);
|
||||
if (encoderLossless != null) cfg.encoders.TryGetValue(encoderLossless.extension, encoderLossless.lossless, encoderLossless.name, out res.encoderLossless);
|
||||
return res;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return extension;
|
||||
}
|
||||
|
||||
public string extension;
|
||||
public CUEToolsUDC encoderLossless;
|
||||
public CUEToolsUDC encoderLossy;
|
||||
|
||||
@@ -81,6 +81,13 @@ namespace CUETools.Codecs
|
||||
type = dectype;
|
||||
}
|
||||
|
||||
public CUEToolsUDC Clone()
|
||||
{
|
||||
var res = this.MemberwiseClone() as CUEToolsUDC;
|
||||
if (settings != null) res.settings = settings.Clone();
|
||||
return res;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return name;
|
||||
|
||||
Reference in New Issue
Block a user