src/tools/tColor.h

Go to the documentation of this file.
00001 /*
00002 
00003 *************************************************************************
00004 
00005 ArmageTron -- Just another Tron Lightcycle Game in 3D.
00006 Copyright (C) 2000  Manuel Moos (manuel@moosnet.de)
00007 
00008 **************************************************************************
00009 
00010 This program is free software; you can redistribute it and/or
00011 modify it under the terms of the GNU General Public License
00012 as published by the Free Software Foundation; either version 2
00013 of the License, or (at your option) any later version.
00014 
00015 This program is distributed in the hope that it will be useful,
00016 but WITHOUT ANY WARRANTY; without even the implied warranty of
00017 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00018 GNU General Public License for more details.
00019 
00020 You should have received a copy of the GNU General Public License
00021 along with this program; if not, write to the Free Software
00022 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
00023   
00024 ***************************************************************************
00025 
00026 */
00027 
00028 #ifndef ArmageTron_tCOLOR_H
00029 #define ArmageTron_tCOLOR_H
00030 
00031 #include "defs.h"
00032 
00034 struct tColor
00035 {
00036 public:
00037     tColor():r_(1), g_(1), b_(1), a_(1) {}       
00038     tColor( REAL r, REAL g, REAL b, REAL a = 1 )      
00039             :r_(r), g_(g), b_(b), a_(a) {}
00040     ~tColor(){}                         
00041 
00042     // the colors are public because they are independent of each other
00043     REAL r_, g_, b_, a_;                    
00044 
00045 protected:
00046 private:
00047 };
00048 
00049 inline std::ostream &operator<< (std::ostream &s,const tColor &c){
00050     s << "color(" << c.r_ << "," << c.g_ << "," << c.b_ << "," << c.a_ << ")";
00051     return s;
00052 }
00053 
00054 inline bool operator==(const tColor &lColor, const tColor &rColor) {
00055     return ( (lColor.r_ == rColor.r_) && (lColor.g_ == rColor.g_) && (lColor.b_ == rColor.b_) && (lColor.a_ == rColor.a_));
00056 }
00057 
00058 inline bool operator!=(const tColor &lColor, const tColor &rColor) {
00059     return !operator==(lColor, rColor);
00060 }
00061 
00062 #endif
00063 

Generated on Sat Mar 15 22:55:59 2008 for Armagetron Advanced by  doxygen 1.5.4