help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Replacement of struct_elt_ref


From: Laurent Mazet
Subject: Re: Replacement of struct_elt_ref
Date: Tue, 29 Apr 2003 15:41:32 +0200

On Mon, 28 Apr 2003 22:39:33 -0400
Paul Kienzle <address@hidden> wrote:
> Laurent Mazet wrote:
> >Helo,
> >
> >I used to use struct_elt_ref method to extract data field from a structure 
> >in my C++ oct-file. Since 2.1.4x, this method disapears. Does anyone knows 
> >how to deal with structures in new version ?
...
> 
> It looks like you should be able to use
> 
>     octave_value map = args(0);
>     octave_value el = map.single_subsref 
> (".",octave_value_list(octave_value("field")));
> 

At least, I found an elegant way to do it:

/* OCTAVE_VERSION == 2.0.x */

  Matrix strans = args(3).struct_elt_ref("strans").matrix_value();

/* OCTAVE_VERSION <= 2.1.36 */

#include <octave/oct-lvalue.h>
 Matrix strans = args(3).struct_elt_ref("strans").value().matrix_value();

/* OCTAVE_VERSION > 2.1.36 */

#include <octave/oct-map.h>
  Octave_map map = args(3).map_value();
  Matrix strans = map["strans"](0).matrix_value();

I think this summary might help.

         Laurent
-- 
Dr. Laurent Mazet: Research Engineer /V\ Centre de Recherche de MOTOROLA
Tel: +33 (0)1 69 35 48 30 =-=-=-=-=-=-=-=-=-=-= Email: address@hidden



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------



reply via email to

[Prev in Thread] Current Thread [Next in Thread]