示例#1
0
        public static FrameDebuggerEventData GetCurrentData()
        {
            FrameDebuggerEventData    data = null;
            ReflectionClassWithObject obj  = null;
            int currentPos = GetCurrentFramePosition() - 1;

            if (GetFrameEventData(currentPos, out obj))
            {
                data = new FrameDebuggerEventData();
                obj.CopyFieldsToObjectByVarName <FrameDebuggerEventData>(ref data);
            }
            return(data);
        }
示例#2
0
        private static bool GetFrameEventData(int frameIdx, out ReflectionClassWithObject ret)
        {
            if (frameIdx < 0)
            {
                ret = null;
                return(false);
            }
            object[] args = null;

            args = new object[] { frameIdx, frameEventData.CreateInstance() };
            bool result = frameDebuggeUtil.CallMethod <bool>("GetFrameEventData", null, args);

            if (result)
            {
                ret = new ReflectionClassWithObject(frameEventData, args[1]);
            }
            else
            {
                ret = null;
            }
            return(result);
        }