Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## quicktime.app.image
Class FileFilter

    java.lang.Object
      |
      +--quicktime.app.image.FileFilter

All Implemented Interfaces:
  java.io.FilenameFilter

public class FileFilter
extends java.lang.Object
implements java.io.FilenameFilter

This class is used by the ImageUtil.createSequence call. It is used to filter the contents of a directory and return true to those files that match the pattern that this expects. After the files are selected the array of fileNames accepted are submitted to the postProcess method which returns an array of fileNames which will then be used to create a sequence of images in the order of the files in this array.

The filename format that this filter expects is:
Both prefix and suffix can be empty, but requires that there be at least one numeric character in the name of the file.

No sorting is done on the resulting file list, so generally the files will be opened and added to the sequence in alpha/numeric order. So for files to appear in proper numeric order you will need to specify leading zeroes in the frame numbers.

You can also pass in a boolean flag to indicate that the filter should ignore the suffix of the filename when matching.

Subclasses can overide or extend the methods to provide custom filtering operations.

Field Summary
`protected java.lang.String` | `prefix` The prefix of the file to be matched.
`protected java.lang.String` | `suffix` The suffix of the file to be matched.
`protected boolean` | `testSuffix` If true (the default) then both the suffix and prefix are used to match the filename.

Constructor Summary
`FileFilter()` Create the filter with the default setting of testing both prefix and suffix
`FileFilter(boolean testSuffix)` Create the filter with the flag set (if true - the default) which will test the suffix and prefix or if false it will test the prefix only

Method Summary
`boolean` | `accept(java.io.File dir, java.lang.String fName)` This method is used by the createSequence call to filter the files found in the supplied directory.
`protected void` | `extractPrefixAndSuffix(java.lang.String fName)` It dissects the incoming fName (the name of a file) into a prefix which are all the characters of the fileName that precede the last occurance of a number in the filename and a suffix the extracts the characters that immediately follow the last occurance of a number in the fName.
`protected java.lang.String[]` | `postProcess(java.lang.String[] matchedFiles)` This method is called after the directory has been filtered.
`protected int` | `testFrameNumber(java.lang.String fName)` This method tests the frameNumber portion of the filename.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### prefix

    protected java.lang.String prefix

  The prefix of the file to be matched. The value is set by the extractPrefixAndSuffix method. It should always have a value - even if it is just an empty string.

### suffix

    protected java.lang.String suffix

  The suffix of the file to be matched. The value is set by the extractPrefixAndSuffix method.

### testSuffix

    protected boolean testSuffix

  If true (the default) then both the suffix and prefix are used to match the filename. If false then only the prefix is matched.

Constructor Detail

### FileFilter

    public FileFilter(boolean testSuffix)

  Create the filter with the flag set (if true - the default) which will test the suffix and prefix or if false it will test the prefix only

### FileFilter

    public FileFilter()

  Create the filter with the default setting of testing both prefix and suffix

Method Detail

### extractPrefixAndSuffix

    protected void extractPrefixAndSuffix(java.lang.String fName)

  It dissects the incoming fName (the name of a file) into a prefix which are all the characters of the fileName that precede the last occurance of a number in the filename and a suffix the extracts the characters that immediately follow the last occurance of a number in the fName. It stores the result of these into the instance variables prefix and suffix respectively.

  Subclasses can overwrite this to produce their own semantic for extracting a prefix and suffix - they need to ensure that the instance variables are set with the appropriate values.

  Parameters:
    `fName` - the name of the file that is to be disected.

### testFrameNumber

    protected int testFrameNumber(java.lang.String fName)
                           throws java.lang.NumberFormatException

  This method tests the frameNumber portion of the filename. If this string does NOT have a number it will throw a NumberFormatException. It returns the resulting number.

### accept

    public boolean accept(java.io.File dir,
                          java.lang.String fName)

  This method is used by the createSequence call to filter the files found in the supplied directory. It returns true if the filename matches the conditions (prefix and suffix are found in the file and between these there is a number). Both prefix and suffix can be empty but the frame number is required.
  Specified by:
    `accept` in interface `java.io.FilenameFilter`
  Parameters:
    `dir` - the directory being filtered
    `fName` - the name of a file found within this directory
  Returns:
    true if the file matches the conditions otherwise false

### postProcess

    protected java.lang.String[] postProcess(java.lang.String[] matchedFiles)

  This method is called after the directory has been filtered. The incoming array contains both the file list (files found within the directory that have been accepted as a match) and the order of the files in this list is the order that the files will be added to the sequence. The method can alter this array (or return a new one). The returned array should contain no null values, and the order of the filenames in the returned array is the order that the files will be added to the sequence.

  The default implementation returns the list as is.

  Parameters:
    `the` - matched list of files
  Returns:
    the ordered list of files that the sequence will be created from.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD