comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: Indexing structures of different type
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: Indexing structures of different type [message #15914] Thu, 17 June 1999 00:00 Go to previous message
Craig Markwardt is currently offline  Craig Markwardt
Messages: 1869
Registered: November 1996
Senior Member
Donglai Gong Rm3110 x1569 <donglai@eden.rutgers.edu> writes:
>
> Hi, does anyone know how to index structures of different types in IDL?
>
> REPLICATE won't work since it creates an array of the same structure, so
> I'm thinking of doing a structure of structures. However I don't know
> how to index them for use in a loop. Thanks in advance.

If you are *really* trying to glue a bunch of different types
together, you should probably structures as you say.

How to loop over them? This is easily done with a little magic:

;; Initialize your structure
s = {u:0L, v:0D, w:intarr(5), x:{a:1, b:2}, y:'hello'}

n = n_tags(s)
for i = 0L, n-1 do begin
;; The magic is here:
f = s.(i)

;; Operate on f here:
print, f
endfor

However, you should be aware that IDL structures are pretty slow to
operate on, especially when you build large ones. [ Some versions of
IDL have a limit on the number of elements in a structure too. ]

Good luck,
Craig



--
------------------------------------------------------------ --------------
Craig B. Markwardt, Ph.D. EMAIL: craigmnet@astrog.physics.wisc.edu
Astrophysics, IDL, Finance, Derivatives | Remove "net" for better response
------------------------------------------------------------ --------------
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Previous Topic: heap and stack
Next Topic: Re: RedHat 6.0, lmgrd error?

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 15:22:53 PDT 2025

Total time taken to generate the page: 0.00438 seconds