source: git/templates/template.h @ 599813

fieker-DuValspielwiese
Last change on this file since 599813 was 7a452a7, checked in by Oleksandr Motsak <motsak@…>, 14 years ago
modeline for vim/emacs same header everywhere. TODO: c-source? singularxx-defs?
  • Property mode set to 100644
File size: 2.5 KB
RevLine 
[7a452a7]1// -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
[86af43]2/*****************************************************************************\
3 * Computer Algebra System SINGULAR   
4\*****************************************************************************/
[4f6451]5/** @file template.h
[bcfa20]6 *
[86af43]7 * This file defines the class Template.
[bcfa20]8 *
[4f6451]9 * ABSTRACT: We need this for something...
[bcfa20]10 *
11 * @author Oleksandr Motsak
12 *
[4f6451]13 * @internal @version \$Id$
[bcfa20]14 *
[4f6451]15 **/
[86af43]16/*****************************************************************************/
[bcfa20]17
[86af43]18#ifndef TEMPLATE_H
19#define TEMPLATE_H
[bcfa20]20
[4f6451]21// include basic definitions
[7a452a7]22#include <singularxx_defs.h>
[4f6451]23
[bcfa20]24BEGIN_NAMESPACE_SINGULARXX
25
[7a452a7]26/** @class Template template.h <someRootDirectory/template.h>
[bcfa20]27 *
[86af43]28 * Brief description of class Template.
[bcfa20]29 *
[86af43]30 * Detailed description of class Template.
[bcfa20]31 *
[4f6451]32 * @sa some other classes
[bcfa20]33 */
[86af43]34class Template: public TemplateBaseClass
[bcfa20]35{
36public:
[4f6451]37  /// Name type of *this. 
[86af43]38  typedef Template Self;
[bcfa20]39
[4f6451]40  /// My enum. Or yours, if you want!
[86af43]41  enum MyEnum
[bcfa20]42  {
43    int EVal1, ///< Enum value 1
44    int EVal2  ///< Enum value 2
45  };
46
[4f6451]47  /// Default constructor.
48  /// And now goes the detailed description....
[86af43]49  Template();
[bcfa20]50
51  /// Default destructor.
[86af43]52  ~Template();
[bcfa20]53 
54
[86af43]55  /// Brief method description.
56  ///
57  /// Detailed method description.
58  ///
59  /// @return information about return value
60  /// @sa strcpy2
61  ///
62  int someMethod( 
63             int a, ///< [in] some int
[4c09bb]64             int &o ///< [in,out] integer input and resulting value
[86af43]65            );
[bcfa20]66
[4f6451]67  /// Example of Copy a string method.
[bcfa20]68  ///
[86af43]69  /// The strcpy2 function copies @a strSource, including
[bcfa20]70  /// the terminating null character, to the location
71  /// specified by @a strDestination. No overflow checking
72  /// is performed when strings are copied or appended.
[86af43]73  /// The behavior of @a strcpy2 is undefined if the source
[bcfa20]74  /// and destination strings overlap.
75  ///
[86af43]76  /// @return @a strcpy2 returns the destination string.
[bcfa20]77  /// No return value is reserved to indicate an error.
[86af43]78  /// @sa someMethod(), wcscpy(), _mbscpy(), strncpy()
[bcfa20]79  char* strcpy2(
[86af43]80            char* strDestination,  ///< [out] pointer to source null terminated.
[bcfa20]81                                   ///< continue ...
[86af43]82            const char* strSource  ///< [in] pointer to destination memory.
[bcfa20]83               );
84
85protected:
[86af43]86  /// Short description of some flag till first dot. Everything after that will
87  /// be considered as a detaiiled description.
[bcfa20]88  bool m_bSomeFlag;
89};
90
91END_NAMESPACE_SINGULARXX
92
93#endif
[86af43]94/* #ifndef TEMPLATE_H */
[7a452a7]95
96// Vi-modeline: vim: filetype=c:syntax:shiftwidth=2:tabstop=8:textwidth=0:expandtab
Note: See TracBrowser for help on using the repository browser.