IT++ Logo
Functions
Mexfiles

Conversions between IT++ and Matlab for writing mex-files. More...

Functions

bin itpp::mxArray2bin (const mxArray *in)
 Convert the matlab-format mxArray to bin.
 
short itpp::mxArray2short (const mxArray *in)
 Convert the matlab-format mxArray to short.
 
int itpp::mxArray2int (const mxArray *in)
 Convert the matlab-format mxArray to int.
 
double itpp::mxArray2double (const mxArray *in)
 Convert the matlab-format mxArray to double.
 
std::complex< double > itpp::mxArray2double_complex (const mxArray *in)
 Convert the matlab-format mxArray to complex<double>
 
std::string itpp::mxArray2string (const mxArray *in)
 Convert the matlab-format mxArray to string.
 
bvec itpp::mxArray2bvec (const mxArray *in)
 Convert the matlab-format mxArray to bvec.
 
svec itpp::mxArray2svec (const mxArray *in)
 Convert the matlab-format mxArray to svec.
 
ivec itpp::mxArray2ivec (const mxArray *in)
 Convert the matlab-format mxArray to ivec.
 
vec itpp::mxArray2vec (const mxArray *in)
 Convert the matlab-format mxArray to vec.
 
cvec itpp::mxArray2cvec (const mxArray *in)
 Convert the matlab-format mxArray to cvec.
 
bmat itpp::mxArray2bmat (const mxArray *in)
 Convert the matlab-format mxArray to bmat.
 
smat itpp::mxArray2smat (const mxArray *in)
 Convert the matlab-format mxArray to smat.
 
imat itpp::mxArray2imat (const mxArray *in)
 Convert the matlab-format mxArray to imat.
 
mat itpp::mxArray2mat (const mxArray *in)
 Convert the matlab-format mxArray to mat.
 
cmat itpp::mxArray2cmat (const mxArray *in)
 Convert the matlab-format mxArray to cmat.
 
void itpp::bin2mxArray (const bin &in, mxArray *out)
 Convert bin to the matlab-format mxArray.
 
void itpp::short2mxArray (const short &in, mxArray *out)
 Convert short to the matlab-format mxArray.
 
void itpp::int2mxArray (const int &in, mxArray *out)
 Convert int to the matlab-format mxArray.
 
void itpp::double2mxArray (const double &in, mxArray *out)
 Convert double to the matlab-format mxArray.
 
void itpp::double_complex2mxArray (const std::complex< double > &in, mxArray *out)
 Convert complex<double> to the matlab-format mxArray.
 
void itpp::string2mxArray (const std::string &in, mxArray *&out)
 Convert string to the matlab-format mxArray.
 
void itpp::bvec2mxArray (const bvec &in, mxArray *out)
 Convert bvec to the matlab-format mxArray.
 
void itpp::svec2mxArray (const svec &in, mxArray *out)
 Convert svec to the matlab-format mxArray.
 
void itpp::ivec2mxArray (const ivec &in, mxArray *out)
 Convert ivec to the matlab-format mxArray.
 
void itpp::vec2mxArray (const vec &in, mxArray *out)
 Convert vec to the matlab-format mxArray.
 
void itpp::cvec2mxArray (const cvec &in, mxArray *out)
 Convert cvec to the matlab-format mxArray.
 
void itpp::bmat2mxArray (const bmat &in, mxArray *out)
 Convert bmat to the matlab-format mxArray.
 
void itpp::smat2mxArray (const smat &in, mxArray *out)
 Convert smat to the matlab-format mxArray.
 
void itpp::imat2mxArray (const imat &in, mxArray *out)
 Convert imat to the matlab-format mxArray.
 
void itpp::mat2mxArray (const mat &in, mxArray *out)
 Convert mat to the matlab-format mxArray.
 
void itpp::cmat2mxArray (const cmat &in, mxArray *out)
 Convert cmat to the matlab-format mxArray.
 
void itpp::mxArray2Csvec (const mxArray *in, short *out)
 Convert the matlab-format mxArray to C-format pointer to short.
 
void itpp::mxArray2Civec (const mxArray *in, int *out)
 Convert the matlab-format mxArray to C-format pointer to int.
 
void itpp::mxArray2Cvec (const mxArray *in, double *out)
 Convert the matlab-format mxArray to C-format pointer to double.
 
void itpp::mxArray2Ccvec (const mxArray *in, double *out_real, double *out_imag)
 Convert the matlab-format mxArray to C-format pointers to double (real and imaginary parts)
 
void itpp::mxArray2Csmat (const mxArray *in, short **out)
 Convert the matlab-format mxArray to C-format pointer to pointer to short.
 
void itpp::mxArray2Cimat (const mxArray *in, int **out)
 Convert the matlab-format mxArray to C-format pointer to pointer to int.
 
void itpp::mxArray2Cmat (const mxArray *in, double **out)
 Convert the matlab-format mxArray to C-format pointer to pointer to double.
 
void itpp::mxArray2Ccmat (const mxArray *in, double **out_real, double **out_imag)
 Convert the matlab-format mxArray to C-format pointer to pointer to double (real and imaginary parts)
 
void itpp::Csvec2mxArray (short *in, mxArray *out)
 Convert C-format pointer to short to matlab-format mxArray.
 
void itpp::Civec2mxArray (int *in, mxArray *out)
 Convert C-format pointer to int to matlab-format mxArray.
 
void itpp::Cvec2mxArray (double *in, mxArray *out)
 Convert C-format pointer to double to matlab-format mxArray.
 
void itpp::Ccvec2mxArray (double *in_real, double *in_imag, mxArray *out)
 Convert C-format pointers to double (real and imaginary parts) to matlab-format mxArray.
 
void itpp::Csmat2mxArray (short **in, mxArray *out)
 Convert C-format pointer to pointer to short to matlab-format mxArray.
 
void itpp::Cimat2mxArray (int **in, mxArray *out)
 Convert C-format pointer to pointer to int to matlab-format mxArray.
 
void itpp::Cmat2mxArray (double **in, mxArray *out)
 Convert C-format pointer to pointer to double to matlab-format mxArray.
 
void itpp::Ccmat2mxArray (double **in_real, double **in_imag, mxArray *out)
 Convert C-format pointer to pointer to double (real and imaginary parts) to matlab-format mxArray.
 

Detailed Description

Conversions between IT++ and Matlab for writing mex-files.

Author
Tony Ottosson and Pal Frenger

These routines are used to help writng mex-files for speeding up matlab simulations. A simple mex-file that performs QPSK modulation is given below.

#include <itpp/itcomm.h>
#include <itpp/itmex.h>
using namespace itpp;
void mexFunction(int n_output, mxArray *output[], int n_input, const mxArray *input[])
{
// Check the number of inputs and output arguments
if(n_output!=1) mexErrMsgTxt("Wrong number of output variables!");
if(n_input!=1) mexErrMsgTxt("Wrong number of input variables!");
// Convert input variables to IT++ format
bvec input_bits = mxArray2bvec(input[0]);
// ------------------ Start of routine ---------------------------
cvec output_symbols;
QPSK qpsk;
output_symbols = qpsk.modulate_bits(input_bits);
// ------------------ End of routine -----------------------------
// Create output vectors
output[0] = mxCreateDoubleMatrix(1,output_symbols.size(), mxCOMPLEX);
// Convert the IT++ format to Matlab format for output
cvec2mxArray(output_symbols, output[0]);
}
SourceForge Logo

Generated on Sat Jul 6 2013 10:54:29 for IT++ by Doxygen 1.8.2