/[RomCheater]/trunk/RomCheater.PluginFramework/Interfaces/PluginInterfaces.cs
ViewVC logotype

Diff of /trunk/RomCheater.PluginFramework/Interfaces/PluginInterfaces.cs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 228 by william, Sat Jun 2 16:02:01 2012 UTC revision 389 by william, Tue Jun 19 12:47:26 2012 UTC
# Line 14  namespace RomCheater.PluginFramework.Int Line 14  namespace RomCheater.PluginFramework.Int
14      public interface IPluginName { string Name { get; } }      public interface IPluginName { string Name { get; } }
15      public interface IPluginDescription { string Description { get; } }      public interface IPluginDescription { string Description { get; } }
16      public interface IPluginID { Guid ID { get; } }      public interface IPluginID { Guid ID { get; } }
17      public interface IPluginRefresh { void Reload();    }      public interface IPluginRefresh { void Reload(); void Reload(bool silent);   }
18      #endregion      #endregion
19      #endregion      #endregion
20      #region IConfigPlugin      #region IConfigPlugin
21      public interface IConfigPlugin : IPluginBase      public interface IConfigPlugin : IPluginBase, IAcceptsReadOnlyMemoryRange
22      {      {
23          List<ProcContainer> ValidProcessesForPlugin { get; }          List<ProcContainer> ValidProcessesForPlugin { get; }
24      }      }
# Line 37  namespace RomCheater.PluginFramework.Int Line 37  namespace RomCheater.PluginFramework.Int
37      public interface IPluginLoader      public interface IPluginLoader
38      {      {
39          void LoadPlugins();          void LoadPlugins();
40            void LoadPlugins(bool silent);
41          List<IConfigPlugin> LoadedConfigPlugins { get; }          List<IConfigPlugin> LoadedConfigPlugins { get; }
42          List<IInputPlugin> LoadedInputPlugins { get; }          List<IInputPlugin> LoadedInputPlugins { get; }
43          List<IWindowPlugin> LoadedWindowPlugins { get; }          List<IWindowPlugin> LoadedWindowPlugins { get; }
# Line 48  namespace RomCheater.PluginFramework.Int Line 49  namespace RomCheater.PluginFramework.Int
49          string ToString();          string ToString();
50      }      }
51      #endregion      #endregion
52  #region AcceptsPlugin      #region AcceptsPlugin
53      public interface IAcceptsPlugin<TPlugin>      public interface IAcceptsPlugin<TPlugin>
54          where TPlugin : IPluginBase          where TPlugin : IPluginBase
55      {      {
56          TPlugin AcceptedPlugin { get; set; }          TPlugin AcceptedPlugin { get; set; }
57      }      }
58  #endregion      public interface IAcceptsConfig : IAcceptsPlugin<IConfigPlugin> { }
59      public interface IProcessConfig : IAcceptsPlugin<IConfigPlugin>      public interface IAcceptsProcess : IAcceptsProcess<Process>    {    }
60        public interface IAcceptsProcess<TProcess>
61            where TProcess : Process
62      {      {
63          Process AcceptedProcess { get; set; }          TProcess AcceptedProcess { get; set; }
64      }      }
65        #endregion
66        public interface IAcceptsProcessAndConfig<TProcess> : IAcceptsConfig, IAcceptsProcess<TProcess> where TProcess : Process { }
67        public interface IAcceptsProcessAndConfig : IAcceptsProcess, IAcceptsConfig { }
68    
69        public class AcceptedProcessAndConfig<TProcess> : IAcceptsProcessAndConfig<TProcess> where TProcess : Process
70        {
71            public AcceptedProcessAndConfig() : this(null, default(TProcess)) { }
72            public AcceptedProcessAndConfig(IConfigPlugin config, TProcess process) { AcceptedPlugin = config; AcceptedProcess = process; }
73            #region IAcceptsProcessAndConfig<TProcess> members
74            #endregion
75    
76            #region IAcceptsPlugin<IConfigPlugin> Members
77            public IConfigPlugin AcceptedPlugin { get; set; }
78            #endregion
79    
80            #region IAcceptsProcess<TProcess> Members
81            public TProcess AcceptedProcess { get; set; }
82            #endregion
83        }
84        public class AcceptedProcessAndConfig : IAcceptsProcessAndConfig
85        {
86            public AcceptedProcessAndConfig() : this(null, null) { }
87            public AcceptedProcessAndConfig(IConfigPlugin config, Process process) { AcceptedPlugin = config; AcceptedProcess = process; }
88    
89            #region IAcceptsProcess<Process> Members
90            public Process AcceptedProcess { get; set; }
91            #endregion
92            #region IAcceptsPlugin<IConfigPlugin> Members
93            public IConfigPlugin AcceptedPlugin { get; set; }
94            #endregion
95        }
96    
97      public interface IAcceptsProcessPID      public interface IAcceptsProcessPID
98      {      {
99          int ProcessPID { get; set; }          int ProcessPID { get; set; }
100      }      }
101      public interface IAcceptsMemoryRange      public interface IAcceptsMemoryRange
102      {      {
103          uint MemoryStart { get; set; }          uint MemoryRangeStart { get; set; }
104          uint MemorySize { get; set; }          uint MemoryRangeSize { get; set; }
105        }
106        public interface IAcceptsReadOnlyMemoryRange
107        {
108            uint MemoryRangeStart { get; }
109            uint MemoryRangeSize { get; }
110      }      }
111      public interface IOutputsData<TData> { TData Data { get; } }      public interface IOutputsData<TData> { TData Data { get; } }
112      public interface ISearchInProgress { bool SearchInProgess { get; } }      public interface ISearchInProgress { bool SearchInProgess { get; } }

Legend:
Removed from v.228  
changed lines
  Added in v.389

  ViewVC Help
Powered by ViewVC 1.1.22