Re: callable IDL and structures [message #30107 is a reply to message #30076] |
Mon, 08 April 2002 11:42  |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Sebastian Moeller (sebastian.moeller@lur.rwth-aachen.de) writes:
> at my place of work we have a C++ project which is to use IDL for user
> definable output. As we are somewhat bound to windows (but do not really
> like activeX) we decided that callable IDL might be the way to go. We
> intended to use structures to pass data to IDL. The strange thing is
> now, the structures we pass show their tags if we invoke "help,
> MyStructure ,/STRUCTURE". We see all tag names and types and content as
> defined in the C++ project. But every command that tries to access the
> data in the structure from IDL (e.g. tmp= MyStructure.MyTag1 with MyTag1
> is the first element of the structure) just tells that MyTag1 is not
> defined in MyStructure.
I'm afraid I'm skeptical about this. :-)
> Beeing challenged in that way we found that tmp= MyStructure.(n) with n
> beeing the "address" of the tag, actually gives us access to the data.
> "MyStructure.[0]" by the way does not work.
Yes, this is correct (on both counts). Ten minutes of looking
through on-line help doesn't come up with anything, but I know
it is documented *somewhere*. This is an alternative way to
access the fields of a structure. But if they are available
this way, they are sure as heck available via the fields names
as well. I'd like to see the code you are using to "access" them
by their names.
> But as this behavior is not
> documented anywhere (well, at least not where we searched) we assume it
> is rather daring to go relay on the stability of this feature for the
> future. (Heck, RSI even changed the behavior of SIZE() between 5.3 and
> 5.4, without mentioning in the what's new in 5.4. So maybe stability is
> relative anyhow ;)...)
I think you are fine doing this.
> So after too long a story, is there anybody out there who knows where we
> went wrong or whether this might be considered a bug worth reporting to RSI?
I don't see any bugs...yet.
Cheers,
David
--
David W. Fanning, Ph.D.
Fanning Software Consulting
Phone: 970-221-0438, E-mail: david@dfanning.com
Coyote's Guide to IDL Programming: http://www.dfanning.com/
Toll-Free IDL Book Orders: 1-888-461-0155
|
|
|