#region File Description
//-----------------------------------------------------------------------------
// CustomProcessorContext.cs
//
// Microsoft XNA Community Game Platform
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
#endregion
#region Using Statements
using System;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Content.Pipeline;
#endregion
namespace CompileEffect
{
///
/// Custom context object for running Content Pipeline processors.
///
class CustomProcessorContext : ContentProcessorContext
{
///
/// Constructor.
///
public CustomProcessorContext(TargetPlatform targetPlatform, GraphicsProfile targetProfile, ContentBuildLogger logger)
{
this.targetPlatform = targetPlatform;
this.targetProfile = targetProfile;
this.logger = logger;
}
///
/// Gets the build target platform.
///
public override TargetPlatform TargetPlatform
{
get { return targetPlatform; }
}
TargetPlatform targetPlatform;
///
/// Gets the build target profile.
///
public override GraphicsProfile TargetProfile
{
get { return targetProfile; }
}
GraphicsProfile targetProfile;
///
/// Gets a logger for reporting content build messages and warnings.
///
public override ContentBuildLogger Logger
{
get { return logger; }
}
ContentBuildLogger logger;
///
/// Gets the current build configuration (Debug, Release, etc).
///
public override string BuildConfiguration
{
get { return string.Empty; }
}
///
/// Gets the intermediate directory for the current content build.
///
public override string IntermediateDirectory
{
get { return string.Empty; }
}
///
/// Gets the final output directory for the current content build.
///
public override string OutputDirectory
{
get { return string.Empty; }
}
///
/// Gets the final output filename for the asset currently being built.
///
public override string OutputFilename
{
get { return string.Empty; }
}
///
/// Dictionary can be used to pass custom parameter data into the processor.
///
public override OpaqueDataDictionary Parameters
{
get { return parameters; }
}
OpaqueDataDictionary parameters = new OpaqueDataDictionary();
///
/// Records any additional input files that were read by the processor.
///
public override void AddDependency(string filename)
{
}
///
/// Records any additional output files that were written by the processor.
///
public override void AddOutputFile(string filename)
{
}
///
/// Asks the Content Pipeline to call into a different processor,
/// converting an object in memory to a different format.
///
public override TOutput Convert(TInput input, string processorName, OpaqueDataDictionary processorParameters)
{
throw new NotImplementedException();
}
///
/// Asks the Content Pipeline to call into a different importer and processor,
/// reading from a source asset file and returning an object in memory.
///
public override TOutput BuildAndLoadAsset(ExternalReference sourceAsset, string processorName, OpaqueDataDictionary processorParameters, string importerName)
{
throw new NotImplementedException();
}
///
/// Asks the Content Pipeline to call into a different importer and processor, building
/// a source asset file into .xnb format, and returning a reference to the output .xnb.
///
public override ExternalReference BuildAsset(ExternalReference sourceAsset, string processorName, OpaqueDataDictionary processorParameters, string importerName, string assetName)
{
throw new NotImplementedException();
}
}
}