public LoadImageStateData ( ) : |
||
return |
public ImageStateData LoadImageStateData()
{
if (!File.Exists(this.filenameResolver.MasterImageInfoFilename))
{
throw new FileNotFoundException(String.Format("Image State Data file {0} does not exist", this.filenameResolver.MasterImageInfoFilename));
}
var dataList = new List<int>();
using (var stream = File.OpenRead(this.filenameResolver.MasterImageInfoFilename))
{
for (short count = 0; count < 6; count++)
{
dataList.Add(
stream.ReadByte() |
(stream.ReadByte()) << 8 |
(stream.ReadByte()) << 16 |
(stream.ReadByte()) << 24
);
}
}
return new ImageStateData(
dataList[0],
dataList[1],
dataList[2],
dataList[3],
dataList[4],
dataList[5]);
}
/// <summary> /// Playback an image. /// </summary> private void PlaybackImage(Guid pictureId) { var filenameResolver = this.CreateFilenameResolver(pictureId); var pictureIOManager = new PictureIOManager(filenameResolver); ImageStateData imageStateData = pictureIOManager.LoadImageStateData(); this.SetOrientationForImage(imageStateData); var canvasPlayback = new CanvasPlayback(filenameResolver.MasterCanvasRecorderFilename(imageStateData.CurrentSavePoint)); this.SetOrientationForImage(imageStateData); // Simply instantiate the class derived from monogame:game and away we go... ToolboxLayoutDefinition layoutDefinition = imageStateData.Width > imageStateData.Height ? this.toolboxLayoutManager.PlaybackLandscapeToolboxLayout : this.toolboxLayoutManager.PlaybackPortraitToolboxLayout; this.playBackApp = new CanvasPlaybackApp(canvasPlayback, imageStateData, layoutDefinition, this.deviceScale); this.playBackApp.Exiting += CanvasPlaybackAppExiting; this.playBackApp.Run(); }