A file is devided into several sections, each section can consist of several blocks.
Insert two empty lines between sections.
Insert one empty line between blocks.
Example/Template
#pragma once
#include <signalzeug/Signal.h>
#include <reflectionzeug/Object.h>
#include <reflectionzeug/Variant.h>
#include <globjects/Texture.h>
#include <gloperate/gloperate_api.h>
namespaceglbinding{classBinding;}namespaceglobjects{classTexture;classBuffer;}namespacegloperate{classViewerContext;classSurface;classPipeline;/**
* @brief
* Timer class for executing timed tasks
*/classGLOPERATE_APITimer{public:enumType{ContinuousTimer,///< Fire at regular intervals
RandomTimer///< Fire at random intervals
};public:signalzeug::Signal<>fired;///< Called when the timer interval has elapsed
public:/**
* @brief
* Get global instance
*
* @return
* Global timer instance (never null)
*/staticTimer*instance();public:/**
* @brief
* Constructor
*
* @param[in] viewerContext
* Viewer context to which the surface belongs (must NOT be null!)
*/Timer(ViewerContext*viewerContext);/**
* @brief
* Destructor
*/virtual~Timer();/**
* @brief
* Check if timer is currently active
*
* @return
* 'true' if timer is active, else 'false'
*/boolisActive()const;/**
* @brief
* Start timer
*
* @param[in] interval
* Interval (in seconds, 0.0 for continuous update in each main loop iteration)
* @param[in] singleShot
* If 'true', the timer fires only once, otherwise it will be restarted continously
*/voidstart(floatinterval,boolsingleShot=false);/**
* @brief
* Stop timer
*/voidstop();/**
* @brief
* Get interval
*
* @return
* Interval (in seconds)
*/floatinterval()const;/**
* @brief
* Get remaining time
*
* @return
* Remaining time (in seconds)
*/floatremainingTime()const;/**
* @brief
* Update timer
*
* @param[in] delta
* Time delta (in seconds)
*/voidupdate(floatdelta);protected:/**
* @brief
* Called when the timer has been updated
*/virtualvoidonUpdate();protected:ViewerContext*m_viewerContext;///< Viewer context to which the timer belongs
boolm_active;///< 'true' if timer is active, else 'false'
boolm_singleShot;///< 'true' if timer fires only once, else 'false'
floatm_interval;///< Interval (in seconds)
floatm_remaining;///< Remaining time (in seconds)
};}//namespacegloperate