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 (IUnrealBuild build, PluginDistributionOptions? options=null) |
| | Gets the output folder for distribution.
|
| |
| AbsolutePath | GetBuildOutput (IUnrealBuild build, PluginBuildOptions? options=null) |
| | Gets the output folder for packaging this plugin.
|
| |
| void | GenerateFilterPluginIni (IUnrealBuild build) |
| | Generate the FilterPlugin.ini file after all components have submitted their explicit files.
|
| |
| IEnumerable< ImportedItem > AbsolutePath output | DistributeSource (IUnrealBuild build, PluginDistributionOptions? options=null, bool pretend=false) |
| |
| AbsolutePath | BuildPlugin (IUnrealBuild 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 IUnrealBuild.
|
| |
|
| 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 121 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 IUnrealBuild.
- 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 499 of file UnrealPlugin.cs.
◆ DistributeSource()
| IEnumerable< ImportedItem > AbsolutePath output Nuke.Unreal.Plugins.UnrealPlugin.DistributeSource |
( |
IUnrealBuild | build, |
|
|
PluginDistributionOptions? | options = null, |
|
|
bool | pretend = false ) |
◆ GenerateFilterPluginIni()
| void Nuke.Unreal.Plugins.UnrealPlugin.GenerateFilterPluginIni |
( |
IUnrealBuild | build | ) |
|
Generate the FilterPlugin.ini file after all components have submitted their explicit files.
Definition at line 294 of file UnrealPlugin.cs.
◆ Get()
| static UnrealPlugin Nuke.Unreal.Plugins.UnrealPlugin.Get |
( |
AbsolutePath | from | ) |
|
|
static |
Get a UnrealPlugin 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 UnrealPlugin doesn't exist yet, one will be created given that the associated plugin exists.
For example:
A class encapsulating information and tasks around one Unreal plugin.
static UnrealPlugin Get(AbsolutePath from)
Referring to non-existing plugins is a runtime error.
- Parameters
-
- Returns
Definition at line 146 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 281 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 261 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 311 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 410 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 184 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 226 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 189 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 205 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