I'm using doxygen generating document html website. By using @defgroup
command, I can generate module pages, they are just like manually made index.
There are at least 2 detail levels for my "manually made index" (the module page). Once a man clicking that module page, all level of index are displayed, which, I don't like. Is there any configuration item available to only show the top-level index for the module page?
The actual behavior:
To reproduce
the doxygen executable version: 1.9.2 (97cb0de4dab1f9eb77325f7ee9f46dcaed8b0c69)
full code to reproduce is available here: https://gitee.com/aczz/cv-dbg/tree/master/doxygen_example
the doxyfile I use is:
PROJECT_NAME = "MyProject"
INPUT = @CMAKE_SOURCE_DIR@
EXTRACT_ALL = YES
HTML_TIMESTAMP = YES
RECURSIVE = YES
STRIP_FROM_PATH = ../
GENERATE_LEGEND = YES
HTML_HEADER = @CMAKE_SOURCE_DIR@/docs/header.html
HTML_FOOTER = @CMAKE_SOURCE_DIR@/docs/footer.html
HTML_STYLESHEET =
HTML_EXTRA_STYLESHEET = @CMAKE_SOURCE_DIR@/docs/stylesheet.css
The c++ header file I use, with doxygen commands, is:
#ifndef HELLO_H
#define HELLO_H
/**
@defgroup basic_types Basic Types
@{
@defgroup array_type Array
@defgroup matrix_type Matrix
@defgroup tensor_type Tensor
@defgroup network Nerual Network Data Types
@{
@defgroup layer Layer
@defgroup network Network
@}
@}
@defgroup math_algorithms Math and Algorithms
@{
@defgroup array_op Array Operations
@defgroup matrix_op Matrix Operations
@{
@defgroup decomp Matrix Decomposition
@{
@defgroup decomp_lu LU Decomposition
@defgroup decomp_svd SVD Decomposition
@}
@defgroup solve Solve Linear Equation
@}
@defgroup tensor_op Tensor Operations
@}
@defgroup deep_nn Deep Neural Networks
*/
typedef unsigned char uchar;
#include <memory>
//! @addtogroup basic_types
//! @{
/// Matrix class
///
/// represens the image struct
///
class Mat
{
public:
Mat(): rows_(0), cols_(0), data_(NULL){}
public:
int rows();
int cols();
unsigned char* data();
private:
int rows_;
int cols_;
std::shared_ptr<uchar> data_;
};
class Point
{
public:
Point(): x(0), y(0) {}
Point(int _x, int _y): x(_x), y(_y) {}
public:
int x, y;
};
class Size
{
public:
Size(): height(0), width(0) {}
Size(int _height, int _width): height(_height), width(_width) {}
public:
int height;
int width;
};
//! @} basic_types
#endif // HELLO_H