?? matrix.h
字號:
*/
extern mxArray *mxCreateDoubleScalar(double value);
/*
* Create a 2-Dimensional sparse array.
*/
extern mxArray *mxCreateSparse(int m, int n, int nzmax, mxComplexity flag);
/*
* Create a 2-D sparse logical array
*/
extern mxArray *mxCreateSparseLogicalMatrix(int m, int n, int nzmax);
/*
* Copies characters from a MATLAB array to a char array
* nChars is the number of bytes in the output buffer
*/
extern void mxGetNChars(const mxArray *pa, char *buf, int nChars);
/*
* Converts a string array to a C-style string.
*/
extern int mxGetString(const mxArray *pa, char *buf, int buflen);
/*
* Create a NULL terminated C string from an mxArray of type mxCHAR_CLASS
* Supports multibyte character sets. The resulting string must be freed
* with mxFree. Returns NULL on out of memory or non-character arrays.
*/
extern char *mxArrayToString(const mxArray *pa);
/*
* Create a 1-by-n string array initialized to str.
*/
extern mxArray *mxCreateStringFromNChars(const char *str, int n);
/*
* Create a 1-by-n string array initialized to null terminated string
* where n is the length of the string.
*/
extern mxArray *mxCreateString(const char *str);
/*
* Create an N-Dimensional array to hold string data;
* initialize all elements to 0.
*/
extern mxArray *mxCreateCharArray(int ndim, const int *dims);
/*
* Create a string array initialized to the strings in str.
*/
extern mxArray *mxCreateCharMatrixFromStrings(int m, const char **str);
/*
* Create a 2-Dimensional cell array, with each cell initialized
* to NULL.
*/
extern mxArray *mxCreateCellMatrix(int m, int n);
/*
* Create an N-Dimensional cell array, with each cell initialized
* to NULL.
*/
extern mxArray *mxCreateCellArray(int ndim, const int *dims);
/*
* Create a 2-Dimensional structure array having the specified fields;
* initialize all values to NULL.
*/
extern mxArray *mxCreateStructMatrix(int m, int n, int nfields, const char **fieldnames);
/*
* Create an N-Dimensional structure array having the specified fields;
* initialize all values to NULL.
*/
extern mxArray *mxCreateStructArray(int ndim, const int *dims, int nfields,
const char **fieldnames);
/*
* Make a deep copy of an array, return a pointer to the copy.
*/
extern mxArray *mxDuplicateArray(const mxArray *in);
/*
* Set classname of an unvalidated object array. It is illegal to
* call this function on a previously validated object array.
* Return 0 for success, 1 for failure.
*/
extern int mxSetClassName(mxArray *pa, const char *classname);
/*
* Add a field to a structure array. Returns field number on success or -1
* if inputs are invalid or an out of memory condition occurs.
*/
extern int mxAddField(mxArray *pa, const char *fieldname);
/*
* Remove a field from a structure array. Does nothing if no such field exists.
* Does not destroy the field itself.
*/
extern void mxRemoveField(mxArray *pa, int field);
#define DEEP 0
#define SHALLOW 1
/*
* Only for JIT use.
*/
extern void mxResizeArray(mxArray* plhs, int nin, int* ldim);
#include <stdlib.h>
#include <stdlib.h>
#ifdef __cplusplus
} /* extern "C" */
#endif
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __WATCOMC__
#ifndef __cplusplus
#pragma aux mxGetEps value [8087];
#pragma aux mxGetInf value [8087];
#pragma aux mxGetNaN value [8087];
#endif
#endif
/*
* Function for obtaining MATLAB's concept of EPS
*/
extern double mxGetEps(void);
/*
* Function for obtaining MATLAB's concept of INF (Used in MEX-File callback).
*/
extern double mxGetInf(void);
/*
* Function for obtaining MATLAB's concept of NaN (Used in MEX-File callback).
*/
extern double mxGetNaN(void);
/*
* test for finiteness in a machine-independent manner
*/
extern bool mxIsFinite(
double x /* value to test */
);
/*
* test for infinity in a machine-independent manner
*/
extern bool mxIsInf(
double x /* value to test */
);
/*
* test for NaN in a machine-independent manner
*/
extern bool mxIsNaN(
double x /* value to test */
);
typedef void * (*calloc_proc)(size_t nmemb, size_t size);
typedef void (*free_proc)(void *ptr);
typedef void * (*malloc_proc)(size_t size);
typedef void * (*realloc_proc)(void *ptr, size_t size);
#if !defined(MATLAB_MEX_FILE)
/*
* Set the memory allocation functions used by the matrix library. You must
* supply calloc, realloc, free and malloc functions when using mxSetAllocFcns.
* NOTE: the free function MUST handle the case when the pointer to be freed
* is NULL. The default AllocFcns for the matrix library are based on the
* standard C library functions calloc, free, realloc, and malloc.
*/
extern void mxSetAllocFcns(
calloc_proc callocfcn,
free_proc freefcn,
realloc_proc reallocfcn,
malloc_proc mallocfcn
);
#endif
#define mxCreateFull() mxCreateFull_is_obsolete
#define mxIsFull() mxIsFull_is_obsolete
#define mxIsString() mxIsString_is_obsolete
#define mxFreeMatrix() mxFreeMatrix_is_obsolete
#define mxCreateScalarDouble(d) mxCreateDoubleScalar(d)
#if defined(V5_COMPAT)
/*
* NOTE: This function is obsolete and should no longer be used. Please
* use one of the following routines instead:
* mxCreateLogicalScalar
* mxCreateLogicalMatrix
* mxCreateLogicalArray
*
* Specify that the data in an array is to be treated as Boolean data.
*/
extern void mxSetLogical(mxArray *pa);
/*
* NOTE: This function is obsolete and should no longer be used.
*
* Specify that the data in an array is to be treated as numerical
* (as opposed to Boolean) data.
*/
extern void mxClearLogical(mxArray *pa);
#else
#define mxSetLogical() mxSetLogical_is_obsolete
#define mxClearLogical() mxClearLogical_is_obsolete
#endif /* defined(V5_COMPAT) */
#if defined(V5_COMPAT)
/*
* Get pointer to array name.
*/
extern const char *mxGetName(
const mxArray *pa /* pointer to array */
);
/*
* Set array name. This routine copies the string pointed to by s
* into the mxMAXNAM length character name field.
*/
extern void mxSetName(
mxArray *pa, /* pointer to array */
const char *s /* string to copy into name */
);
#else
#define mxGetName() mxGetName_is_obsolete
#define mxSetName() mxSetName_is_obsolete
#endif /* defined(V5_COMPAT) */
#include <stdlib.h>
#include <stdlib.h>
#ifdef __cplusplus
} /* extern "C" */
#endif
#include <stdlib.h>
#ifdef __cplusplus
extern "C" {
#endif
/*
* Inc reference count for an array
*/
extern void mxIncRefCount(mxArray *pa);
#if defined(ARRAY_ACCESS_INLINING)
#define mxIncRefCount(pa) ((pa)->reference_count++)
#endif /* defined(ARRAY_ACCESS_INLINING) */
/*
* Increment the reference count for an array.
*/
extern int mxIncrementRefCount(
mxArray *pa /* pointer to array */
);
/*
* Decrement the reference count for an array.
*/
extern int mxDecrementRefCount(
mxArray *pa /* pointer to array */
);
#ifdef __cplusplus
} /* extern "C" */
#endif
/* $Revision: 1.14 $ */
#ifdef ARGCHECK
#include "mwdebug.h" /* Prototype _d versions of API functions */
#define mxAddField(pa, fieldname) mxAddField_d(pa, fieldname, __FILE__, __LINE__)
#define mxArrayToString(pa) mxArrayToString_d(pa, __FILE__, __LINE__)
#define mxCalcSingleSubscript(pa, nsubs, subs) mxCalcSingleSubscript_d(pa, nsubs, subs, __FILE__, __LINE__)
#define mxCalloc(nelems, size) mxCalloc_d(nelems, size, __FILE__, __LINE__)
#define mxCreateCellArray(ndim, dims) mxCreateCellArray_d(ndim, dims, __FILE__, __LINE__)
#define mxCreateCellMatrix(m, n) mxCreateCellMatrix_d(m, n, __FILE__, __LINE__)
#define mxCreateCharArray(ndim, dims) mxCreateCharArray_d(ndim, dims, __FILE__, __LINE__)
#define mxCreateCharMatrixFromStrings(m, strings) mxCreateCharMatrixFromStrings_d(m, strings, __FILE__, __LINE__)
#define mxCreateDoubleMatrix(m, n, cplxflag) mxCreateDoubleMatrix_d(m, n, cplxflag, __FILE__, __LINE__)
#define mxCreateDoubleScalar(value) mxCreateDoubleScalar_d(value, __FILE__, __LINE__)
#define mxCreateLogicalArray(ndim, dims) mxCreateLogicalArray_d(ndim, dims, __FILE__, __LINE__)
#define mxCreateLogicalMatrix(m, n) mxCreateLogicalMatrix_d(m, n, __FILE__, __LINE__)
#define mxCreateLogicalScalar(value) mxCreateLogicalScalar_d(value, __FILE__, __LINE__)
#define mxCreateNumericArray(ndim, dims, classname, cplxflag) mxCreateNumericArray_d(ndim, dims, classname, cplxflag, __FILE__, __LINE__)
#define mxCreateNumericMatrix(m, n, classid, cmplx_flag) mxCreateNumericMatrix_d(m, n, classid, cmplx_flag, __FILE__, __LINE__)
#define mxCreateSparse(m, n, nzmax, cplxflag) mxCreateSparse_d(m, n, nzmax, cplxflag, __FILE__, __LINE__)
#define mxCreateSparseLogicalMatrix(m, n, nzmax) mxCreateSparseLogicalMatrix_d(m, n, nzmax, __FILE__, __LINE__)
#define mxCreateString(string) mxCreateString_d(string, __FILE__, __LINE__)
#define mxCreateStructArray(ndim, dims, nfields, fieldnames) mxCreateStructArray_d(ndim, dims, nfields, fieldnames, __FILE__, __LINE__)
#define mxCreateStructMatrix(m, n, nfields, fieldnames) mxCreateStructMatrix_d(m, n, nfields, fieldnames, __FILE__, __LINE__)
#define mxDestroyArray(pa) mxDestroyArray_d(pa, __FILE__, __LINE__)
#define mxDuplicateArray(pa) mxDuplicateArray_d(pa, __FILE__, __LINE__)
#define mxFree(pm) mxFree_d(pm, __FILE__, __LINE__)
#define mxGetChars(pa) mxGetChars_d(pa, __FILE__, __LINE__)
#define mxGetCell(pa, index) mxGetCell_d(pa, index, __FILE__, __LINE__)
#define mxGetClassID(pa) mxGetClassID_d(pa, __FILE__, __LINE__)
#define mxGetClassName(pa) mxGetClassName_d(pa, __FILE__, __LINE__)
#define mxGetData(pa) mxGetData_d(pa, __FILE__, __LINE__)
#define mxGetDimensions(pa) mxGetDimensions_d(pa, __FILE__, __LINE__)
#define mxGetElementSize(pa) mxGetElementSize_d(pa, __FILE__, __LINE__)
#define mxGetField(pa, index, fieldname) mxGetField_d(pa, index, fieldname, __FILE__, __LINE__)
#define mxGetFieldByNumber(pa, index, fieldnum) mxGetFieldByNumber_d(pa, index, fieldnum, __FILE__, __LINE__)
#define mxGetFieldNameByNumber(pa, fieldnum) mxGetFieldNameByNumber_d(pa, fieldnum, __FILE__, __LINE__)
#define mxGetFieldNumber(pa, fieldname) mxGetFieldNumber_d(pa, fieldname, __FILE__, __LINE__)
#define mxGetImagData(pa) mxGetImagData_d(pa, __FILE__, __LINE__)
#define mxGetIr(pa) mxGetIr_d(pa, __FILE__, __LINE__)
#define mxGetJc(pa) mxGetJc_d(pa, __FILE__, __LINE__)
#define mxGetLogicals(pa) mxGetLogicals_d(pa, __FILE__, __LINE__)
#define mxGetNumberOfDimensions(pa) mxGetNumberOfDimensions_d(pa, __FILE__, __LINE__)
#define mxGetNumberOfElements(pa) mxGetNumberOfElements_d(pa, __FILE__, __LINE__)
#define mxGetNumberOfFields(pa) mxGetNumberOfFields_d(pa, __FILE__, __LINE__)
#define mxGetNzmax(pa) mxGetNzmax_d(pa, __FILE__, __LINE__)
#define mxGetM(pa) mxGetM_d(pa, __FILE__, __LINE__)
#define mxGetN(pa) mxGetN_d(pa, __FILE__, __LINE__)
#define mxGetPi(pa) mxGetPi_d(pa, __FILE__, __LINE__)
#define mxGetPr(pa) mxGetPr_d(pa, __FILE__, __LINE__)
#define mxGetScalar(pa) mxGetScalar_d(pa, __FILE__, __LINE__)
#define mxGetString(pa, buffer, buflen) mxGetString_d(pa, buffer, buflen, __FILE__, __LINE__)
#define mxIsCell(pa) mxIsCell_d(pa, __FILE__, __LINE__)
#define mxIsChar(pa) mxIsChar_d(pa, __FILE__, __LINE__)
#define mxIsClass(pa, classname) mxIsClass_d(pa, classname, __FILE__, __LINE__)
#define mxIsComplex(pa) mxIsComplex_d(pa, __FILE__, __LINE__)
#define mxIsDouble(pa) mxIsDouble_d(pa, __FILE__, __LINE__)
#define mxIsEmpty(pa) mxIsEmpty_d(pa, __FILE__, __LINE__)
#define mxIsFromGlobalWS(pa) mxIsFromGlobalWS_d(pa, __FILE__, __LINE__)
#define mxIsInt8(pa) mxIsInt8_d(pa, __FILE__, __LINE__)
#define mxIsInt16(pa) mxIsInt16_d(pa, __FILE__, __LINE__)
#define mxIsInt32(pa) mxIsInt32_d(pa, __FILE__, __LINE__)
#define mxIsLogical(pa) mxIsLogical_d(pa, __FILE__, __LINE__)
#define mxIsNumeric(pa) mxIsNumeric_d(pa, __FILE__, __LINE__)
#define mxIsOpaque(pa) mxIsOpaque_d(pa, __FILE__, __LINE__)
#define mxIsObject(pa) mxIsObject_d(pa, __FILE__, __LINE__)
#define mxIsSingle(pa) mxIsSingle_d(pa, __FILE__, __LINE__)
#define mxIsSparse(pa) mxIsSparse_d(pa, __FILE__, __LINE__)
#define mxIsStruct(pa) mxIsStruct_d(pa, __FILE__, __LINE__)
#define mxIsUint8(pa) mxIsUint8_d(pa, __FILE__, __LINE__)
#define mxIsUint16(pa) mxIsUint16_d(pa, __FILE__, __LINE__)
#define mxIsUint32(pa) mxIsUint32_d(pa, __FILE__, __LINE__)
#define mxIsUint64(pa) mxIsUint64_d(pa, __FILE__, __LINE__)
#define mxMalloc(n) mxMalloc(n) mxMalloc_d(n, __FILE__, __LINE__)
#define mxRealloc(pm, nelems) mxRealloc_d(pm, nelems, __FILE__, __LINE__)
#define mxRemoveField(pa, field) mxRemoveField_d(pa, field, __FILE__, __LINE__)
#if !defined(MATLAB_MEX_FILE)
#define mxSetAllocFcns(callocptr, freeptr, reallocptr, mallocptr) mxSetAllocFcns_d(callocptr, freeptr, reallocptr, freeptr, __FILE__, __LINE__)
#endif /* MATLAB_MEX_FILE */
#define mxSetCell(pa, index, value) mxSetCell_d(pa, index, value, __FILE__, __LINE__)
#define mxSetClassName(pa, name) mxSetClassName_d(pa, name, __FILE__, __LINE__)
#define mxSetData(pa, pd) mxSetData_d(pa, pd, __FILE__, __LINE__)
#define mxSetDimensions(pa, size, ndims) mxSetDimensions_d(pa, size, ndims, __FILE__, __LINE__)
#define mxSetField(pa, index, fieldname, value) mxSetField_d(pa, index, fieldname, value, __FILE__, __LINE__)
#define mxSetFieldByNumber(pa, index, fieldnum, value) mxSetFieldByNumber_d(pa, index, fieldnum, value, __FILE__, __LINE__)
#define mxSetImagData(pa, pid) mxSetImagData_d(pa, pid, __FILE__, __LINE__)
#define mxSetIr(pa, ir) mxSetIr_d(pa, ir, __FILE__, __LINE__)
#define mxSetJc(pa, jc) mxSetJc_d(pa, jc, __FILE__, __LINE__)
#define mxSetM(pa, m) mxSetM_d(pa, m, __FILE__, __LINE__)
#define mxSetN(pa, n) mxSetN_d(pa, n, __FILE__, __LINE__)
#define mxSetNzmax(pa, nzmax) mxSetNzmax_d(pa, nzmax, __FILE__, __LINE__)
#define mxSetPi(pa, pi) mxSetPi_d(pa, pi, __FILE__, __LINE__)
#define mxSetPr(pa, pr) mxSetPr_d(pa, pr, __FILE__, __LINE__)
#endif
/* $Revision: 1.4 $ */
/*
* Copyright (c) 1984-2001 The MathWorks, Inc.
* All Rights Reserved.
*/
#endif /* matrix_h */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -