A class encapsulating information and tasks around one Unreal plugin.
More...
|
| void | AddExplicitPluginFiles (IEnumerable< AbsolutePath > files) |
| | Add explicit plugin files to be listed later in FilterPlugin.ini.
|
| |
| void | AddExplicitPluginFiles (IEnumerable< RelativePath > pluginRelativePaths) |
| | Add explicit plugin files to be listed later in FilterPlugin.ini.
|
| |
| AbsolutePath | GetDistributionOutput (UnrealBuild build, PluginDistributionOptions? options=null) |
| | Gets the output folder for distribution.
|
| |
| AbsolutePath | GetBuildOutput (UnrealBuild build, PluginBuildOptions? options=null) |
| | Gets the output folder for packaging this plugin.
|
| |
| void | GenerateFilterPluginIni (UnrealBuild build) |
| | Generate the FilterPlugin.ini file after all components have submitted their explicit files.
|
| |
| IEnumerable< ImportedItem > AbsolutePath output | DistributeSource (UnrealBuild build, PluginDistributionOptions? options=null, bool pretend=false) |
| |
| AbsolutePath | BuildPlugin (UnrealBuild build, Func< UatConfig, UatConfig >? uatConfig=null, Func< UbtConfig, UbtConfig >? ubtConfig=null, PluginBuildOptions? buildOptions=null, PluginDistributionOptions? distOptions=null, Func< UnrealPlugin, PluginBuildArguments, PluginBuildArguments?>? dependencyHandler=null) |
| | Make a prebuilt release of this plugin for end-users. Globally set UAT and UBT arguments are used from the input UnrealBuild.
|
| |
|
| IEnumerable< ImportedItem > | result |
| | Create a copy of this plugin which can be distributed to other developers or other tools who shouldn't require extra non-unreal related steps to work with it.
|
| |
|
|
static string | RelativePathDistinction< T > (T path) |
| |
|
| AbsolutePath | PluginPath [get, private set] |
| | Path to the .uplugin file.
|
| |
| PluginDescriptor | Descriptor [get, private set] |
| | "Immutable" C# representation of the uplugin file
|
| |
| AbsolutePath | Folder [get] |
| | Path to folder containing the .uplugin file.
|
| |
| AbsolutePath | ConfigFolder [get] |
| |
| AbsolutePath | FilterPluginIni [get] |
| |
| string | Name [get] |
| | Short name of the plugin.
|
| |
| Version | Version [get, set] |
| | Semantic version of the plugin. Parsed from the uplugin file. If set, it will modify the .uplugin file as well.
|
| |
| IEnumerable< AbsolutePath > | ExplicitPluginFiles [get] |
| | Return list of files which may need extra mention for Unreal/Epic tools. This is also usually the contents of FilterPlugin.ini.
|
| |
| RelativePath | _defaultDistSubdir [get] |
| |
| RelativePath | _defaultBuildSubdir [get] |
| |
A class encapsulating information and tasks around one Unreal plugin.
Definition at line 119 of file UnrealPlugin.cs.
◆ UnrealPlugin()
| Nuke.Unreal.Plugins.UnrealPlugin.UnrealPlugin |
( |
AbsolutePath | uplugin | ) |
|
|
package |
◆ AddExplicitPluginFiles() [1/2]
| void Nuke.Unreal.Plugins.UnrealPlugin.AddExplicitPluginFiles |
( |
IEnumerable< AbsolutePath > | files | ) |
|
Add explicit plugin files to be listed later in FilterPlugin.ini.
- Parameters
-
| files | Absolute paths to the files. Relative paths will be calculated based on plugin root. |
◆ AddExplicitPluginFiles() [2/2]
| void Nuke.Unreal.Plugins.UnrealPlugin.AddExplicitPluginFiles |
( |
IEnumerable< RelativePath > | pluginRelativePaths | ) |
|
Add explicit plugin files to be listed later in FilterPlugin.ini.
◆ BuildPlugin()
Make a prebuilt release of this plugin for end-users. Globally set UAT and UBT arguments are used from the input UnrealBuild.
- Parameters
-
| build | |
| uatConfig | Configurator for UAT |
| ubtConfig | Configurator for UBT (only when UBT method is used) |
| buildOptions | Optional arguments for packaging |
| distOptions | Optional arguments for distribution |
| dependencyHandler | Customize the build option for plugin dependencies |
- Returns
- Output folder of the packaged plugin
Definition at line 497 of file UnrealPlugin.cs.
◆ DistributeSource()
| IEnumerable< ImportedItem > AbsolutePath output Nuke.Unreal.Plugins.UnrealPlugin.DistributeSource |
( |
UnrealBuild | build, |
|
|
PluginDistributionOptions? | options = null, |
|
|
bool | pretend = false ) |
◆ GenerateFilterPluginIni()
| void Nuke.Unreal.Plugins.UnrealPlugin.GenerateFilterPluginIni |
( |
UnrealBuild | build | ) |
|
Generate the FilterPlugin.ini file after all components have submitted their explicit files.
Definition at line 292 of file UnrealPlugin.cs.
◆ Get()
| static UnrealPlugin Nuke.Unreal.Plugins.UnrealPlugin.Get |
( |
AbsolutePath | from | ) |
|
|
static |
Get a PluginInfo instance from the path to its .uplugin file, or a file/folder belonging to that plugin (in its subtree of files and folders). If a PluginInfo doesn't exist yet, one will be created given that the associated plugin exists.
For example:
PluginInfo.Get(this.ScriptFolder());
Referring to non-existing plugins is a runtime error.
- Parameters
-
- Returns
Definition at line 144 of file UnrealPlugin.cs.
◆ GetBuildOutput()
Gets the output folder for packaging this plugin.
- Parameters
-
| build | |
| options | Optional argument to get the output from. If another functionality has cached this before, this is not needed. |
Definition at line 279 of file UnrealPlugin.cs.
◆ GetDistributionOutput()
Gets the output folder for distribution.
- Parameters
-
| build | |
| options | Optional argument to get the output from. If another functionality has cached this before, this is not needed. |
Definition at line 259 of file UnrealPlugin.cs.
◆ GetProjectPluginDependencies()
Get the project plugin dependencies of this plugin as UnrealPlugin objects.
- Parameters
-
- Returns
◆ InjectBinaryPlumbing()
◆ _buildOptionsCache
◆ _buildOutput
| AbsolutePath? Nuke.Unreal.Plugins.UnrealPlugin._buildOutput = null |
|
private |
◆ _distributionOptionsCache
◆ _explicitPluginFiles
| List<UnixRelativePath> Nuke.Unreal.Plugins.UnrealPlugin._explicitPluginFiles = [] |
|
private |
◆ _filterExportManifest
| readonly ExportManifest Nuke.Unreal.Plugins.UnrealPlugin._filterExportManifest |
|
staticprivate |
Initial value:= new()
{
Copy = { new() { File = "Config/**/*.ini" , Not = {"FilterPlugin.ini"}} },
Not = {
"PluginFiles.yml",
"*.nuke.cs",
"*.nuke.csx",
"Nuke.Targets",
".Nuke",
".git",
".gitignore",
".p4ignore",
},
Use = {
new() { File = "**/PluginFiles.yml" }
}
}
Definition at line 309 of file UnrealPlugin.cs.
◆ _versionCache
| Version? Nuke.Unreal.Plugins.UnrealPlugin._versionCache = null |
|
private |
◆ Instances
| readonly Dictionary<AbsolutePath, UnrealPlugin> Nuke.Unreal.Plugins.UnrealPlugin.Instances = [] |
|
static |
◆ result
| IEnumerable<ImportedItem> Nuke.Unreal.Plugins.UnrealPlugin.result |
Create a copy of this plugin which can be distributed to other developers or other tools who shouldn't require extra non-unreal related steps to work with it.
- Parameters
-
| build | |
| options | Optional arguments for distribution |
| pretend | Do not have side effects on files, just return a list of files which may be affected by this operation. |
- Returns
-
result: List of files which has been copied
-
output: Output folder of distribution
Definition at line 408 of file UnrealPlugin.cs.
◆ _defaultBuildSubdir
| RelativePath Nuke.Unreal.Plugins.UnrealPlugin._defaultBuildSubdir |
|
getprivate |
◆ _defaultDistSubdir
| RelativePath Nuke.Unreal.Plugins.UnrealPlugin._defaultDistSubdir |
|
getprivate |
◆ ConfigFolder
| AbsolutePath Nuke.Unreal.Plugins.UnrealPlugin.ConfigFolder |
|
get |
◆ Descriptor
"Immutable" C# representation of the uplugin file
Definition at line 182 of file UnrealPlugin.cs.
◆ ExplicitPluginFiles
| IEnumerable<AbsolutePath> Nuke.Unreal.Plugins.UnrealPlugin.ExplicitPluginFiles |
|
get |
Return list of files which may need extra mention for Unreal/Epic tools. This is also usually the contents of FilterPlugin.ini.
Definition at line 224 of file UnrealPlugin.cs.
◆ FilterPluginIni
| AbsolutePath Nuke.Unreal.Plugins.UnrealPlugin.FilterPluginIni |
|
get |
◆ Folder
| AbsolutePath Nuke.Unreal.Plugins.UnrealPlugin.Folder |
|
get |
Path to folder containing the .uplugin file.
Definition at line 187 of file UnrealPlugin.cs.
◆ Name
| string Nuke.Unreal.Plugins.UnrealPlugin.Name |
|
get |
◆ PluginPath
| AbsolutePath Nuke.Unreal.Plugins.UnrealPlugin.PluginPath |
|
getprivate set |
◆ Version
| Version Nuke.Unreal.Plugins.UnrealPlugin.Version |
|
getset |
Semantic version of the plugin. Parsed from the uplugin file. If set, it will modify the .uplugin file as well.
Definition at line 203 of file UnrealPlugin.cs.
The documentation for this class was generated from the following file:
- /home/runner/work/Nuke.Unreal/Nuke.Unreal/src/Nuke.Unreal/Plugins/UnrealPlugin.cs