Пример #1
0
 /// <summary>
 /// Instanciate a new pattern matching building block.
 /// </summary>
 /// <param name="numberOfInputs">The count of input neurons.</param>
 /// <param name="numberOfClasses">The count of output neurons.</param>
 /// <param name="config">The configuration instance (to replace the default).</param>
 public Controler(int numberOfInputs, int numberOfClasses, ConfigNode config)
 {
     config.AttatchToHost(this);
     _patterns = new PatternSet(numberOfClasses);
     _outputTraining = new double[numberOfClasses];
     _inputPattern = new double[numberOfInputs];
     //BuildNetwork(true);
 }
            internal ManagedCodePatterns(ManagedCodeConventions conventions)
            {
                AnyTargettedFile = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("{any}/{tfm}/{any?}", table: DotnetAnyTable),
                    new PatternDefinition("runtimes/{rid}/{any}/{tfm}/{any?}", table: DotnetAnyTable),
                },
                    pathPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("{any}/{tfm}/{any?}", table: DotnetAnyTable),
                    new PatternDefinition("runtimes/{rid}/{any}/{tfm}/{any?}", table: DotnetAnyTable),
                });

                RuntimeAssemblies = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("runtimes/{rid}/lib/{tfm}/{any?}", table: DotnetAnyTable),
                    new PatternDefinition("lib/{tfm}/{any?}", table: DotnetAnyTable),
                    new PatternDefinition("lib/{assembly?}", table: DotnetAnyTable, defaults: NetTFMTable)
                },
                    pathPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("runtimes/{rid}/lib/{tfm}/{assembly}", table: DotnetAnyTable),
                    new PatternDefinition("lib/{tfm}/{assembly}", table: DotnetAnyTable),
                    new PatternDefinition("lib/{assembly}", table: DotnetAnyTable, defaults: NetTFMTable)
                });

                CompileRefAssemblies = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("ref/{tfm}/{any?}", table: DotnetAnyTable),
                },
                    pathPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("ref/{tfm}/{assembly}", table: DotnetAnyTable),
                });

                CompileLibAssemblies = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("lib/{tfm}/{any?}", table: DotnetAnyTable),
                    new PatternDefinition("lib/{assembly?}", table: DotnetAnyTable, defaults: NetTFMTable)
                },
                    pathPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("lib/{tfm}/{assembly}", table: DotnetAnyTable),
                    new PatternDefinition("lib/{assembly}", table: DotnetAnyTable, defaults: NetTFMTable)
                });

                NativeLibraries = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("runtimes/{rid}/nativeassets/{tfm}/{any?}", table: DotnetAnyTable),
                    new PatternDefinition("runtimes/{rid}/native/{any?}", table: null, defaults: DefaultTfmAny)
                },
                    pathPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("runtimes/{rid}/nativeassets/{tfm}/{any}", table: DotnetAnyTable),
                    new PatternDefinition("runtimes/{rid}/native/{any}", table: null, defaults: DefaultTfmAny)
                });

                ResourceAssemblies = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("runtimes/{rid}/lib/{tfm}/{locale?}/{any?}", table: DotnetAnyTable),
                    new PatternDefinition("lib/{tfm}/{locale?}/{any?}", table: DotnetAnyTable),
                },
                    pathPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("runtimes/{rid}/lib/{tfm}/{locale}/{satelliteAssembly}", table: DotnetAnyTable),
                    new PatternDefinition("lib/{tfm}/{locale}/{satelliteAssembly}", table: DotnetAnyTable),
                });

                MSBuildFiles = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("build/{tfm}/{msbuild?}", table: DotnetAnyTable),
                    new PatternDefinition("build/{msbuild?}", table: null, defaults: DefaultTfmAny)
                },
                    pathPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("build/{tfm}/{msbuild}", table: DotnetAnyTable),
                    new PatternDefinition("build/{msbuild}", table: null, defaults: DefaultTfmAny)
                });

                MSBuildMultiTargetingFiles = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("buildMultiTargeting/{msbuild?}", table: null, defaults: DefaultTfmAny),

                    // deprecated
                    new PatternDefinition("buildCrossTargeting/{msbuild?}", table: null, defaults: DefaultTfmAny)
                },
                    pathPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("buildMultiTargeting/{msbuild}", table: null, defaults: DefaultTfmAny),

                    // deprecated
                    new PatternDefinition("buildCrossTargeting/{msbuild}", table: null, defaults: DefaultTfmAny)
                });

                ContentFiles = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("contentFiles/{codeLanguage}/{tfm}/{any?}"),
                },
                    pathPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("contentFiles/{codeLanguage}/{tfm}/{any?}"),
                });

                ToolsAssemblies = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("tools/{tfm}/{rid}/{any?}", table: AnyTable),
                },
                    pathPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("tools/{tfm}/{rid}/{any?}", table: AnyTable),
                });

                EmbedAssemblies = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("embed/{tfm}/{any?}", table: DotnetAnyTable),
                },
                    pathPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("embed/{tfm}/{assembly}", table: DotnetAnyTable),
                });

                MSBuildTransitiveFiles = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("buildTransitive/{tfm}/{msbuild?}", table: DotnetAnyTable),
                    new PatternDefinition("buildTransitive/{msbuild?}", table: null, defaults: DefaultTfmAny)
                },
                    pathPatterns: new PatternDefinition[]
                {
                    new PatternDefinition("buildTransitive/{tfm}/{msbuild}", table: DotnetAnyTable),
                    new PatternDefinition("buildTransitive/{msbuild}", table: null, defaults: DefaultTfmAny)
                });
            }
