diff options
Diffstat (limited to 'src/collectionfactory.h')
-rw-r--r-- | src/collectionfactory.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/collectionfactory.h b/src/collectionfactory.h new file mode 100644 index 0000000..72d42b1 --- /dev/null +++ b/src/collectionfactory.h @@ -0,0 +1,40 @@ +/*************************************************************************** + copyright : (C) 2003-2006 by Robby Stephenson + email : [email protected] + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of version 2 of the GNU General Public License as * + * published by the Free Software Foundation; * + * * + ***************************************************************************/ + +#ifndef COLLECTIONFACTORY_H +#define COLLECTIONFACTORY_H + +#include "datavectors.h" + +#include <qmap.h> + +namespace Tellico { + +typedef QMap<int, QString> CollectionNameMap; + +/** + * A factory class for dealing with the different types of collections. + * + * @author Robby Stephenson + */ +class CollectionFactory { +public: + static Data::CollPtr collection(int type, bool addFields); + static Data::CollPtr collection(const QString& typeName, bool addFields); + static CollectionNameMap nameMap(); + static QString typeName(int type); + static bool isDefaultField(int type, const QString& name); +}; + +} // end namespace +#endif |