122 lines
2.6 KiB
C#
122 lines
2.6 KiB
C#
using System;
|
|
using ANX.Framework;
|
|
using ANX.Framework.NonXNA;
|
|
using ANX.Framework.NonXNA.PlatformSystem;
|
|
using ANX.Framework.Storage;
|
|
using System.IO;
|
|
using ANX.Framework.Media;
|
|
using System.Collections.Generic;
|
|
|
|
// This file is part of the ANX.Framework created by the
|
|
// "ANX.Framework developer group" and released under the Ms-PL license.
|
|
// For details see: http://anxframework.codeplex.com/license
|
|
|
|
namespace ANX.PlatformSystem.Metro
|
|
{
|
|
public class MetroPlatformCreator : IPlatformSystemCreator
|
|
{
|
|
#region Public
|
|
public string Name
|
|
{
|
|
get
|
|
{
|
|
return "Platform.Metro";
|
|
}
|
|
}
|
|
|
|
public int Priority
|
|
{
|
|
get
|
|
{
|
|
return 100;
|
|
}
|
|
}
|
|
|
|
public bool IsSupported
|
|
{
|
|
get
|
|
{
|
|
return OSInformation.IsWindows;
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region RegisterCreator
|
|
public void RegisterCreator(AddInSystemFactory factory)
|
|
{
|
|
Logger.Info(
|
|
"adding Metro PlatformSystem creator to collection of AddInSystemFactory");
|
|
factory.AddCreator(this);
|
|
}
|
|
#endregion
|
|
|
|
#region Constructor
|
|
public MetroPlatformCreator()
|
|
{
|
|
}
|
|
#endregion
|
|
|
|
#region CreateGameHost
|
|
public GameHost CreateGameHost(Game game)
|
|
{
|
|
Logger.Info("creating Windows GameHost");
|
|
AddInSystemFactory.Instance.PreventSystemChange(AddInType.PlatformSystem);
|
|
return new WindowsGameHost(game);
|
|
}
|
|
#endregion
|
|
|
|
#region CreateStorageDevice
|
|
public INativeStorageDevice CreateStorageDevice(StorageDevice device,
|
|
PlayerIndex player, int sizeInBytes, int directoryCount)
|
|
{
|
|
return new MetroStorageDevice();
|
|
}
|
|
#endregion
|
|
|
|
#region CreateStorageContainer
|
|
public INativeStorageContainer CreateStorageContainer(StorageContainer container)
|
|
{
|
|
return new MetroStorageContainer();
|
|
}
|
|
#endregion
|
|
|
|
#region CreateTitleContainer
|
|
public INativeTitleContainer CreateTitleContainer()
|
|
{
|
|
return new MetroTitleContainer();
|
|
}
|
|
#endregion
|
|
|
|
#region CreateGameTimer
|
|
public INativeGameTimer CreateGameTimer()
|
|
{
|
|
return new MetroGameTimer();
|
|
}
|
|
#endregion
|
|
|
|
#region CreateContentManager
|
|
public INativeContentManager CreateContentManager()
|
|
{
|
|
return new MetroContentManager();
|
|
}
|
|
#endregion
|
|
|
|
#region IPlatformSystemCreator Member
|
|
public Stream OpenReadFilestream(string filepath)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
|
|
public INativeMediaLibrary CreateMediaPlayer()
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
|
|
public IList<MediaSource> GetAvailableMediaSources()
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
#endregion
|
|
}
|
|
}
|