5 using System.Threading;
7 using SiliconStudio.Core.Mathematics;
8 using SiliconStudio.Core.Storage;
10 namespace SiliconStudio.Assets.Compiler
17 private readonly
object thumbnailCounterLock =
new object();
24 ThumbnailResolution = 128 * Int2.One;
30 public Int2 ThumbnailResolution {
get;
private set; }
36 public bool ShouldNotifyThumbnailBuilt {
get {
return ThumbnailBuilt != null; } }
60 Monitor.Enter(thumbnailCounterLock);
61 var handler = ThumbnailBuilt;
67 AssetId = assetItem.Id,
68 Url = assetItem.Location,
70 ThumbnailChanged = changed
73 Monitor.Exit(thumbnailCounterLock);
78 thumbnailBuiltArgs.ThumbnailStream = thumbnailStream;
79 thumbnailBuiltArgs.ThumbnailId = thumbnailHash;
81 else if (BuildFailedThumbnail != null)
83 thumbnailBuiltArgs.ThumbnailStream =
new MemoryStream(BuildFailedThumbnail);
85 handler(assetItem, thumbnailBuiltArgs);
90 if (Monitor.IsEntered(thumbnailCounterLock))
91 Monitor.Exit(thumbnailCounterLock);
EventHandler< ThumbnailBuiltEventArgs > ThumbnailBuilt
The event raised when a thumbnail has finished to build.
An asset item part of a Package accessible through SiliconStudio.Assets.Package.Assets.
Byte[] BuildFailedThumbnail
The array of data representing the thumbnail to display when a thumbnail build failed.
The context used when compiling an asset in a Package.
ThumbnailCompilerContext()
Initializes a new instance of the ThumbnailCompilerContext class.
A hash to uniquely identify data.
Represents a three dimensional mathematical vector.
An event arguments class containing information about a thumbnail creation.
ThumbnailBuildResult
This enum describes the result of a thumbnail build operation.
The context used when building the thumbnail of an asset in a Package.