Exemple #1
0
        public int GetRootScope([MarshalAs(UnmanagedType.Interface)] out ISymUnmanagedScope scope)
        {
            if (_lazyRootScopeData == null)
            {
                _lazyRootScopeData = new RootScopeData(this);
            }

            // SymReader always creates a new scope instance
            scope = new SymScope(_lazyRootScopeData);
            return(HResult.S_OK);
        }
Exemple #2
0
        public int GetChildren(
            int bufferLength,
            out int count,
            [In, MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 0), Out]ISymUnmanagedScope[] children)
        {
            var childrenData = _data.GetChildren();

            int i = 0;
            foreach (var childData in childrenData)
            {
                if (i >= bufferLength)
                {
                    break;
                }

                children[i++] = new SymScope(childData);
            }

            count = (bufferLength == 0) ? childrenData.Length : i;
            return HResult.S_OK;
        }
Exemple #3
0
        public int GetChildren(
            int bufferLength,
            out int count,
            [In, MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 0), Out] ISymUnmanagedScope[] children)
        {
            var childrenData = _data.GetChildren();

            int i = 0;

            foreach (var childData in childrenData)
            {
                if (i >= bufferLength)
                {
                    break;
                }

                children[i++] = new SymScope(childData);
            }

            count = (bufferLength == 0) ? childrenData.Length : i;
            return(HResult.S_OK);
        }
Exemple #4
0
 public int GetRootScope([MarshalAs(UnmanagedType.Interface)] out ISymUnmanagedScope scope)
 {
     // SymReader always creates a new scope instance
     scope = new SymScope(GetRootScopeData());
     return(HResult.S_OK);
 }