#ifndef BUFFER_DOT_H #define BUFFER_DOT_H class BufferT{ public: BufferT(std::string filename, int size=20); ~BufferT(); std::string GetLexeme(); char NextLetter(); void ResetForward(); void RetractForward(); private: // don't want em. BufferT(const BufferT & b); BufferT & operator=(const BufferT &); // buffer maintenance char * OtherBuffer(); void ReloadBuffer(); bool IsInCurrent(char *); int fd; int bufferSize; char * buffer1, * buffer2; char *lexemeBegin,* forward; char * currentBuffer; bool doReload; }; const char EOF = '\0'; #endif