Re: Common block access in DLM [message #39431] |
Wed, 19 May 2004 05:08  |
Haje Korth
Messages: 651 Registered: May 1997
|
Senior Member |
|
|
Rick,
thanks for the further information. And thanks for the advice on how to
define global vars in C. Since obviously no COMMON or similar statement is
required, it would have probably taken me forever to figure this out. (Just
as it took forever to find out the the argument after "switch" required
parantheses around it. :-) ).
Cheers,
Haje
"Rick Towler" <tsehai@comcast.net> wrote in message
news:_Auqc.73594$536.11940230@attbi_s03...
>
> "Haje Korth" wrote...
>
>> thanks for the example, this is more than I expected. Regarding my
> project,
>> I ported a FORTRAN library for geophysical coordinate transformations
and
>> magnetic field calculation from FORTRAN to IDL usind a DLM, basically
IDL
>> <-> DLM <-> C <-> FORTRAN, taking Ronn's exercises a little further.
>> Unfortunately I only have Ronn's first edition book, so I do not know if
> he
>> expanded on this in the second edition.
>
> I can't say. I know that he updated the text to include the new keyword
API
> and added the C++ section. I'm sure he did more, those were just the two
> most compelling updates for me.
>
>
>> Anyway, everything works as
>> expected, but having to supply year, day of year, hour minute second for
>> every call is nerve wrecking, and blows up the call to so many
parameters
>> that the IDL code looks confusing. I will give the global variables a
try.
>
> That's a good place to start. Then if you need the ability to run
multiple
> instances you can go the C++ route. I could dig up an example if you
like.
>
> Also, have you checked out Stein Vidar Hagfors Haugan's dlmform? It might
> be able to handle the tedium for you.
>
> http://www.astro.uio.no/~steinhh/idl/additions.html
> http://www.astro.uio.no/~steinhh/idl/dlmform.html
>
>
>> How do setup such a global variable in
>> C? Is this just regular C language, or is there some fancy handling
> required
>> with the IDL external API? (I am pretty much C newby, but once I now
this,
> I
>> think I can handle the interfacing with FORTRAN.)
>
> Plain old regular C. Simply define it before your first function and it
> will be available globally. I too am fumbling thru the dark when it comes
> to C/C++ but luckily there are enough people in the group that can help us
> when we get stuck. :)
>
> Good luck!
>
> -Rick
>
>
|
|
|