00001 #ifndef rl_Traits_h_INCLUDED 00002 #define rl_Traits_h_INCLUDED 00003 00004 // File: rl_Traits.h 00005 // Author: Terry Gaetz 00006 00007 /* --8<--8<--8<--8<-- 00008 * 00009 * Copyright (C) 2006, 2007 Smithsonian Astrophysical Observatory 00010 * 00011 * This file is part of rl_raylib 00012 * 00013 * rl_raylib is free software; you can redistribute it and/or 00014 * modify it under the terms of the GNU General Public License 00015 * as published by the Free Software Foundation; either version 2 00016 * of the License, or (at your option) any later version. 00017 * 00018 * rl_raylib is distributed in the hope that it will be useful, 00019 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00020 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00021 * GNU General Public License for more details. 00022 * 00023 * You should have received a copy of the GNU General Public License 00024 * along with this program; if not, write to the 00025 * Free Software Foundation, Inc. 00026 * 51 Franklin Street, Fifth Floor 00027 * Boston, MA 02110-1301, USA 00028 * 00029 * -->8-->8-->8-->8-- */ 00030 00031 /**************************************************************************** 00032 * 0.0.0 1998-Jun-24 tjg original version 00033 */ 00034 00035 // #ifndef std_complex_dbl_h_INCLUDED 00036 // #include <std_complex_dbl/std_complex_dbl.h> 00037 // #endif 00038 00039 #include <complex> 00040 00041 //######################################################################## 00042 // rl_Traits 00043 //######################################################################## 00044 // 00045 00055 class rl_Traits 00056 { 00057 public: 00058 00060 // typedef std_complex_dbl complex; 00061 typedef std::complex<double> complex; 00062 00064 enum Bool { False, True }; 00065 00069 enum EInterpMode 00070 { 00071 ELinLin, 00072 ELinLog, 00073 ELogLin, 00074 ELogLog 00075 }; 00076 00080 enum ERoughType 00081 { 00082 ERoughNone, 00083 ERoughDebyeWaller_RSAO, 00084 ERoughDebyeWaller_CSAO, 00085 ERoughDebyeWaller_Spiller, 00086 ERoughModifiedDebyeWaller, 00087 ERoughNevotCroce 00088 }; 00089 00093 struct rl_DielectricPOD 00094 { 00096 double energy_; 00098 double alpha_; 00100 double gamma_; 00101 }; 00102 }; 00103 00104 /* rl_Traits_h_INCLUDED */ 00105 #endif