/** * @brief enumerator all types for this app */ using System.Collections; using System.Collections.Generic; using System.Reflection; using System; using UnityEngine; public class ClassEnumerator { protected List Results = new List(); public List results { get { return Results; } } private Type AttributeType; private Type InterfaceType; public ClassEnumerator( Type InAttributeType, Type InInterfaceType, Assembly InAssembly, bool bIgnoreAbstract = true, bool bInheritAttribute = false, bool bShouldCrossAssembly = false ) { AttributeType = InAttributeType; InterfaceType = InInterfaceType; try { if (bShouldCrossAssembly) { Assembly[] Assemblys = AppDomain.CurrentDomain.GetAssemblies(); if( Assemblys != null ) { for( int i= 0; i 0) { Results.Add(t); // Debug.Log("Found Type:" + t.FullName + " : " + a.GetName()); } } } } } } }