view mde/mergetag/iface/IReader.d @ 26:611f7b9063c6

Changed the licensing and removed a few dead files. Changed licensing to "GPL version 2 or later" to avoid future compatibility issues. Also a unittest fix to the previous commit. committer: Diggory Hardy <diggory.hardy@gmail.com>
author Diggory Hardy <diggory.hardy@gmail.com>
date Thu, 03 Apr 2008 18:15:02 +0100
parents 5f90774ea1ef
children
line wrap: on
line source

/* LICENSE BLOCK
Part of mde: a Modular D game-oriented Engine
Copyright © 2007-2008 Diggory Hardy

This program is free software: you can redistribute it and/or modify it under the terms
of the GNU General Public License as published by the Free Software Foundation, either
version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>. */

/**
* Interface for readers.
*/
module mde.mergetag.iface.IReader;

import mde.mergetag.DataSet;

import tango.util.collection.model.View : View;

/** Interface for all mergetag readers (MTTReader etc.).
*/
interface IReader {
    DataSet dataset ();                 /// Get the DataSet
    void dataset (DataSet);             /// Set the DataSet
    
    void dataSecCreator (IDataSection delegate (ID));   /// Set the dataSecCreator
    
    ID[] getSectionNames ();            /// Get identifiers for all sections
    void read ();                       /// Commence reading
    void read (ID[] secSet);            /// ditto
    void read (View!(ID) secSet);       /// ditto
}