Пример #3
0
        protected override void ExecuteTask()
        {
            string dir            = SolutionDir.FullName;
            string repositoryPath = GetRepositoryPathFromSolution(dir);

            if (Feed == null)
            {
                Feed = "https://www.nuget.org/api/v2/";
            }

            _fileSystem       = new PhysicalFileSystem(dir);
            RepositoryFactory = new PackageRepositoryFactory();
            SourceProvider    = new PackageSourceProvider(new Settings(_fileSystem));
            var repo = RepositoryFactory.CreateRepository(Feed);

            Log(Level.Debug, "Repo: {0}, Count: {1}", repo.Source, repo.GetPackages().Count());

            var           fw = VersionUtility.ParseFrameworkName(Framework);
            List <string> files = new List <string>(), references = new List <string>();

            foreach (var deps in Dependencies)
            {
                foreach (var dep in deps.Dependencies)
                {
                    var package = repo.FindPackage(dep.Id, dep.VersionSpec, !String.IsNullOrWhiteSpace(dep.VersionSpec.MinVersion.SpecialVersion), false);
                    if (package == null)
                    {
                        package = repo.FindPackage(dep.Id, dep.VersionSpec, true, false);
                    }
                    if (package == null)
                    {
                        package = repo.FindPackage(dep.Id, dep.VersionSpec, true, true);
                    }
                    if (package == null)
                    {
                        throw new BuildException(String.Format("Can't find package {0} with min version {1}", dep.Id, dep.MinVersion), Location);
                    }

                    string pkgPath = Path.Combine(repositoryPath, package.Id + "." + package.Version);

                    var package_files = package.GetLibFiles().ToList();
                    IEnumerable <IPackageFile> compatible_files;
                    Log(Level.Debug, "Found package {0} with {1} file(s) - {2}", package.Id, package_files.Count, package.GetType());
                    if (!VersionUtility.TryGetCompatibleItems(fw, package_files, out compatible_files))
                    {
                        throw new BuildException("Couldn't get compatible files.");
                    }

                    foreach (var f in compatible_files)
                    {
                        var extension = Path.GetExtension(f.Path);

                        var path = Path.Combine(pkgPath, f.Path);

                        if (File.Exists(path))
                        {
                            break;
                        }

                        if (!Directory.Exists(Path.GetDirectoryName(path)))
                        {
                            Directory.CreateDirectory(Path.GetDirectoryName(path));
                        }

                        using (var fileStream = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.Read)) {
                            using (var stream = f.GetStream()) {
                                stream.CopyTo(fileStream);
                                fileStream.Flush();
                                fileStream.Dispose();
                            }
                        }

                        Log(Level.Debug, "  - Found compatible file {1} ({0}) - {2}", f.Path, f.EffectivePath, path);
                        if (extension == ".dll" || extension == ".exe")
                        {
                            references.Add(path);
                        }
                        files.Add(path);
                    }
                }
            }

            if (FilesId != null)
            {
                PatternSet ps = new PatternSet();
                ps.Include.AddRange(files.Select(MakePattern).ToArray());
                Project.DataTypeReferences.Add(FilesId, ps);
            }
            if (ReferencesId != null)
            {
                PatternSet ps = new PatternSet();
                ps.Include.AddRange(references.Select(MakePattern).ToArray());
                Project.DataTypeReferences.Add(ReferencesId, ps);
            }

            Log(Level.Info, "Found {0} file(s) and {1} reference(s)", files.Count, references.Count);
        }
