AvalonStudio.Toolchains.LocalGCC.STM32CPlusPlusProjectTemplate.Generate C# (CSharp) Method

Generate() public method

public Generate ( ISolution solution, string name ) : Task
solution ISolution
name string
return Task
		public override async Task<IProject> Generate(ISolution solution, string name)
		{
			var shell = IoC.Get<IShell>();
			var project = await base.Generate(solution, name);

			project.ToolChain = shell.ToolChains.FirstOrDefault(tc => tc is LocalGCCToolchain);

            project.ToolChain.ProvisionSettings(project);

			project.Debugger = shell.Debuggers.FirstOrDefault(db => db is LocalDebugAdaptor);

			var code = new StringBuilder();

			code.AppendLine("#include <stdio.h>");
			code.AppendLine();
			code.AppendLine("int main (void)");
			code.AppendLine("{");
			code.AppendLine("    printf(\"Hello World\");");
			code.AppendLine("    return 0;");
			code.AppendLine("}");
			code.AppendLine();

			await SourceFile.Create(project, "main.cpp", code.ToString());

			project.Save();

			return project;
		}
	}
STM32CPlusPlusProjectTemplate