include/EDoc/DirectoryArchive.h

Go to the documentation of this file.
00001 /*******************************************************************************
00002 
00003    Copyright (C) 2007 by Brendon Costa
00004 
00005    This library is free software; you can redistribute it and/or modify 
00006    it under the terms of the "LGPL Like" License defined in the file COPYING 
00007    that should have been distributed along with this source.
00008 
00009    This library is distributed in the hope that it will be useful, 
00010    but WITHOUT ANY WARRANTY; without even the implied warranty of 
00011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
00012 
00013    You should have received a copy of the "LGPL Like" License 
00014    along with this library; see the file COPYING. if not, it can be 
00015    obtained from the EDoc++ website: 
00016    http://edoc.sourceforge.net/license.html
00017 
00018 *******************************************************************************/
00019 #ifndef EDOC_DIRECTORYARCHIVE_H
00020 #define EDOC_DIRECTORYARCHIVE_H
00021 
00022 #include "EDoc/ArchiveIFace.h"
00023 
00024 namespace EDoc
00025 {
00026    //===========================================================================
00027    /** \brief Represents an archive of data files within a directory.
00028     *
00029     * This is used to provide a consistent method for looking for files 
00030     * recursivley within a directory. EDoc will treat a directory like a zip 
00031     * file in that it is a filesystem element that contains a number of files.
00032     */
00033    class DirectoryArchive : public ArchiveIFace
00034    {
00035    public:
00036 
00037       //------------------------------------------------------------------------
00038       /** \brief See EDoc::ArchiveIFace::HandlesType()
00039        */
00040       virtual bool HandlesType(const ManagedFile& arch_filename);
00041 
00042       //------------------------------------------------------------------------
00043       /** \brief See EDoc::ArchiveIFace::ReadExtractAll()
00044        */
00045       virtual std::list<ManagedFile> ReadExtractAll(const ManagedFile& arch_filename);
00046 
00047       //------------------------------------------------------------------------
00048       /** \brief See EDoc::ArchiveIFace::WriteOpen()
00049        */
00050       virtual ManagedFile WriteOpen(const ManagedFile& arch_filename, 
00051          std::string item_filename="default.edc");
00052 
00053       //------------------------------------------------------------------------
00054 
00055    };
00056    //===========================================================================
00057 
00058 }
00059 
00060 
00061 #endif // EDOC_DIRECTORYARCHIVE_H

Generated on Tue Jan 20 18:26:07 2009 for EDoc-0.2.1 by  doxygen 1.5.1