Developer/HFileTemplate
generated on 2017-12-19 09:15:31.734349 from the wiki page for Developer/HFileTemplate for SUMO 0.32.0
/****************************************************************************/ // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo // Copyright (C) <YEAR OF CREATION>-<CURRENT YEAR> German Aerospace Center (DLR) and others. /****************************************************************************/ // // This program and the accompanying materials // are made available under the terms of the Eclipse Public License v2.0 // which accompanies this distribution, and is available at // http://www.eclipse.org/legal/epl-v20.html // /****************************************************************************/ /// @file <FILENAME> /// @author <AUTHOR'S NAME, ONE SEPARATE LINE FOR EACH AUTHOR> /// @author <AUTHOR'S NAME 2> /// @author <AUTHOR'S NAME 3> /// @date <FILE CREATION DATE> /// @version $Id: $ /// /// <A BRIEF DESCRIPTION OF THE FILE'S CONTENTS> /****************************************************************************/ #ifndef <FILENAME_h> #define <FILENAME_h> // =========================================================================== // included modules // =========================================================================== #ifdef _MSC_VER #include <windows_config.h> #else #include <config.h> #endif #include "myOwnClass1.h" #include "myOwnClass2.h" // =========================================================================== // class declarations // =========================================================================== class myOwnClass1; class myOwnClass2; // =========================================================================== // class definitions // =========================================================================== /** * @class myOwnClass * briefly description of the class (Can be preceded of GNE, MS, NB, etc... depending of the project) */ class myOwnClass : public parentClass { public: /** * @class mySubClass * briefly description of the sub-class */ class mySubClass { public: /// @brief Constructor mySubClass(); /// @brief Destructor ~mySubClass(); private: /// @brief description of parameter <parameterType> myPrivateParameter; }; /** @brief Constructor * @param[in] parameter1 each parameter must be documented * @param[in] parameter2 each parameter must be documented ... */ myOwnClass(<parameterType> parameter1, <parameterType> parameter2,... <parameterType> parametern); /// @brief Destructor (don't need documentation) ~myOwnClass(); /// @brief Returns parameter1 (Simple functions should be documented with one Linie) <parameterType> getParameter1() const; /** @brief some functions can throw exceptions * @param[in] parameter1 description of the parameter * @throw <exceptionName> description of the situation that provoque an exception * @return description of the returned value */ bool setParameter1(<type> parameter1) const; /// @brief if the class is abstract, should have pure virtual functions (virtual .... = 0;) // @note: Extra information about a function should be written using @note virtual void myPureVirtualFunction() = 0; protected: /// @brief briefly description of the parameter <parameterType> myProtectedParameter1; private: /// @brief every private parameter must start with "my" <parameterType> myPrivateParameter2; /// @brief C++ Standard Library classes must be preceded of std:: std::vector<std::string> myPrivateParameter3; } #endif
This page was last modified on 29 September 2017, at 10:08.