Пример #4
0
 internal static void GetContentForPattern(ContentItemCollection collection, PatternSet pattern, IList <ContentItemGroup> itemGroups)
 {
     collection.PopulateItemGroups(pattern, itemGroups);
 }
Пример #5
0
 /// <summary>
 /// Instanciate a new pattern matching building block.
 /// </summary>
 /// <param name="numberOfInputs">The count of input neurons.</param>
 /// <param name="numberOfClasses">The count of output neurons.</param>
 /// <param name="builder">A network structure builder (to replace the default).</param>
 public Controler(int numberOfInputs, int numberOfClasses, INetworkStructureBuilder builder)
 {
     ConfigNode.AttachRootNodeToHost(this);
     _patterns = new PatternSet(numberOfClasses);
     _outputTraining = new double[numberOfClasses];
     _inputPattern = new double[numberOfInputs];
     _builder = builder;
     //BuildNetwork(true);
 }
Пример #6
0
            internal ManagedCodePatterns(ManagedCodeConventions conventions)
            {
                RuntimeAssemblies = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    "runtimes/{rid}/lib/{tfm}/{any?}",
                    "lib/{tfm}/{any?}",
                    new PatternDefinition("lib/{assembly?}", defaults: new Dictionary <string, object>
                    {
                        { "tfm", new NuGetFramework(FrameworkConstants.FrameworkIdentifiers.Net, FrameworkConstants.EmptyVersion) }
                    })
                },
                    pathPatterns: new PatternDefinition[]
                {
                    "runtimes/{rid}/lib/{tfm}/{assembly}",
                    "lib/{tfm}/{assembly}",
                    new PatternDefinition("lib/{assembly}", defaults: new Dictionary <string, object>
                    {
                        { "tfm", new NuGetFramework(FrameworkConstants.FrameworkIdentifiers.Net, FrameworkConstants.EmptyVersion) }
                    })
                });

                CompileAssemblies = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    "ref/{tfm}/{any?}",
                },
                    pathPatterns: new PatternDefinition[]
                {
                    "ref/{tfm}/{assembly}",
                });

                NativeLibraries = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    "runtimes/{rid}/native/{any?}",
                    "native/{any?}",
                },
                    pathPatterns: new PatternDefinition[]
                {
                    "runtimes/{rid}/native/{any}",
                    "native/{any}",
                });

                ResourceAssemblies = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    "runtimes/{rid}/lib/{tfm}/{locale?}/{any?}",
                    "lib/{tfm}/{locale?}/{any?}"
                },
                    pathPatterns: new PatternDefinition[]
                {
                    "runtimes/{rid}/lib/{tfm}/{locale}/{resources}",
                    "lib/{tfm}/{locale}/{resources}"
                });

                MSBuildFiles = new PatternSet(
                    conventions.Properties,
                    groupPatterns: new PatternDefinition[]
                {
                    "build/{tfm}/{any?}",
                    new PatternDefinition("build/{any?}", defaults: new Dictionary <string, object>
                    {
                        { "tfm", new NuGetFramework(FrameworkConstants.FrameworkIdentifiers.Net, FrameworkConstants.EmptyVersion) }
                    })
                },
                    pathPatterns: new PatternDefinition[]
                {
                    "build/{tfm}/{msbuild}",
                    new PatternDefinition("build/{msbuild}", defaults: new Dictionary <string, object>
                    {
                        { "tfm", new NuGetFramework(FrameworkConstants.FrameworkIdentifiers.Net, FrameworkConstants.EmptyVersion) }
                    })
                });
            }
 private static IEnumerable <ContentItemGroup> GetContentForPattern(ContentItemCollection collection, PatternSet pattern)
 {
     return(collection.FindItemGroups(pattern));
 }
Пример #8
0
 void Hamming(PatternSet ps, double[] vector)
 {
 }
Пример #9
0
 void Habb(PatternSet ps, double[] vector)
 {
 }