Home | nevrax.com |
|
random.hGo to the documentation of this file.00001 00006 /* Copyright, 2000, 2001, 2002 Nevrax Ltd. 00007 * 00008 * This file is part of NEVRAX NEL. 00009 * NEVRAX NEL is free software; you can redistribute it and/or modify 00010 * it under the terms of the GNU General Public License as published by 00011 * the Free Software Foundation; either version 2, or (at your option) 00012 * any later version. 00013 00014 * NEVRAX NEL is distributed in the hope that it will be useful, but 00015 * WITHOUT ANY WARRANTY; without even the implied warranty of 00016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00017 * General Public License for more details. 00018 00019 * You should have received a copy of the GNU General Public License 00020 * along with NEVRAX NEL; see the file COPYING. If not, write to the 00021 * Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, 00022 * MA 02111-1307, USA. 00023 */ 00024 00025 00026 #ifndef NL_RANDOM_H 00027 #define NL_RANDOM_H 00028 00029 00030 namespace NLMISC 00031 { 00032 00038 class CRandom 00039 { 00040 public: 00041 // The max value that can be returned by the random generator 00042 enum { RandMax = 0x7fff }; 00043 public: 00044 // ctor 00045 CRandom(); 00046 // generate a random value 00047 sint32 rand(); 00048 // set a new seed for the random generator 00049 void srand(sint32 seed); 00050 // generate a floating point random value in [0, mod] 00051 float frand(float mod); 00052 private: 00053 sint32 _Seed; 00054 }; 00055 00056 00057 00058 00059 } 00060 00061 #endif 00062 00063 |