The type of file determines the medium on which the file is located (e.g., disk or network) and, hence, which internal device driver is used by CFITSIO to read and/or write the file. Currently supported types are
file:// - file on local magnetic disk (default) ftp:// - a readonly file accessed with the anonymous FTP protocol. It also supports ftp://username:password@hostname/... for accessing password-protected ftp sites. http:// - a readonly file accessed with the HTTP protocol. It supports username:password just like the ftp driver. Proxy HTTP servers are supported using the http_proxy environment variable (see following note). https:// - a readonly file accessed with the HTTPS protocol. This is available only if CFITSIO was built with the libcurl library (see the following note). ftps:// - a readonly file accessed with the FTPS protocol. This is available only if CFITSIO was built with the libcurl library. stream:// - special driver to read an input FITS file from the stdin stream, and/or write an output FITS file to the stdout stream. This driver is fragile and has limited functionality (see the following note). gsiftp:// - access files on a computational grid using the gridftp protocol in the Globus toolkit (see following note). root:// - uses the CERN root protocol for writing as well as reading files over the network (see following note). shmem:// - opens or creates a file which persists in the computer's shared memory (see following note). mem:// - opens a temporary file in core memory. The file disappears when the program exits so this is mainly useful for test purposes when a permanent output file is not desired.If the filetype is not specified, then type file:// is assumed. The double slashes '//' are optional and may be omitted in most cases.