diff -r 000000000000 -r 818e61de6cd1 crashanalysercmd/PerfToolsSharedLibraries/Engine/SymBuildParsingLib/Common/Objects/SymIncludeDefinition.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymBuildParsingLib/Common/Objects/SymIncludeDefinition.cs Thu Feb 11 15:50:58 2010 +0200 @@ -0,0 +1,87 @@ +/* +* Copyright (c) 2004-2008 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +using System; +using System.IO; + +namespace SymBuildParsingLib.Common.Objects +{ + public class SymIncludeDefinition + { + #region Enumerations + public enum TType + { + ETypeUndefined = 0, + ETypeUser, + ETypeSystem + }; + #endregion + + #region Constructors & destructor + public SymIncludeDefinition() + { + } + + public SymIncludeDefinition( string aLocation ) + { + iLocation = aLocation; + } + + public SymIncludeDefinition( TType aType ) + { + iType = aType; + } + + public SymIncludeDefinition( TType aType, string aLocation ) + { + iType = aType; + iLocation = aLocation; + } + #endregion + + #region API + public void AdjustRelativeInclude( string aBasePath ) + { + bool isRooted = Path.IsPathRooted( Location ); + // + if ( isRooted == false ) + { + Location = Utils.SymFileSystemUtils.MergePaths( aBasePath, Location ); + } + } + #endregion + + #region Properties + public TType Type + { + get { return iType; } + set { iType = value; } + } + + public string Location + { + get { return iLocation; } + set { iLocation = value; } + } + #endregion + + #region Data members + private TType iType = TType.ETypeUndefined; + private string iLocation = String.Empty; + #endregion + } +}