HamBook – Rev 54
?pathlinks?
using System;
using System.Reflection;
using System.Xml.Serialization;
namespace HamBook.Radios.Generic
{
[XmlRoot(Namespace = "Generic")]
public abstract class MemoryChannel : IEquatable<MemoryChannel>
{
[XmlIgnore] public abstract string CurrentLocation { get; set; }
[XmlIgnore] public abstract int Frequency { get; set; }
[XmlIgnore] public abstract string Text { get; set; }
[XmlIgnore] public abstract MemoryRadioMode MemoryRadioMode { get; set; }
[XmlIgnore] public abstract bool Tag { get; set; }
public abstract bool Equals(MemoryChannel other);
public static MemoryChannel Create(string radio, params object[] param)
{
foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
foreach (var type in assembly.GetTypes())
if (typeof(MemoryChannel).IsAssignableFrom(type))
{
var radioAttribute = type.GetCustomAttribute<RadioAttribute>();
if (radioAttribute != null && radioAttribute.Radio == radio)
return (MemoryChannel)Activator.CreateInstance(type, param);
}
return null;
}
}
}
Generated by GNU Enscript 1.6.5.90.