4 using System.Collections.Generic;
7 using SiliconStudio.Core;
8 using SiliconStudio.Core.Diagnostics;
10 namespace SiliconStudio.Assets.CompilerApp
20 public string ProjectConfiguration {
get; set; }
21 public string OutputDirectory {
get; set; }
22 public string BuildDirectory {
get; set; }
23 public string SolutionFile {
get; set; }
24 public Guid PackageId {
get; set; }
27 public string PackageFile {
get; set; }
28 public List<string> LogPipeNames =
new List<string>();
29 public List<string> MonitorPipeNames =
new List<string>();
33 public Dictionary<string, string> Properties =
new Dictionary<string, string>();
37 public int ThreadCount = Environment.ProcessorCount;
43 if (logger == null)
throw new ArgumentNullException(
"logger");
52 get {
return Debug ? LogMessageType.Debug : (
Verbose ? LogMessageType.Verbose : LogMessageType.Info); }
61 return !string.IsNullOrEmpty(SlavePipe) && !
string.IsNullOrEmpty(BuildDirectory);
72 if (
string.IsNullOrWhiteSpace(BuildDirectory))
73 throw new ArgumentException(
"This tool requires a build path.",
"build-path");
77 BuildDirectory = Path.GetFullPath(BuildDirectory);
81 throw new ArgumentException(
"The provided path is not a valid path name.",
"build-path");
84 if (SlavePipe == null)
86 if (
string.IsNullOrWhiteSpace(BuildProfile))
87 throw new ArgumentException(
"This tool requires a selected profile.",
"profile");
89 if (
string.IsNullOrWhiteSpace(PackageFile))
91 if (
string.IsNullOrWhiteSpace(SolutionFile) || PackageId == Guid.Empty)
93 throw new ArgumentException(
"This tool requires either a --package-file, or a --solution-file and --package-id.",
"inputPackageFile");
96 else if (!
File.Exists(PackageFile))
98 throw new ArgumentException(
"Package file [{0}] doesn't exist".ToFormat(PackageFile),
"inputPackageFile");
107 case PlatformType.Windows:
108 case PlatformType.WindowsPhone:
109 case PlatformType.WindowsStore:
110 return Paradox.Graphics.GraphicsPlatform.Direct3D11;
111 case PlatformType.Android:
112 case PlatformType.iOS:
113 return Paradox.Graphics.GraphicsPlatform.OpenGLES;
115 throw new ArgumentOutOfRangeException();
Paradox.Graphics.GraphicsPlatform GetDefaultGraphicsPlatform()
PlatformType
Describes the platform operating system.
A debug message (level 0).
GraphicsPlatform
The graphics platform.
void ValidateOptions()
Ensure every parameter is correct for a master execution. Throw an OptionException if a parameter is ...
A verbose message (level 1).
Base implementation for ILogger.
LogMessageType
Type of a LogMessage.
Dictionary< string, string > ExtraCompileProperties
bool IsValidForSlave()
This function indicate if the current builder options mean to execute a slave session ...
PackageBuilderOptions(Logger logger)