public void BuildAllMethod() { try { if (PlatformInitialized && OptionalUseGPU) { #region BuildProgram Assembly asm = Assembly; if (asm == null) { asm = Assembly.GetExecutingAssembly(); } var types = asm.GetTypes(); #region SharedMethod string sharedmethod = string.Empty; foreach (var item in types) { if (SharedNameSpaceList.Contains(item.Namespace)) { var source = (Function.SourceCode)Activator.CreateInstance(item); sharedmethod += source.Source + "\n"; Build(source.Name, source.Source); } } #endregion SharedMethodSource = sharedmethod; List <Function.FunctionBase> fList = new List <Function.FunctionBase>(); foreach (var item in types) { if (NameSpaceList.Contains(item.Namespace) && !item.FullName.Contains(@"+<>")) { fList.Add((Function.FunctionBase)Activator.CreateInstance(item)); } } // FunctionBase作成時にビルドを実行するため、以下は不要となった //foreach (var item in fList) //{ // if (item.IsGpuProcess) // { // var sourceList = item.GetSourceList(); // foreach (var source in sourceList) // { // //Console.WriteLine(sharedmethod + source.Item2 + "\n"); // Build(source.Item1, sharedmethod + source.Item2); // } // } //} #endregion } } catch (Exception ex) { State.ExceptionState(ex); } }
/// <summary> /// Load an we app /// </summary> /// <param name="url">The root url for the program</param> public void OpenApp(string url) { //get code form server var s = Wc.DownloadString(url + "Main.py"); var sh = Wc.DownloadString(url + "Main.html"); MainCode = s; MainHtml = sh; NameSpaceList.Add("System.Windows.Forms"); }
public void BuildAllMethod() { if (PlatformInitialized && OptionalUseGPU) { #region BuildProgram Assembly asm = Assembly; if (asm == null) { asm = Assembly.GetExecutingAssembly(); } var types = asm.GetTypes(); string sharedmethod = string.Empty; #region SharedMethod foreach (var item in types) { if (SharedNameSpaceList.Contains(item.Namespace)) { var source = (Function.SourceCode)Activator.CreateInstance(item); sharedmethod += source.Source + "\n"; Build(source.Name, source.Source); } } #endregion List <Function.FunctionBase> fList = new List <Function.FunctionBase>(); foreach (var item in types) { if (NameSpaceList.Contains(item.Namespace)) { fList.Add((Function.FunctionBase)Activator.CreateInstance(item)); } } foreach (var item in fList) { if (item.IsGpuProcess) { var sourceList = item.GetSourceList(); foreach (var source in sourceList) { //Console.WriteLine(sharedmethod + source.Item2 + "\n"); Build(source.Item1, sharedmethod + source.Item2); } } } #endregion } }