| public interface IConnectable { // application 为插件所属的主框架对象。若为null则表示插件本身就是主框架 ConnectionResult Connect( object application ); ExtendibleVersionInfo VersionInfo { get; } void OnDestory(); void OnLoad(); void Run(); } public enum ConnectionResult { Connection_Success , Connection_Failed } public class ExtendibleVersionInfo { private ExtendibleVersionInfo() {} public ExtendibleVersionInfo( string name , string version , string copyright ) { // Omitted } public ExtendibleVersionInfo(string name,int version1,int version2,int version3,string copyright) { // Omitted } public int PrimaryVersion { get { return _Version1; } } public int SecondaryVersion { get { return _Version2; } } public int BuildVersion { get { return _Version3; } } public string Name { get { return _Name; } } public string VersionString { get { // Omitted } } public string Copyright { get { return _Copyright; } } private string _Name; private int _Version1 = 1; private int _Version2 = 0; private int _Version3 = 0; private string _Copyright; public static ExtendibleVersionInfo Empty = new ExtendibleVersionInfo(); } |