X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=website%2Farchive%2Fbinaries%2Fmac%2Fsrc%2Fclustalw%2Fsrc%2FfileInput%2FInFileStream.h;fp=website%2Farchive%2Fbinaries%2Fmac%2Fsrc%2Fclustalw%2Fsrc%2FfileInput%2FInFileStream.h;h=6d30f6a0934c68cda90b6374c4b3896f96b70045;hb=dbde3fb6f00b9bb770343631a517c0e599db8528;hp=0000000000000000000000000000000000000000;hpb=85f830bbd51a7277994bd4233141016304e210c9;p=jabaws.git diff --git a/website/archive/binaries/mac/src/clustalw/src/fileInput/InFileStream.h b/website/archive/binaries/mac/src/clustalw/src/fileInput/InFileStream.h new file mode 100644 index 0000000..6d30f6a --- /dev/null +++ b/website/archive/binaries/mac/src/clustalw/src/fileInput/InFileStream.h @@ -0,0 +1,53 @@ +/** + * Author: Nigel Brown + * + * Copyright (c) 2007 Des Higgins, Julie Thompson and Toby Gibson. + */ +/** + * InFileStream subclasses std::ifstream, adding a check for the end-of-line + * character convention in the input file. This is then used by the getline() + * member as the line delimiter, unless the caller supplies an explicit + * delimiter. + * + * Created: 09-02-07,Nigel Brown(EMBL) + ***************************************************************************/ +#ifndef INFILESTREAM_H +#define INFILESTREAM_H + +#include +#include +#include +#include + +class InFileStream : public std::ifstream +{ + public: + InFileStream(); + InFileStream(const char *filename); + //- InFileStream(const InFileStream ©); + + void open(const char *filename); + void close(); + + //int get(); + //bool is_open(); + std::istream& getline(char *s, std::streamsize n);/*{return ifstream::getline(s, n, delim);}*/ + std::istream& getline(char *s, std::streamsize n, char delim); + /*{ + return ifstream::getline(s, n, delim); + }*/ + + protected: + char findDelimiter(); + + private: + //disable copy-constructor + InFileStream(const InFileStream ©); + std::string filename; + //auto_ptr inFile; + char delim; +}; + +#endif //INFILESTREAM_H + +