Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
01/19/10 13:40:52 (15 years ago)
Author:
gkronber
Message:

Added a two versions of the type discovery methods in IApplicationManager with a boolean parameter to select if only instantiable types should be returned. #846

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.PluginInfrastructure/Interfaces/IApplicationManager.cs

    r2592 r2642  
    3535    /// </summary>
    3636    IEnumerable<IPluginDescription> Plugins { get; }
     37
    3738    /// <summary>
    3839    /// Gets all discovered applications.
     
    4041    IEnumerable<IApplicationDescription> Applications { get; }
    4142
    42     /// <summary>
    43     /// Discovers and creates instances of <typeparamref name="T"/> and all types implementing or inheriting <typeparamref name="T"/> (directly and indirectly) declared in any assembly of <paramref name="plugin"/>.
    44     /// </summary>
    45     /// <typeparam name="T">The type or super-type to discover.</typeparam>
    46     /// <param name="plugin">The declaring plugin.</param>
    47     /// <returns>An enumerable of instances of the discovered types.</returns>
    48     IEnumerable<T> GetInstances<T>(IPluginDescription plugin) where T : class;
    4943    /// <summary>
    5044    /// Discovers and creates instances of <typeparamref name="T"/> and all types implementing or inheriting <typeparamref name="T"/> (directly and indirectly).
     
    6761    /// <returns>An enumerable of discovered types.</returns>
    6862    IEnumerable<Type> GetTypes(Type type);
     63
     64    /// <summary>
     65    /// Discovers all types implementing or inheriting <paramref name="type"/> (directly and indirectly).
     66    /// </summary>
     67    /// <param name="type">The type to discover.</param>
     68    /// <param name="onlyInstantiable">Return only types that are instantiable (instance, abstract... are not returned)</param>
     69    /// <returns>An enumerable of discovered types.</returns>
     70    IEnumerable<Type> GetTypes(Type type, bool onlyInstantiable);
     71
    6972    /// <summary>
    7073    /// Discovers all types implementing or inheriting <paramref name="type"/> (directly and indirectly) that are declaed in any assembly of <paramref name="plugin"/>.
     
    7477    /// <returns>An enumerable of discovered types.</returns>
    7578    IEnumerable<Type> GetTypes(Type type, IPluginDescription plugin);
     79
     80    /// <summary>
     81    /// Discovers all types implementing or inheriting <paramref name="type"/> (directly and indirectly) that are declaed in any assembly of <paramref name="plugin"/>.
     82    /// </summary>
     83    /// <param name="type">The type to discover.</param>
     84    /// <param name="plugin">The declaring plugin.</param>
     85    /// <param name="onlyInstantiable">Return only types that are instantiable (instance, abstract... are not returned)</param>
     86    /// <returns>An enumerable of discovered types.</returns>
     87    IEnumerable<Type> GetTypes(Type type, IPluginDescription plugin, bool onlyInstantiable);
     88
    7689    /// <summary>
    7790    /// Finds the plugin that declares the <paramref name="type">type</paramref>.
Note: See TracChangeset for help on using the changeset viewer.