Doxygen XLinks
by
V: 2511R0
Website: doxygen
Loading...
Searching...
No Matches
doxyfile.hpp
Go to the documentation of this file.
1//==================================================================================================
2/// \file
3/// This header-file is part of \dxl - A doxygen post-processor that allows to define smarter
4/// <b>Doxygen</b>-links.
5///
6/// \emoji :copyright: 2025-2026 A-Worx GmbH, Germany.
7/// Published under \ref mainpage_license "Boost Software License".
8//==================================================================================================
9#ifndef HPP_DXL_DOXYFILE
10#define HPP_DXL_DOXYFILE
11#pragma once
12
13#include "ALib.Files.H"
14
15namespace dxl {
16
17// #################################################################################################
18/// This class reads a doxygen INI-file and parses the values that DoxygenXLinks needs into its
19/// members.
20// #################################################################################################
22 /// Represents the tagfile created by the main project or an additional external one which may
23 /// optionally specify a documentation location (directory or URL).
24 struct TagFileInfo {
25 /// Path to the tag-file
27
28 /// The base-URL that links in the tag-file are targeting. In case of the main tag-file
29 /// of the project (variable <b>GENERATE_TAGFILE</b> in the doxyfile), this string is
30 /// \e nulled.
32 };
33
34 /// The doxygen output directory for HTML files. This is our input directory.
35 /// Read from variables \b HTML_OUTPUT, and, if this is a relative path, from
36 /// \b OUTPUT_DIRECTORY.
38
39 /// The extension of the generated Html-Files.<br>
40 /// Read from variable \b HTML_FILE_EXTENSION. Doxygen defaults this to <b>".html"</b>.
42
43 /// Specifies the number of subfolders of HTML-files created by Doxygen.
44 /// Read from variable \b RECURSIVE
45 unsigned HtmlSubfolderDepth = 0;
46
47 /// Doxygen input files. Those are used to search for non-resolvable or ambiguous links.<p>
48 /// Uses variable \b INPUT
50
51 /// Doxygen input files patterns. Used to filter files in #InputPaths.<p>
52 /// Read from variable \b FILE_PATTERNS.
54
55 /// A list of files or folders to be excluded<p>
56 /// Read from variable \b EXCLUDE.
58
59 /// A list of patterns to exclude from the input file list. Allows wildcards like
60 /// <c>*/test/*</c> and patterns are applied to the full path of a file.
61 /// Read from variable \b EXCLUDE_PATTERNS
63
64 /// Holds the main documentations' tag-file specified by the variable \b GENERATE_TAGFILE,
65 /// together with all external tag-files to use specified by variable \b TAGFILES.<br>
66 /// Note that with that, all tag-files are treated with the same precedence.
68
69 /// Determines whether symlinks should be followed or not during input file scan.<p>
70 /// Read from variable \b EXCLUDE_SYMLINKS
71 bool ExcludeSymlinks = false;
72
73 /// Specifies if input folders are recursively scanned for files.
74 /// Read from variable \b RECURSIVE
75 bool RecursiveInputScan = false;
76
77 /// Constructor
78 /// @param ma The allocator used to create the data.
84
85 /// Loads the doxygen INI-file (usually "Doxyfile") and reads the relevant values.
86 /// @param filePath The path to the file to open
87 void Load(const alib::system::Path& filePath);
88
89 /// Writes the contents of this file to the console.
90 void Dump() const;
91};
92
93} // namespace [dxl]
94
95#endif // HPP_DXL_DOXYFILE
strings::TString< PathCharType > PathString
monomem::TMonoAllocator< lang::HeapAllocator > MonoAllocator
containers::List< T, MonoAllocator, TRecycling > ListMA
strings::TString< character > String
todox
Definition doxyfile.cpp:20
alib::system::PathString TagFilePath
Path to the tag-file.
Definition doxyfile.hpp:26
alib::ListMA< alib::system::PathString > ExcludePaths
Definition doxyfile.hpp:57
alib::String HtmlFileExtension
Definition doxyfile.hpp:41
alib::String FilePatterns
Definition doxyfile.hpp:53
alib::ListMA< TagFileInfo > TagFiles
Definition doxyfile.hpp:67
unsigned HtmlSubfolderDepth
Definition doxyfile.hpp:45
alib::system::PathString HTMLFilePath
Definition doxyfile.hpp:37
alib::ListMA< alib::String > ExcludePatterns
Definition doxyfile.hpp:62
alib::ListMA< alib::system::PathString > InputPaths
Definition doxyfile.hpp:49
void Load(const alib::system::Path &filePath)
Definition doxyfile.cpp:22
void Dump() const
Writes the contents of this file to the console.
Definition doxyfile.cpp:245
DoxygenINIFile(alib::MonoAllocator &ma)
Definition doxyfile.hpp:79