Class AssetCompilerBase
Base implementation for IAssetCompiler suitable to compile a single type of Asset.
public abstract class AssetCompilerBase : IAssetCompiler
- Inheritance
-
AssetCompilerBase
- Implements
Properties
AlwaysCheckRuntimeTypes
public virtual bool AlwaysCheckRuntimeTypes { get; }
Property Value
Methods
GetAbsolutePath(AssetItem, UFile)
Returns the absolute path on the disk of an Stride.Core.IO.UFile that is relative to the asset location.
protected static UFile GetAbsolutePath(AssetItem assetItem, UFile relativePath)
Parameters
assetItemAssetItemThe asset on which is based the relative path.
relativePathUFileThe path relative to the asset path that must be converted to an absolute path.
Returns
- UFile
The absolute path on the disk of the
relativePathargument.
Exceptions
- ArgumentException
The
relativePathargument is a null or empty Stride.Core.IO.UFile.
GetInputFiles(AssetItem)
Enumerates all the dependencies required to compile this asset
public virtual IEnumerable<ObjectUrl> GetInputFiles(AssetItem assetItem)
Parameters
assetItemAssetItemThe asset for which dependencies are enumerated
Returns
- IEnumerable<ObjectUrl>
The dependencies
GetInputTypes(AssetItem)
Enumerates all the asset types required to compile this asset
public virtual IEnumerable<BuildDependencyInfo> GetInputTypes(AssetItem assetItem)
Parameters
assetItemAssetItemThe asset for which types are enumerated
Returns
- IEnumerable<BuildDependencyInfo>
The dependencies
GetInputTypesToExclude(AssetItem)
Enumerates all the asset types to exclude when compiling this asset
public virtual IEnumerable<Type> GetInputTypesToExclude(AssetItem assetItem)
Parameters
assetItemAssetItemThe asset for which types are enumerated
Returns
- IEnumerable<Type>
The types to exclude
Remarks
This method takes higher priority, it will exclude assets included with inclusion methods even in the same compiler
GetRuntimeTypes(AssetItem)
public virtual IEnumerable<Type> GetRuntimeTypes(AssetItem assetItem)
Parameters
assetItemAssetItem
Returns
Prepare(AssetCompilerContext, AssetItem)
Compiles a list of assets from the specified package.
public AssetCompilerResult Prepare(AssetCompilerContext context, AssetItem assetItem)
Parameters
contextAssetCompilerContextassetItemAssetItemThe asset reference.
Returns
- AssetCompilerResult
The result of the compilation.
Prepare(AssetCompilerContext, AssetItem, string, AssetCompilerResult)
Compiles the asset from the specified package.
protected abstract void Prepare(AssetCompilerContext context, AssetItem assetItem, string targetUrlInStorage, AssetCompilerResult result)
Parameters
contextAssetCompilerContextThe context to use to compile the asset.
assetItemAssetItemThe asset to compile
targetUrlInStoragestringThe absolute URL to the asset, relative to the storage.
resultAssetCompilerResultThe result where the commands and logs should be output.