source: trunk/src/matlab/rpFind.cc @ 115

Last change on this file since 115 was 115, checked in by mmc, 19 years ago

Updated all copyright notices.

File size: 1.3 KB
Line 
1/*
2 * ----------------------------------------------------------------------
3 *  INTERFACE: Matlab Rappture Library Source
4 *
5 *    unitsHandle = rpFind(unitSymbol)
6 *
7 * ======================================================================
8 *  AUTHOR:  Derrick Kearney, Purdue University
9 *  Copyright (c) 2004-2005  Purdue Research Foundation
10 *
11 *  See the file "license.terms" for information on usage and
12 *  redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES.
13 * ======================================================================
14 */
15
16#include "RpMatlabInterface.h"
17
18void mexFunction(int nlhs, mxArray *plhs[],
19                 int nrhs, const mxArray *prhs[])
20{
21    char *unitSymbol = NULL;
22    RpUnits* myUnit = NULL;
23    int retHandle = 0;
24
25    /* Check for proper number of arguments. */
26    if (nrhs != 1)
27        mexErrMsgTxt("Two input required.");
28    else if (nlhs > 1)
29        mexErrMsgTxt("Too many output arguments.");
30
31    unitSymbol = getStringInput(prhs[0]);
32
33    /* Call the C subroutine. */
34    if (unitSymbol) {
35        myUnit = RpUnits::find(unitSymbol);
36
37        if (myUnit) {
38            retHandle = storeObject_UnitsStr(myUnit->getUnitsName());
39        }
40    }
41
42    /* Set C-style string output_buf to MATLAB mexFunction output*/
43    plhs[0] = mxCreateDoubleScalar(retHandle);
44
45    return;
46}
Note: See TracBrowser for help on using the repository browser.