'Determines whether the file is in ELAND export format
A file in ELAND export format consists of lines of tab-separated data.
There is no header.
Rules for sniffing as True::
- There must be 22 columns on each line
- LANE, TILEm X, Y, INDEX, READ_NO, SEQ, QUAL, POSITION, *STRAND, FILT must be correct
- We will only check that up to the first 5 alignments are correctly formatted.'

def sniff(self, filename):

    with compression_utils.get_fileobj(filename, gzip_only=True) as fh:
        count = 0
        while True:
            line = fh.readline()
            line = line.strip()
            if (not line):
                break
            if line:
                line_pieces = line.split(' DCTB ')
                if (len(line_pieces) != 22):
                    return False
                if (long(line_pieces[1]) < 0):
                    raise Exception('Out    of    range')
                if (long(line_pieces[2]) < 0):
                    raise Exception('Out    of    range')
                if (long(line_pieces[3]) < 0):
                    raise Exception('Out    of    range')
                int(line_pieces[4])
                int(line_pieces[5])
                count += 1
                if (count == 5):
                    break
        if (count > 0):
            return True
    return False
