79 lines
2.0 KiB
C#
Raw Permalink Normal View History

#region Using Statements
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
#endregion
// 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.Framework.Content.Pipeline
{
[Serializable]
public class ContentIdentity
{
public ContentIdentity()
{
}
public ContentIdentity(string sourceFilename)
{
SourceFilename = sourceFilename;
}
public ContentIdentity(string sourceFilename, string sourceTool)
{
SourceFilename = sourceFilename;
SourceTool = sourceTool;
}
public ContentIdentity(string sourceFilename, string sourceTool, string fragmentIdentifier)
{
SourceFilename = sourceFilename;
SourceTool = sourceTool;
FragmentIdentifier = fragmentIdentifier;
}
[ContentSerializer(Optional = true)]
public string SourceFilename
{
get;
set;
}
[ContentSerializer(Optional = true)]
public string SourceTool
{
get;
set;
}
[ContentSerializer(Optional = true)]
public string FragmentIdentifier
{
get;
set;
}
public bool TryGetLineAndColumn(out int line, out int column)
{
if (FragmentIdentifier != null)
{
var text = this.FragmentIdentifier.Split(',');
if (text.Length == 2 && int.TryParse(text[0], out line) && int.TryParse(text[1], out column))
{
return true;
}
}
line = 0;
column = 0;
return false;
}
}
}