00001 #ifndef _BASE_READER_H_
00002 #define _BASE_READER_H_
00003
00004
00005 namespace IOmgr {
00006
00007 class BaseImporter;
00008
00009 class BaseFileReader{
00010 public:
00011
00012
00013 virtual ~BaseFileReader() {}
00014
00015
00016
00017 virtual const char* GetName() const = 0;
00018
00019
00020
00021 virtual const char* GetFileExtension() const = 0;
00022
00023
00024
00025 virtual const char* GetDescription() const = 0;
00026
00027
00028
00029 virtual bool Read(const char* fname, BaseImporter& bimpr) = 0;
00030
00031
00032
00033 virtual bool IsReadAble(const char* fname) const;
00034
00035 protected:
00036
00037
00038 bool CompareExtensions(const char* fname, const char* ext) const;
00039
00040
00041
00042 public:
00043 static bool CheckInitials(const char* path, const char *initials);
00044
00045 };
00046
00047
00048 }
00049
00050 #endif
00051