Skip to content
Snippets Groups Projects
mfuncs.h 1.38 KiB
Newer Older
  • Learn to ignore specific revisions
  • /***************************************************************************
                              mfuncs.h  -  description
                                 -------------------
        begin                : 2005/07/05
        copyright            : (C) 2005 by Tomá¹ Oberhuber
        email                : oberhuber@seznam.cz
     ***************************************************************************/
    
    /***************************************************************************
     *                                                                         *
     *   This program is free software; you can redistribute it and/or modify  *
     *   it under the terms of the GNU General Public License as published by  *
     *   the Free Software Foundation; either version 2 of the License, or     *
     *   (at your option) any later version.                                   *
     *                                                                         *
     ***************************************************************************/
    
    #ifndef mfuncsH
    #define mfuncsH
    
    template< class T > T Min( const T& a, const T& b )
    {
       return a < b ? a : b;
    };
    
    template< class T > T Max( const T& a, const T& b )
    {
       return a > b ? a : b;
    };
    
    template< class T > void Swap( T& a, T& b )
    {
       T tmp( a );
       a = b;
       b = tmp;
    };
    
    template< class T > T Sign( const T& a )
    {
       if( a < 0 ) return -1;
       if( a == 0 ) return 0;
       return 1;
    }
    
    #endif