>  Docs Center  >  Libraries  >  Markwardt  >  CMARG_PRESENT
Libraries

CMARG_PRESENT

CMARG_PRESENT

Name


  ARG_PRESENT

Author


  Craig B. Markwardt, NASA/GSFC Code 662, Greenbelt, MD 20770
  craigm@lheamail.gsfc.nasa.gov

Purpose


  Determine whether output parameter has been passed (IDL4 compatibility)

Calling Sequence


  PRESENT = ARG_PRESENT(ARG)

Description



  ARG_PRESENT tests whether an argument to a function or procedure
  can be used as an output parameter. The behavior of this function
  is identical to that of the built-in ARG_PRESENT function in IDL
  version 5 or greater, and is meant to give the same functionality
  to programs in IDL 4.
  An IDL procedure or function can use ARG_PRESENT to decide whether
  the value of a positional or keyword parameter will be returned to
  the calling procedure. Generally, if the caller did not pass the
  parameter then there is no need to compute the value to be
  returned.
  To be a valid output parameter, the caller must have passed a
  named variable into which the result is stored. If the caller
  passed the parameter by value (e.g., an expression or a
  subscripted array) the value cannot be returned and ARG_PRESENT
  returns 0.

Inputs



  ARG - the parameter to be tested. It can be either a positional
        or a keyword parameter. Passing a normal local variable
        (i.e., not a passed parameter) will cause ARG_PRESENT to
        return zero.

Returns



  Returns a value of 1 if ARG is a valid output parameter, and a
  value of 0 otherwise.

Example



  Consider the following procedure:
      PRO TESTARG, ARG1
        print, ARG_PRESENT(ARG1)
      END
  This procedure will print 1 when an ARG1 can be used as an output
  parameter. Here are some examples of the results of TESTARG.
      IDL> testarg
            0
      IDL> testarg, x
            1
      IDL> testarg, findgen(10)
            0
 
  In the first case, no argument is passed, so ARG1 cannot be a
  return variable. In the second case, X is undefined, but it is
  still a legal named variable capable of receiving an output
  parameter. In the third case, FINDGEN(10) is an expression which
  cannot receive an output parameter.

See Also



  ARG_PRESENT in IDL version 5

Modification History


  Written, CM, 13 May 2000
  Small documentation and bug fixes, CM, 04 Jul 2000



© 2024 NV5 Geospatial Solutions, Inc. |  Legal
My Account    |    Contact Us