Lucene TokenStream
===

I have a basic question on the lucene tokenizing process:
    
    TokenStream tokenStream = analyzer.tokenStream(fieldName, reader);    
    TermAttribute termAttribute = tokenStream.addAttribute(TermAttribute.class);

What is a termAttribute used for and what does tokenStream.addAttribute(TermAttribute.class) do?

Thanks!