'@param outFile: A file-like object.  Ideally one should be passed which
accepts L{unicode} data.  Otherwise, UTF-8 L{bytes} will be used.
@type outFile: L{io.IOBase}
@param formatEvent: A callable that formats an event.
@type formatEvent: L{callable} that takes an C{event} argument and
returns a formatted event as L{unicode}.'

def __init__(self, outFile, formatEvent):

    if (ioType(outFile) is not unicode):
        self._encoding = 'utf-8'
    else:
        self._encoding = None
    self._outFile = outFile
    self.formatEvent = formatEvent
