Skip to content
Permalink
Browse files

Add doxygen test to force use of \ingroup for classes

Using the group tag helps keep the API docs organized
  • Loading branch information
nyalldawson committed Jul 4, 2016
1 parent a240cd8 commit 0a056f8a1f11185813500bfbb378b1113cfd3400
Showing 470 changed files with 1,464 additions and 513 deletions.
@@ -28,3 +28,10 @@ The SERVER library is built on top of the CORE library and adds map server
components to QGIS.

*/

/** @defgroup plugins plugin classes

Contains classes related to implementation of QGIS plugins.

*/

@@ -22,7 +22,8 @@
#include "MathUtils.h"
#include "qgslogger.h"

/** Class Bezier3D represents a bezier curve, represented by control points. Parameter t is running from 0 to 1. The class is capable to calculate the curve point and the first two derivatives belonging to t.*/
/** \ingroup analysis
* Class Bezier3D represents a bezier curve, represented by control points. Parameter t is running from 0 to 1. The class is capable to calculate the curve point and the first two derivatives belonging to t.*/
class ANALYSIS_EXPORT Bezier3D: public ParametricLine
{
protected:
@@ -24,7 +24,8 @@
#include "MathUtils.h"
#include "Bezier3D.h"

/** This is an implementation of a Clough-Tocher interpolator based on a triangular tessellation. The derivatives orthogonal to the boundary curves are interpolated linearly along a triangle edge.*/
/** \ingroup analysis
* This is an implementation of a Clough-Tocher interpolator based on a triangular tessellation. The derivatives orthogonal to the boundary curves are interpolated linearly along a triangle edge.*/
class ANALYSIS_EXPORT CloughTocherInterpolator : public TriangleInterpolator
{
protected:
@@ -34,7 +34,8 @@
#include <QProgressDialog>
#include <QCursor>

/** DualEdgeTriangulation is an implementation of a triangulation class based on the dual edge data structure*/
/** \ingroup analysis
* DualEdgeTriangulation is an implementation of a triangulation class based on the dual edge data structure*/
class ANALYSIS_EXPORT DualEdgeTriangulation: public Triangulation
{
public:
@@ -17,6 +17,9 @@
#ifndef HALFEDGE_H
#define HALFEDGE_H

/** \ingroup analysis
* \class HalfEdge
*/
class ANALYSIS_EXPORT HalfEdge
{
protected:
@@ -20,7 +20,8 @@
#include "TriangleInterpolator.h"
#include "DualEdgeTriangulation.h"

/** LinTriangleInterpolator is a class which interpolates linearly on a triangulation*/
/** \ingroup analysis
* LinTriangleInterpolator is a class which interpolates linearly on a triangulation*/
class ANALYSIS_EXPORT LinTriangleInterpolator : public TriangleInterpolator
{
public:
@@ -20,7 +20,8 @@
#include "Point3D.h"
#include "Node.h"

/** This class represents a line. It is implemented as a single directed linked list of nodes (with related Point3D objects). Attention: the points inserted in a line are not deleted from Line3D*/
/** \ingroup analysis
* This class represents a line. It is implemented as a single directed linked list of nodes (with related Point3D objects). Attention: the points inserted in a line are not deleted from Line3D*/
class ANALYSIS_EXPORT Line3D
{
private:
@@ -19,7 +19,8 @@

#include "Point3D.h"

/** Node is a class used by Line3D. It represents a node in the single directed linked list. Associated Point3D objects are deleted when the node is deleted.*/
/** \ingroup analysis
* Node is a class used by Line3D. It represents a node in the single directed linked list. Associated Point3D objects are deleted when the node is deleted.*/
class ANALYSIS_EXPORT Node
{
protected:
@@ -23,7 +23,8 @@
#include "qgslogger.h"
class QProgressDialog;

/** Decorator class which adds the functionality of estimating normals at the data points*/
/** \ingroup analysis
* Decorator class which adds the functionality of estimating normals at the data points*/
class ANALYSIS_EXPORT NormVecDecorator: public TriDecorator
{
public:
@@ -21,8 +21,10 @@
#include "Vector3D.h"
#include <QVector>

/** \ingroup analysis
* ParametricLine is an Interface for parametric lines. It is possible, that a parametric line is composed of several parametric
* lines (see the composite pattern in Gamma et al. 'Design Patterns'). Do not build instances of it since it is an abstract class.*/
class ANALYSIS_EXPORT ParametricLine
/** ParametricLine is an Interface for parametric lines. It is possible, that a parametric line is composed of several parametric lines (see the composite pattern in Gamma et al. 'Design Patterns'). Do not build instances of it since it is an abstract class.*/
{
protected:
/** Degree of the parametric Line*/
@@ -19,7 +19,8 @@

#include <cmath>

/** Point3D is a class to represent a three dimensional point*/
/** \ingroup analysis
* Point3D is a class to represent a three dimensional point*/
class ANALYSIS_EXPORT Point3D
{
protected:
@@ -19,7 +19,8 @@

#include "Triangulation.h"

/** Decorator class for Triangulations (s. Decorator pattern in Gamma et al.)*/
/** \ingroup analysis
* Decorator class for Triangulations (s. Decorator pattern in Gamma et al.)*/
class ANALYSIS_EXPORT TriDecorator : public Triangulation
{
public:
@@ -20,7 +20,8 @@
#include <Point3D.h>
#include <Vector3D.h>

/** This is an interface for interpolator classes for triangulations*/
/** \ingroup analysis
* This is an interface for interpolator classes for triangulations*/
class ANALYSIS_EXPORT TriangleInterpolator
{
public:
@@ -23,7 +23,8 @@
#include <qpainter.h>
#include <TriangleInterpolator.h>

/** Interface for Triangulation classes*/
/** \ingroup analysis
* Interface for Triangulation classes*/
class ANALYSIS_EXPORT Triangulation
{
public:
@@ -19,11 +19,13 @@

#include <cmath>

class ANALYSIS_EXPORT Vector3D
/**
Class Vector3D represents a 3D-Vector, capable to store x-,y- and z-coordinates in double values. In fact, the class is the same as Point3D. The name 'vector' makes it easier to understand the programs.
*/
/** \ingroup analysis
* Class Vector3D represents a 3D-Vector, capable to store x-,y- and
* z-coordinates in double values. In fact, the class is the same as Point3D.
* The name 'vector' makes it easier to understand the programs.
*/

class ANALYSIS_EXPORT Vector3D
{
protected:
/** X-component of the vector*/
@@ -24,7 +24,8 @@

class QgsInterpolator;

/** A class that does interpolation to a grid and writes the results to an ascii grid*/
/** \ingroup analysis
* A class that does interpolation to a grid and writes the results to an ascii grid*/
//todo: extend such that writing to other file types is possible
class ANALYSIS_EXPORT QgsGridFileWriter
{
@@ -20,6 +20,9 @@

#include "qgsinterpolator.h"

/** \ingroup analysis
* \class QgsIDWInterpolator
*/
class ANALYSIS_EXPORT QgsIDWInterpolator: public QgsInterpolator
{
public:
@@ -30,7 +30,8 @@ struct ANALYSIS_EXPORT vertexData
double z;
};

/** Interface class for interpolations. Interpolators take
/** \ingroup analysis
* Interface class for interpolations. Interpolators take
the vertices of a vector layer as base data. The z-Value
can be an attribute or the z-coordinates in case of 25D types*/
class ANALYSIS_EXPORT QgsInterpolator
@@ -25,7 +25,8 @@ class Triangulation;
class TriangleInterpolator;
class QgsFeature;

/** Interpolation in a triangular irregular network*/
/** \ingroup analysis
* Interpolation in a triangular irregular network*/
class ANALYSIS_EXPORT QgsTINInterpolator: public QgsInterpolator
{
public:
@@ -25,8 +25,8 @@

/**
* \ingroup networkanalysis
* \class QgsEdgeProperter
* \brief QgsEdgeProperter is a strategy pattern.
* \class QgsArcProperter
* \brief QgsArcProperter is a strategy pattern.
* You can use it for customize arc property. For example look at QgsDistanceArcProperter or src/plugins/roadgraph/speedproperter.h
*/
class ANALYSIS_EXPORT QgsArcProperter
@@ -22,6 +22,9 @@
// QGIS includes
#include <qgsarcproperter.h>

/** \ingroup networkanalysis
* \class QgsDistanceArcProperter
*/
class ANALYSIS_EXPORT QgsDistanceArcProperter : public QgsArcProperter
{
public:
@@ -29,6 +29,9 @@
#include <QString>
#include <QtAlgorithms>

/** \ingroup analysis
* \class QgsPointCompare
*/
class QgsPointCompare
{
public:
@@ -34,7 +34,7 @@ struct QgsOSMElementID
};


/**
/** \ingroup analysis
Elements (also data primitives) are the basic components in OpenStreetMap from which everything else
is defined. These consist of Nodes (which define a point in space), Ways (which define a linear features
and areas), and Relations - with an optional role - which are sometimes used to define the relation
@@ -61,7 +61,7 @@ class ANALYSIS_EXPORT QgsOSMElement



/**
/** \ingroup analysis
A node is one of the core elements in the OpenStreetMap data model. It consists of a single geospatial
point using a latitude and longitude. A third optional dimension, altitude, can be recorded; key:ele
and a node can also be defined at a particular layer=* or level=*. Nodes can be used to define standalone
@@ -83,7 +83,7 @@ class ANALYSIS_EXPORT QgsOSMNode : public QgsOSMElement
};


/**
/** \ingroup analysis
A way is an ordered list of nodes which normally also has at least one tag or is included within
a Relation. A way can have between 2 and 2,000 nodes, although it's possible that faulty ways with zero
or a single node exist. A way can be open or closed. A closed way is one whose last node on the way
@@ -110,7 +110,7 @@ class ANALYSIS_EXPORT QgsOSMWay : public QgsOSMElement


#if 0
/**
/** \ingroup analysis
A relation is one of the core data elements that consists of one or more tags and also an ordered list
of one or more nodes and/or ways as members which is used to define logical or geographic relationships
between other elements. A member of a relation can optionally have a role which describe the part that
@@ -125,7 +125,7 @@ class ANALYSIS_EXPORT QgsOSMRelation : public QgsOSMElement
};
#endif

/**
/** \ingroup analysis
* This class is a container of tags for a node, way or a relation.
*/
class ANALYSIS_EXPORT QgsOSMTags
@@ -28,7 +28,7 @@ class QgsOSMWayIterator;

typedef QPair<QString, int> QgsOSMTagCountPair;

/**
/** \ingroup analysis
* Class that encapsulates access to OpenStreetMap data stored in a database
* previously imported from XML file.
*
@@ -125,7 +125,8 @@ class ANALYSIS_EXPORT QgsOSMDatabase
};


/** Encapsulate iteration over table of nodes/
/** \ingroup analysis
* Encapsulate iteration over table of nodes/
* @note not available in Python bindings
*/
class ANALYSIS_EXPORT QgsOSMNodeIterator
@@ -148,7 +149,8 @@ class ANALYSIS_EXPORT QgsOSMNodeIterator



/** Encapsulate iteration over table of ways
/** \ingroup analysis
* Encapsulate iteration over table of ways
* @note not available in Python bindings
*/
class ANALYSIS_EXPORT QgsOSMWayIterator
@@ -23,7 +23,7 @@

class QgsRectangle;

/**
/** \ingroup analysis
* @brief OSMDownload is a utility class for downloading OpenStreetMap via Overpass API.
*
* To use this class, it is necessary to set query, output file name and start the request.
@@ -23,7 +23,7 @@

class QXmlStreamReader;

/**
/** \ingroup analysis
* @brief The QgsOSMXmlImport class imports OpenStreetMap XML format to our topological representation
* in a SQLite database (see QgsOSMDatabase for details).
*
@@ -27,7 +27,7 @@ class QgsRectangle;
typedef void* GDALDatasetH;


/**
/** \ingroup analysis
* @brief QgsAlignRaster takes one or more raster layers and warps (resamples) them
* so they have the same:
* - coordinate reference system
@@ -20,7 +20,8 @@

#include "qgsderivativefilter.h"

/** Calculates aspect values in a window of 3x3 cells based on first order derivatives in x- and y- directions. Direction is clockwise starting from north*/
/** \ingroup analysis
* Calculates aspect values in a window of 3x3 cells based on first order derivatives in x- and y- directions. Direction is clockwise starting from north*/
class ANALYSIS_EXPORT QgsAspectFilter: public QgsDerivativeFilter
{
public:
@@ -20,7 +20,8 @@

#include "qgsninecellfilter.h"

/** Adds the ability to calculate derivatives in x- and y-directions. Needs to be subclassed (e.g. for slope and aspect)*/
/** \ingroup analysis
* Adds the ability to calculate derivatives in x- and y-directions. Needs to be subclassed (e.g. for slope and aspect)*/
class ANALYSIS_EXPORT QgsDerivativeFilter : public QgsNineCellFilter
{
public:
@@ -20,6 +20,9 @@

#include "qgsderivativefilter.h"

/** \ingroup analysis
* \class QgsHillshadeFilter
*/
class ANALYSIS_EXPORT QgsHillshadeFilter: public QgsDerivativeFilter
{
public:
@@ -23,7 +23,8 @@

class QProgressDialog;

/** Base class for raster analysis methods that work with a 3x3 cell filter and calculate the value of each cell based on
/** \ingroup analysis
* Base class for raster analysis methods that work with a 3x3 cell filter and calculate the value of each cell based on
the cell value and the eight neighbour cells. Common examples are slope and aspect calculation in DEMs. Subclasses only implement
the method that calculates the new value from the nine values. Everything else (reading file, writing file) is done by this subclass*/

@@ -25,6 +25,9 @@

class QgsRasterBlock;

/** \ingroup analysis
* \class QgsRasterCalcNode
*/
class ANALYSIS_EXPORT QgsRasterCalcNode
{
public:
@@ -36,7 +36,8 @@ struct ANALYSIS_EXPORT QgsRasterCalculatorEntry
int bandNumber; //raster band number
};

/** Raster calculator class*/
/** \ingroup analysis
* Raster calculator class*/
class ANALYSIS_EXPORT QgsRasterCalculator
{
public:

0 comments on commit 0a056f8

Please sign in to comment.
You can’t perform that action at this time.