coyote: CGROOTNAME

Description
The purpose of this routine is to extract from a long file path, the
base or root file name. That is, the name of the actual file without
the preceeding directory information or the final file extension.
The directory information and file extension can be obtained via
keywords. It is similar to File_Basename in IDL.
Categories
Utilities
Returns
The base or root file name is returned. This is the "name" of the file
without either the preceeding directory information, or the prepended
file extension.
Params
filename: in, required, type=string
    This file name to be parsed. It may be a relative or absolute path
    name to a file.
Keywords
directory: out, optional, type=string
    The name of the directory preceeding the root file name. If the file name
    contains no directory information, this keyword is set equal to the current
    working directory at the time the program is called.
extension: out, optional, type=string
    The (usually!) three character file extention of the file.
path_separator: in, optional, type=string
    The string to use as a path separator in parsing the file. If undefined
    the out of Path_Sep() is used.
Examples
Print, the root name, directory, and extension of a file::
   IDL> thePath = "C:\rsi\idl7.8\lib\jester.pro"
   IDL> Print, cgRootName(thePath, Directory=theDirectory, Extension=theExtension)
       jester
   IDL> Print, theDirectory
        C:\rsi\idl7.8\lib\
   IDL> Print, theExtension
        pro
Get the name of the current directory, with the path separator as the last character. This is
the equivalent of CD, Current=current & current = current + Path_Sep().
   IDL> void = cgRootName(Directory=current)
   IDL> Print, current
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 by: David W. Fanning, 31 July 2003.
   Modified by KaRo, 13 Feb. 2005 to allow dots in the filename.
   Added PATH_SEPARATOR keyword. 25 July 2005. DWF.
   Added ability to recongnize directory by path separator in last character. 19 Sept 2005. DWF.
   If directory is blank (because a relative filename was passed), set to current directory. 6 Aug 2009. DWF.
   There were a couple of instances where the directory did NOT end in a path separator. Fixed. 24 Feb 2012. DWF.
   Added ability to get the current directory with a path separator in one step instead of two. See example
      section for details. 26 Sept 2013. DWF.
Copyright
Copyright (c) 2003-2012, Fanning Software Consulting, Inc.