def get_spd_dtype_list(endianess='<'):
    """
    Get the data type list for an SPD map.
    Further information about the file format is available `here
    <https://github.com/hyperspy/hyperspy/
    files/29505/SpcMap-spd.file.format.pdf>`__.

    Table of header tags:
     - tag: 16 byte char array;    *File ID tag ("MAPSPECTRA_DATA")*
     - version: 4 byte long;       *File version*
     - nSpectra: 4 byte long;      *Number of spectra in file*
     - nPoints: 4 byte long;       *Number of map pixels in X direction*
     - nLines: 4 byte long;        *Number of map pixels in Y direction*
     - nChannels: 4 byte long;     *Number of channels per spectrum*
     - countBytes: 4 byte long;    *Number of count bytes per channel*
     - dataOffset: 4 byte long;    *File offset in bytes for data start*
     - nFrames: 4 byte long;       *Number of frames in live spectrum mapping*
     - fName: 120 byte char array; *File name of electron image acquired during mapping*


    Parameters
    ----------
    endianess : byte-order used to read the data

    Returns
    -------
    dtype_list : list
        List of the data tags and data types that will be used by numpy to
        read an SPD file header.
    """
    end = endianess
    dtype_list = [('tag', '16i1'), ('version', end + 'i4'), ('nSpectra', 
        end + 'i4'), ('nPoints', end + 'i4'), ('nLines', end + 'u4'), (
        'nChannels', end + 'u4'), ('countBytes', end + 'u4'), ('dataOffset',
        end + 'u4'), ('nFrames', end + 'u4'), ('fName', end + '120i1'), (
        'filler', end + 'V900')]
    return dtype_list
