コード例 #1
0
        } // GetStringArrayFromPtrLA(pointer, nLength)

        /// <summary>
        /// Get string from ptr
        /// </summary>
        internal static string GetStringFromPtr(IntPtr pointer, int nLength)
        {
            string sResult = Marshal.PtrToStringAnsi(pointer, nLength);

            StructAnalysis.FreeVector(pointer);
            return(sResult);
        } // GetStringFromPtr(pointer, nLength)
コード例 #2
0
        } // GetDoubleMatrixFromPtrLA(pointer, nRows, nCols)

        /// <summary>
        /// Get int array from ptr
        /// </summary>
        internal static int[] GetIntArrayFromPtr(IntPtr pointer, int nLength)
        {
            int[] oResult = new int[nLength];
            Marshal.Copy(pointer, oResult, 0, nLength);
            StructAnalysis.FreeVector(pointer);
            return(oResult);
        } // GetIntArrayFromPtr(pointer, nLength)
コード例 #3
0
        } // GetIntArrayFromPtr(pointer, nLength)

        /// <summary>
        /// Get int matrix from ptr
        /// </summary>
        internal static int[][] GetIntMatrixFromPtr(IntPtr pointer, int nRows, int nCols)
        {
            IntPtr[] rawRows = new IntPtr[nRows];
            int[][]  oResult = new int[nRows][];
            Marshal.Copy(pointer, rawRows, 0, nRows);
            for (int i = 0; i < nRows; i++)
            {
                oResult[i] = new int[nCols];
                Marshal.Copy(rawRows[i], oResult[i], 0, nCols);
            } // for (int)
            StructAnalysis.FreeMatrix(pointer, nRows);
            return(oResult);
        } // GetIntMatrixFromPtr(pointer, nRows, nCols)
コード例 #4
0
        } // GetIntMatrixFromPtr(pointer, nRows, nCols)

        /// <summary>
        /// Get string array from ptr
        /// </summary>
        internal static string[] GetStringArrayFromPtr(IntPtr pointer, int nLength)
        {
            IntPtr[] rawRows = new IntPtr[nLength];
            string[] oResult = new string[nLength];
            Marshal.Copy(pointer, rawRows, 0, nLength);

            for (int i = 0; i < nLength; i++)
            {
                oResult[i] = Marshal.PtrToStringAnsi(rawRows[i]);
            } // for (int)

            StructAnalysis.FreeMatrix(pointer, nLength);
            return(oResult);
        } // GetStringArrayFromPtr(pointer, nLength)