[KLF Backend]
[KLF Tools]
[KLF Home]
KLatexFormula Project
src
klftools
klffactory.h
Go to the documentation of this file.
1
/***************************************************************************
2
* file klffactory.h
3
* This file is part of the KLatexFormula Project.
4
* Copyright (C) 2011 by Philippe Faist
5
* philippe.faist at bluewin.ch
6
* *
7
* This program is free software; you can redistribute it and/or modify *
8
* it under the terms of the GNU General Public License as published by *
9
* the Free Software Foundation; either version 2 of the License, or *
10
* (at your option) any later version. *
11
* *
12
* This program is distributed in the hope that it will be useful, *
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15
* GNU General Public License for more details. *
16
* *
17
* You should have received a copy of the GNU General Public License *
18
* along with this program; if not, write to the *
19
* Free Software Foundation, Inc., *
20
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
21
***************************************************************************/
22
/* $Id: klffactory.h 673 2011-07-27 13:45:42Z phfaist $ */
23
24
#ifndef KLFFACTORY_H
25
#define KLFFACTORY_H
26
27
#include <QString>
28
#include <QList>
29
30
#include <
klfdefs.h
>
31
32
33
class
KLFFactoryManager
;
34
36
40
class
KLF_EXPORT
KLFFactoryBase
41
{
42
public
:
43
KLFFactoryBase
(
KLFFactoryManager
*factoryManager);
44
virtual
~
KLFFactoryBase
();
45
47
virtual
QStringList
supportedTypes()
const
= 0;
48
49
private
:
50
KLFFactoryManager
*pFactoryManager;
51
};
52
53
55
91
class
KLF_EXPORT
KLFFactoryManager
92
{
93
public
:
95
KLFFactoryManager
();
97
virtual
~
KLFFactoryManager
();
98
101
KLFFactoryBase
* findFactoryFor(
const
QString
& objType);
102
105
QStringList
allSupportedTypes();
107
inline
QList<KLFFactoryBase*>
registeredFactories
() {
return
pRegisteredFactories; }
108
109
private
:
111
QList<KLFFactoryBase*>
pRegisteredFactories;
112
114
void
registerFactory(
KLFFactoryBase
*factory);
116
void
unRegisterFactory(
KLFFactoryBase
*factory);
117
118
friend
class
KLFFactoryBase
;
119
};
120
121
122
123
124
#endif
klfdefs.h
Base declarations for klatexformula and some utilities.
KLFFactoryBase
Base class for factories.
Definition:
klffactory.h:40
KLF_EXPORT
#define KLF_EXPORT
Definition:
klfdefs.h:41
KLFFactoryManager
A base abstract factory manager class.
Definition:
klffactory.h:91
QString
QList
QStringList
KLFFactoryManager::registeredFactories
QList< KLFFactoryBase * > registeredFactories()
Definition:
klffactory.h:107
Generated by
doxygen
1.8.13