Unlimited.Framework.Converters.Graph.Output.OutputDescriptionSerializationService.GetKnownTypes C# (CSharp) Method

GetKnownTypes() private static method

private static GetKnownTypes ( ) : IEnumerable
return IEnumerable
        private static IEnumerable<Type> GetKnownTypes()
        {
            Type pathType = typeof (IPath);
            Type outputDescriptionType = typeof (IOutputDescription);
            Type dataSourceShapeType = typeof (IDataSourceShape);

            List<Type> knownTypes = typeof (OutputDescription).Assembly.GetTypes()
                .Where(t => pathType.IsAssignableFrom(t) && t != pathType ||
                            outputDescriptionType.IsAssignableFrom(t) && t != outputDescriptionType ||
                            dataSourceShapeType.IsAssignableFrom(t) && t != dataSourceShapeType).ToList();

            return knownTypes;
        }