summaryrefslogtreecommitdiffstats
path: root/src/qdoc/qdoc/src/qdoc/tagfilewriter.h
blob: 40a1ed3995d5d229fbd214803919123445ce4953 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// Copyright (C) 2020 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0

#ifndef TAGFILEWRITER_H
#define TAGFILEWRITER_H

#include <QtCore/qxmlstream.h>

QT_BEGIN_NAMESPACE

class Aggregate;
class Generator;
class QDocDatabase;

class TagFileWriter
{
public:
    TagFileWriter();
    ~TagFileWriter() = default;

    void generateTagFile(const QString &fileName, Generator *generator);

private:
    void generateTagFileCompounds(QXmlStreamWriter &writer, const Aggregate *inner);
    void generateTagFileMembers(QXmlStreamWriter &writer, const Aggregate *inner);

    QDocDatabase *m_qdb { nullptr };
    Generator *m_generator { nullptr };
};

QT_END_NAMESPACE

#endif // TAGFILEWRITER_H