//
//
//
//
// $Revision: 1965 $
//
using System;
namespace Debugger
{
///
/// Identifies frame on thread callstack
///
struct FrameID {
uint chainIndex;
uint frameIndex;
public uint ChainIndex {
get {
return chainIndex;
}
}
public uint FrameIndex {
get {
return frameIndex;
}
}
public FrameID(uint chainIndex, uint frameIndex)
{
this.chainIndex = chainIndex;
this.frameIndex = frameIndex;
}
public override int GetHashCode()
{
return chainIndex.GetHashCode() ^ frameIndex.GetHashCode();
}
public override bool Equals(object obj)
{
if (!(obj is FrameID)) return false;
FrameID myFrameID = (FrameID)obj;
return this.chainIndex == myFrameID.chainIndex && this.frameIndex == myFrameID.frameIndex;
}
public override string ToString()
{
return string.Format("{0},{1}", this.chainIndex, this.frameIndex);
}
}
}