#!/bin/sh

#   imglob - expand list of image filenames
#
#   Stephen Smith and Mark Jenkinson, FMRIB Image Analysis Group
#
#   Copyright (C) 1999-2004 University of Oxford
#
#   SHCOPYRIGHT

if [ $# -lt 1 ] ; then
  echo "Usage: $0 [-extension/extensions] <list of names>"
  echo "       -extension for one image with full extension"
  echo "       -extensions for image list with full extensions"
  exit 1;
fi

extension=0
onename=1;
if [ X"$1"X = "X-extensionsX" ] ; then
  onename=0;
  extension=1
  shift;
fi

if [ X"$1"X = "X-extensionX" ] ; then
  extension=1;
  shift;
fi

# process each argument, removing any possible extension and
#  then expanding for valid extensions

lst="";
for aa in $@ ; do
  # repeat remove_ext a few times to expand out all wildmasking
  a=`${FSLDIR}/bin/remove_ext ${aa}`;
  # at this point variable 'a' may have been expanded into a list
  for b in $a ; do
    if [ $onename = 1 ] ; then
      fn=`echo ${b}.hdr ${b}.hdr.gz ${b}.nii ${b}.nii.gz ${b}.mnc ${b}.mnc.gz`;
    else
      fn=`echo ${b}.hdr ${b}.hdr.gz ${b}.nii ${b}.nii.gz ${b}.mnc ${b}.mnc.gz ${b}.img ${b}.img.gz`;
    fi
    lst="$lst $fn";
  done
done

# remove any instances of unmatched wildmasks (still with * in them)
lst2="";
for fn in $lst ; do
  if [ -f $fn ] ; then
     lst2="$lst2 $fn";
  fi
done

# make list unique
lst=`echo $lst2 | tr ' ' '\n' | sort -u`;
if [ $extension = 0 ] ; then 
  echo `${FSLDIR}/bin/remove_ext $lst`;
else 
  echo $lst;
fi
