Merge branch 'pletscher'
[libdai.git] / src / matlab / matlab.cpp
index e3ba1a9..a2b9e87 100644 (file)
@@ -1,23 +1,12 @@
-/*  Copyright (C) 2006-2008  Joris Mooij  [joris dot mooij at tuebingen dot mpg dot de]
-    Radboud University Nijmegen, The Netherlands /
-    Max Planck Institute for Biological Cybernetics, Germany
-
-    This file is part of libDAI.
-
-    libDAI is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    libDAI is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with libDAI; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-*/
+/*  This file is part of libDAI - http://www.libdai.org/
+ *
+ *  libDAI is licensed under the terms of the GNU General Public License version
+ *  2, or (at your option) any later version. libDAI is distributed without any
+ *  warranty. See the file COPYING for more details.
+ *
+ *  Copyright (C) 2006-2009  Joris Mooij  [joris dot mooij at libdai dot org]
+ *  Copyright (C) 2006-2007  Radboud University Nijmegen, The Netherlands
+ */
 
 
 #include <iostream>
@@ -35,11 +24,11 @@ mxArray *Factors2mx(const vector<Factor> &Ps) {
     size_t nr = Ps.size();
 
     mxArray *psi = mxCreateCellMatrix(nr,1);
-    
+
     const char *fieldnames[2];
     fieldnames[0] = "Member";
     fieldnames[1] = "P";
-    
+
     size_t I_ind = 0;
     for( vector<Factor>::const_iterator I = Ps.begin(); I != Ps.end(); I++, I_ind++ ) {
         mxArray *Bi = mxCreateStructMatrix(1,1,2,fieldnames);
@@ -60,7 +49,7 @@ mxArray *Factors2mx(const vector<Factor> &Ps) {
 
         mxSetField(Bi,0,"Member",BiMember);
         mxSetField(Bi,0,"P",BiP);
-        
+
         mxSetCell(psi, I_ind, Bi);
     }
     return( psi );
@@ -74,8 +63,8 @@ vector<Factor> mx2Factors(const mxArray *psi, long verbose) {
 
     int n1 = mxGetM(psi);
     int n2 = mxGetN(psi);
-    if( n2 != 1 && n1 != 1 ) 
-        mexErrMsgTxt("psi should be a Nx1 or 1xN cell matrix."); 
+    if( n2 != 1 && n1 != 1 )
+        mexErrMsgTxt("psi should be a Nx1 or 1xN cell matrix.");
     size_t nr_f = n1;
     if( n1 == 1 )
         nr_f = n2;
@@ -85,7 +74,7 @@ vector<Factor> mx2Factors(const mxArray *psi, long verbose) {
         if( verbose >= 3 )
             cerr << "reading factor " << cellind << ": " << endl;
         mxArray *cell = mxGetCell(psi, cellind);
-        mxArray *mx_member = mxGetField(cell, 0, "Member"); 
+        mxArray *mx_member = mxGetField(cell, 0, "Member");
         size_t nr_mem = mxGetN(mx_member);
         double *members = mxGetPr(mx_member);
         const mwSize *dims = mxGetDimensions(mxGetField(cell,0,"P"));
@@ -144,7 +133,7 @@ vector<Factor> mx2Factors(const mxArray *psi, long verbose) {
 
 /* Convert CPTAB-like struct to Factor */
 Factor mx2Factor(const mxArray *psi) {
-    mxArray *mx_member = mxGetField(psi, 0, "Member");  
+    mxArray *mx_member = mxGetField(psi, 0, "Member");
     size_t nr_mem = mxGetN(mx_member);
     double *members = mxGetPr(mx_member);
     const mwSize *dims = mxGetDimensions(mxGetField(psi,0,"P"));