SplitFileReader.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2004 CSIRO ICT Centre
00003  *
00004  * $Id: SplitFileReader.h 587 2004-12-03 15:06:33Z nch $
00005  */
00006 
00007 /*
00008  * Reads objects from a collection of files.
00009  *
00010  * The file names are provided as a vector of Strings
00011  * and each file is opened in turn.
00012  *
00013  * Assumes the files are in order of increasing declination 
00014  * within and BETWEEN subsequent files.
00015  */
00016 
00017 #ifndef SPLITFILEREADER_DEFINED
00018 #define SPLITFILEREADER_DEFINED
00019 
00020 #include <stdio.h>
00021 #include "String.h"
00022 #include <vector>
00023 
00024 #include "FileReader.h"
00025 
00026 class FileObjectReader;
00027 
00028 
00029 class SplitFileReader : public FileReader
00030 {
00031   public:
00032     SplitFileReader(FileObjectReader * obj,
00033                     std::vector<String> const & fileNames,
00034                     bool areLargeFiles=false);
00035     virtual ~SplitFileReader();
00036     virtual void open();
00037     virtual void reopen();
00038     virtual Object * read();
00039 
00040   protected:
00041     std::vector<String> m_fileNames;
00042     unsigned int        m_fileNum;
00043     bool                m_finished;
00044 
00045   private:
00046     SplitFileReader();
00047     SplitFileReader(SplitFileReader const &);
00048     SplitFileReader & operator=(SplitFileReader const &);
00049 };
00050 
00051 #endif // ifndef SPLITFILEREADER_DEFINED
Generated on Mon Oct 4 10:39:55 2010 for Matching.kdevelop by  doxygen 1.6.3