TuttleOFX
1
|
00001 #ifndef _SEQUENCE_PARSER_FOLDER_HPP_ 00002 #define _SEQUENCE_PARSER_FOLDER_HPP_ 00003 00004 #include <FileObject.hpp> 00005 00006 namespace sequenceParser { 00007 00008 class Folder : public FileObject 00009 { 00010 00011 public: 00012 00013 Folder( const boost::filesystem::path& directory, const std::string folderName, const EMaskOptions& options ) : 00014 FileObject( directory, eMaskTypeDirectory, options ), 00015 _folderName( folderName ) { } 00016 00017 Folder( const Folder& other ) 00018 : FileObject( other ) 00019 , _folderName( other._folderName ) 00020 {} 00021 00022 ~Folder() { } 00023 00024 std::ostream& getCout( std::ostream& os ) const; 00025 00026 std::vector<boost::filesystem::path> getFiles() const; 00027 00028 inline void clear() 00029 { 00030 FileObject::clear(); 00031 _folderName.clear(); 00032 } 00033 00034 Folder* clone() const { return new Folder(*this); } 00035 00036 private: 00037 std::ostream& getProperties( std::ostream& os, const boost::filesystem::path& directory ); 00038 00039 private: 00040 std::string _folderName; 00041 }; 00042 00043 } 00044 00045 #endif