# coyote: CGFINDPATHTO

- coyote/Utilities
- [Source code]

Description

      The purpose of this function is to search for a file, primarily in "resources"
      directories. It might be used, for example, to find the name of bitmap files to
      use as widget button values. This program can be slow, depending upon how many
      directories it has to search. If you are looking for a *.pro file, it will probably
      be faster to search for the file with File_Which. This routine is primarily used to
      search for files without *.pro file extensions in places outside the normal IDL path.
      Namely in "resources" directories that may reside in the main IDL directory structure
      or may reside in your own application that you have built with IDL. The order of
      search is as follows::
         1. In the current directory.
         2. In the same directory as this file is found in.
         3. In the directories rooted at the IDL resource directory (IDL_DIR/resource).
         4. In the directories rooted at a resources directory found in the same directory this file is in.
         5. In the directories rooted at a resourcs directory found in the same directory this file is in.
         6. In the directories rooted at a resources directory found in the a directory one above the directory this file is in.
         7. In the directories rooted at a resource directory found in the a directory one above the directory this file is in.
         8. Anywhere in the IDL PATH. Note that a *.pro file *must* be in a directory for the directory to be on
            the IDL PATH.

Categories

      Utilities

Params

      filename: in, required, type=string
        The root name of the file you are searching for. For example, 'arrow.bmp'.
        Do not use a full path name to the file.

Keywords

      success: out, optional, type=boolean
         On output, this keyword contains a 1 if the file was found, and a 0 otherwise.

Examples

      Here is how to use this program::
        IDL> Print, cgFindPathTo('gshhs_i.b', success=s) & Print, 'success: ', s
             /home/fanning/IDL/incubator/gshhs_i.b
             success:  1
        IDL> Print, cgFindPathTo('dataviewer_splash.jpg', success=s) & print, 'success: ', s
             /home/fanning/IDL/dataviewer/resources/dataviewer_splash.jpg
             success:  1
        IDL> Print, cgFindPathTo('arc.bmp', success=s) & Print, 'success: ', s
             /usr/local/rsi/idl70/resource/bitmaps/arc.bmp
             success:  1
        IDL> Print, cgFindPathTo('toast_and_jam.txt', success=s) & Print, 'success: ', s
             success:  0

Author

      FANNING SOFTWARE CONSULTING::
         David W. Fanning
         1645 Sheely Drive
         Fort Collins, CO 80526 USA
         Phone: 970-221-0438
         E-mail: david@idlcoyote.com
         Coyote's Guide to IDL Programming: http://www.idlcoyote.com

History

      Change History::
         Written, 15 January 2014 by David W. Fanning.

Copyright

      Copyright (c) 2014, Fanning Software Consulting, Inc.