mexutils.h File Reference
Detailed Description
Definition in file mexutils.h.
#include "mex.h"
#include <vl/generic.h>
#include <ctype.h>
#include <stdio.h>
#include <stdarg.h>
Go to the source code of this file.
Data Structures | |
struct | _uMexOption |
MEX option. More... | |
Defines | |
#define | VL_USE_MATLAB_ENV |
Let VLFeat use MATLAB memory allocation/logging facilities. | |
Typedefs | |
typedef struct _uMexOption | uMexOption |
MEX option type. | |
Functions | |
static mxArray * | uCreateNumericArray (mwSize ndim, const mwSize *dims, mxClassID classid, void *data) |
Create array with pre-allocated data. | |
static mxArray * | uCreateNumericMatrix (int M, int N, mxClassID classid, void *data) |
Create array with pre-allocated data. | |
static int | uIsScalar (const mxArray *A) |
Is the array a numeric scalar? | |
static int | uIsMatrix (const mxArray *A, int M, int N) |
Is the array a numeric matrix? | |
static int | uIsVector (const mxArray *A, int N) |
Is the array a vector? | |
static int | uIsReal (const mxArray *A) |
Is the array real? | |
static int | uIsRealScalar (const mxArray *A) |
Is the array real and scalar? | |
static int | uIsRealMatrix (const mxArray *A, int M, int N) |
Is the array a real matrix? | |
static int | uIsRealVector (const mxArray *A, int N) |
Is the array a real vector? | |
static int | uIsRealArray (const mxArray *A, int D, const int *dims) |
Is the array real with specified dimensions? | |
static int | uIsString (const mxArray *A, int L) |
Is the array a string? | |
void | uErrMsgTxt (char const *format,...) |
Formatted mexErrMsgTxt() . | |
static int | uStrICmp (const char *s1, const char *s2) |
Case insensitive string comparison. | |
static int | uNextOption (mxArray const *args[], int nargs, uMexOption const *options, int *next, mxArray const **optarg) |
Process next option. |
Define Documentation
#define VL_USE_MATLAB_ENV |
Value:
vl_set_alloc_func (mxMalloc, mxRealloc, mxCalloc, mxFree) ; \ vl_set_printf_func (mexPrintf) ;
Definition at line 38 of file mexutils.h.
Typedef Documentation
typedef struct _uMexOption uMexOption |
Function Documentation
static mxArray* uCreateNumericArray | ( | mwSize | ndim, | |
const mwSize * | dims, | |||
mxClassID | classid, | |||
void * | data | |||
) | [static] |
- Parameters:
-
ndim number of dimensions. dims dimensions. classid storage class ID. data pre-allocated data.
- Returns:
- new array.
Definition at line 58 of file mexutils.h.
static mxArray* uCreateNumericMatrix | ( | int | M, | |
int | N, | |||
mxClassID | classid, | |||
void * | data | |||
) | [static] |
- Parameters:
-
M number of rows. N number of columns. classid class ID. data pre-allocated data.
- Returns:
- new array.
Definition at line 91 of file mexutils.h.
void uErrMsgTxt | ( | char const * | format, | |
... | ||||
) |
- Parameters:
-
args Format string (for sprintf). ... format string arguments.
Definition at line 338 of file mexutils.h.
static int uIsMatrix | ( | const mxArray * | A, | |
int | M, | |||
int | N | |||
) | [static] |
- Parameters:
-
A array to test. M number of rows. N number of columns.
- It is numeric.
- It as two dimensions.
- M < 0 or the number of rows is equal to M.
- N < 0 or the number of columns is equal to N.
- Returns:
- test result.
Definition at line 144 of file mexutils.h.
Referenced by uIsVector().
static int uIsReal | ( | const mxArray * | A | ) | [static] |
- Parameters:
-
A array to test.
- The storage class is DOUBLE.
- There is no imaginary part.
- Returns:
- test result.
Definition at line 187 of file mexutils.h.
Referenced by uIsRealScalar().
static int uIsRealArray | ( | const mxArray * | A, | |
int | D, | |||
const int * | dims | |||
) | [static] |
- Parameters:
-
A array to check. D number of dimensions. dims dimensions.
- It is real (see uIsReal()).
- ndims < 0 or it has ndims dimensions and
- for each element of dims, either that element is negative or it is equal to the corresponding dimension of the array.
- Returns:
- test result.
Definition at line 278 of file mexutils.h.
static int uIsRealMatrix | ( | const mxArray * | A, | |
int | M, | |||
int | N | |||
) | [static] |
- Parameters:
-
A array to test. M number of rows. N number of columns.
- It is real (see uIsReal()).
- It as two dimensions.
- M < 0 or the number of rows is equal to M.
- N < 0 or the number of columns is equal to N.
- Returns:
- test result.
Definition at line 230 of file mexutils.h.
Referenced by uIsRealVector().
static int uIsRealScalar | ( | const mxArray * | A | ) | [static] |
- Parameters:
-
A array to test.
- It is real (see uIsReal()).
- It as only one element.
- Returns:
- test result.
Definition at line 207 of file mexutils.h.
References uIsReal().
static int uIsRealVector | ( | const mxArray * | A, | |
int | N | |||
) | [static] |
- Parameters:
-
A array to test. N number of elements.
- It is a real matrix (see uIsRealMatrix()).
- It has a singleton dimension.
N
< 0 or the other dimension is equal toN
.
- Returns:
- test result.
Definition at line 255 of file mexutils.h.
References uIsRealMatrix().
static int uIsScalar | ( | const mxArray * | A | ) | [static] |
- Parameters:
-
A array to test.
- It is numeric.
- It as only one element.
- Returns:
- test result.
Definition at line 121 of file mexutils.h.
static int uIsString | ( | const mxArray * | A, | |
int | L | |||
) | [static] |
- Parameters:
-
A array to test. L string length.
- its storage class is CHAR;
- it has two dimensions;
- it has one row;
- L < 0 or it has L columns.
- Returns:
- test result.
Definition at line 318 of file mexutils.h.
Referenced by uNextOption().
static int uIsVector | ( | const mxArray * | A, | |
int | N | |||
) | [static] |
- Parameters:
-
A array to test. N number of elements.
- It is a matrix (see uIsMatrix()).
- It has a singleton dimension.
N
< 0 or the other dimension is equal toN
.
- Returns:
- test result.
Definition at line 168 of file mexutils.h.
References uIsMatrix().
static int uNextOption | ( | mxArray const * | args[], | |
int | nargs, | |||
uMexOption const * | options, | |||
int * | next, | |||
mxArray const ** | optarg | |||
) | [static] |
- Parameters:
-
args MEX argument array. nargs MEX argument array length. options List of option definitions. next Pointer to the next option (in and out). optarg Pointer to the option optional argument (out).
This argument is supposed to be the name of an option (case insensitive). The option is looked up in the option table options and decoded as the value uMexOption::val. Furthermore, if uMexOption::has_arg is true, the next entry in the array args is assumed to be argument of the option and stored in optarg. Finally, next is advanced to point to the next option.
- Returns:
- the code of the option, or -1 if the argument list is exhausted. In case of an error (e.g. unknown option) the function prints an error message and quits the MEX file.
Definition at line 420 of file mexutils.h.
References _uMexOption::has_arg, _uMexOption::name, uIsString(), uStrICmp(), and _uMexOption::val.
static int uStrICmp | ( | const char * | s1, | |
const char * | s2 | |||
) | [static] |
- Parameters:
-
s1 first string. s2 second string.
- Returns:
- 0 if the strings are equal, >0 if the first string is greater (in lexicographical order) and <0 otherwise.
Definition at line 381 of file mexutils.h.
Referenced by uNextOption().