Anaphe Home Page Reference Documentation

Main Page     Namespaces     Classes     Source Code    

T_Histograms.h

Go to the documentation of this file.
00001 #ifndef _H_T__HISTOGRAMS_H_
00002 
00003 #if 0
00004         #define _H_P__HISTOGRAMS_H_ 1
00005 #else
00006         #define _H_T__HISTOGRAMS_H_ 1
00007 #endif
00008 
00009 
00010 //
00011 // The following instantiations have to be in the ddl file for persistent
00012 // histos, but no such constraint is required for the transient version.
00013 // However to remain consistent, they are also put in the .h for the transient
00014 // version.
00015 //
00016 
00017 
00018 #if 0
00019 #else
00020 #if defined(_AIX)
00021         #define T_HISTOS_INSTANTIATED
00022         // Remove this block when xlC does support template instantiation
00023         // in transient mode. The persistent mode requires instantiations!
00024 #endif
00025 #endif
00026 
00027 
00028 
00029 // Partition:
00030 //
00031 #include "HTL/Even_Partition.h"
00032 #include "HTL/T_Uneven_Partition.h"
00033 
00034 
00035 // Bin:
00036 //
00037 #include "HTL/Gravity_Bin_1D.h"
00038 #include "HTL/Weighted_Bin.h"
00039 #include "HTL/Profile_Bin.h"
00040 #include "HTL/Float_Weighted_Bin.h" // For 2D histos.
00041 
00042 
00043 // Lifetime:
00044 //
00045 #include "HTL/T_Lifetime.h"
00046 
00047 
00048 
00049 // ***************************************************************************
00050 // * 1/ TYPEDEFs
00051 // *            a/ Typedefs for 1D and 2D: it doesn't take much compile time
00052 // *            b/ Don't forget to instantiate the templates at the end.
00053 // ***************************************************************************
00054 
00055 
00056 // ***************************************************************************
00057 // * 1D Histograms:
00058 // ***************************************************************************
00059 
00060 #include "HTL/T_Histo_1D.h"
00061 #include "HTL/T_Histo_1D.cpp"
00062 
00063 
00064 // Weighted_Bin:
00065 //
00066 typedef T_Histo_1D <
00067         T_Lifetime< Weighted_Bin >
00068         , Weighted_Bin
00069         , Even_Partition
00070 > T_Histo_1D_WED;
00071 
00072 typedef T_Histo_1D <
00073         T_Lifetime< Weighted_Bin >
00074         , Weighted_Bin
00075         , T_Uneven_Partition
00076 > T_Histo_1D_WUD;
00077 
00078 
00079 // Gravity_Bin_1D:
00080 //
00081 typedef T_Histo_1D <
00082         T_Lifetime< Gravity_Bin_1D >
00083         , Gravity_Bin_1D
00084         , Even_Partition
00085 > T_Histo_1D_GED;
00086 
00087 typedef T_Histo_1D <
00088         T_Lifetime< Gravity_Bin_1D >
00089         , Gravity_Bin_1D
00090         , T_Uneven_Partition
00091 > T_Histo_1D_GUD;
00092 
00093 
00094 //Profile_Bin:
00095 //
00096 typedef T_Histo_1D <
00097         T_Lifetime< Profile_Bin >
00098         , Profile_Bin
00099         , Even_Partition
00100 > T_Histo_1D_PED;
00101 
00102 typedef T_Histo_1D <
00103         T_Lifetime< Profile_Bin >
00104         , Profile_Bin
00105         , T_Uneven_Partition
00106 > T_Histo_1D_PUD;
00107 
00108 
00109 // ***************************************************************************
00110 // * 2D Histograms:
00111 // ***************************************************************************
00112 
00113 #include "HTL/T_Histo_2D.h"
00114 
00115 #include "HTL/T_Histo_2D.cpp"
00116 
00117 
00118 // Weighted_Bin:
00119 //
00120 typedef T_Histo_2D <
00121         T_Lifetime< Weighted_Bin >
00122         , Weighted_Bin
00123         , double, Even_Partition
00124         , double, Even_Partition
00125 > T_Histo_2D_WED;
00126 
00127 typedef T_Histo_2D <
00128         T_Lifetime< Weighted_Bin >
00129         , Weighted_Bin
00130         , double, T_Uneven_Partition
00131         , double, T_Uneven_Partition
00132 > T_Histo_2D_WUD;
00133 
00134 
00135 // Profile_Bin:
00136 //
00137 typedef T_Histo_2D <
00138         T_Lifetime< Profile_Bin >
00139         , Profile_Bin
00140         , double, Even_Partition
00141         , double, Even_Partition
00142 > T_Histo_2D_PED;
00143 
00144 typedef T_Histo_2D <
00145         T_Lifetime< Profile_Bin >
00146         , Profile_Bin
00147         , double, T_Uneven_Partition
00148         , double, T_Uneven_Partition
00149 > T_Histo_2D_PUD;
00150 
00151 
00152 // Float_Weighted_Bin:
00153 //
00154 typedef T_Histo_2D <
00155         T_Lifetime< Float_Weighted_Bin >
00156         , Float_Weighted_Bin
00157         , double, Even_Partition
00158         , double, Even_Partition
00159 > T_Histo_2D_FWED;
00160 
00161 
00162 
00163 // ***************************************************************************
00164 // * 2/ INSTANTIATIONS
00165 // ***************************************************************************
00166 
00167 #ifndef T_HISTOS_INSTANTIATED
00168 #define T_HISTOS_INSTANTIATED
00169         // This symbol is explicitly defined when *.ddl files include the
00170         // transient header H_T__Histograms.h to avoid duplicated
00171         // instantiations on DEC (other platforms cope with it correctly).
00172 
00173 // Lifetime:
00174 //
00175 template class T_Lifetime< Gravity_Bin_1D >;
00176 template class T_Lifetime< Weighted_Bin >;
00177 template class T_Lifetime< Profile_Bin >;
00178 template class T_Lifetime< Float_Weighted_Bin >; // For 2D histos.
00179 
00180 // ***************************************************************************
00181 // * 1D Histograms:
00182 // ***************************************************************************
00183 
00184 // Weighted_Bin:
00185 //
00186 template class T_Histo_1D <
00187         T_Lifetime< Weighted_Bin >
00188         , Weighted_Bin
00189         , Even_Partition
00190 >; // T_Histo_1D_WED
00191 
00192 template class T_Histo_1D <
00193         T_Lifetime< Weighted_Bin >
00194         , Weighted_Bin
00195         , T_Uneven_Partition
00196 >; // T_Histo_1D_WUD
00197 
00198 
00199 // Gravity_Bin_1D:
00200 //
00201 template class T_Histo_1D <
00202         T_Lifetime< Gravity_Bin_1D >
00203         , Gravity_Bin_1D
00204         , Even_Partition
00205 >; // T_Histo_1D_GED
00206 
00207 template class T_Histo_1D <
00208         T_Lifetime< Gravity_Bin_1D >
00209         , Gravity_Bin_1D
00210         , T_Uneven_Partition
00211 >; // T_Histo_1D_GUD
00212 
00213 
00214 //Profile_Bin:
00215 //
00216 template class T_Histo_1D <
00217         T_Lifetime< Profile_Bin >
00218         , Profile_Bin
00219         , Even_Partition
00220 >; // T_Histo_1D_PED
00221 
00222 template class T_Histo_1D <
00223         T_Lifetime< Profile_Bin >
00224         , Profile_Bin
00225         , T_Uneven_Partition
00226 >; // T_Histo_1D_PUD
00227 
00228 
00229 // ***************************************************************************
00230 // * 2D Histograms:
00231 // ***************************************************************************
00232 
00233 // Weighted_Bin:
00234 //
00235 template class T_Histo_2D <
00236         T_Lifetime< Weighted_Bin >
00237         , Weighted_Bin
00238         , double, Even_Partition
00239         , double, Even_Partition
00240 >; // T_Histo_2D_WED
00241 
00242 template class T_Histo_2D <
00243         T_Lifetime< Weighted_Bin >
00244         , Weighted_Bin
00245         , double, T_Uneven_Partition
00246         , double, T_Uneven_Partition
00247 >; // T_Histo_2D_WUD
00248 
00249 
00250 // Profile_Bin:
00251 //
00252 template class T_Histo_2D <
00253         T_Lifetime< Profile_Bin >
00254         , Profile_Bin
00255         , double, Even_Partition
00256         , double, Even_Partition
00257 >; // T_Histo_2D_PED
00258 
00259 template class T_Histo_2D <
00260         T_Lifetime< Profile_Bin >
00261         , Profile_Bin
00262         , double, T_Uneven_Partition
00263         , double, T_Uneven_Partition
00264 >; // T_Histo_2D_PUD
00265 
00266 
00267 // Float_Weighted_Bin:
00268 //
00269 template class T_Histo_2D <
00270         T_Lifetime< Float_Weighted_Bin >
00271         , Float_Weighted_Bin
00272         , double, Even_Partition
00273         , double, Even_Partition
00274 >; // T_Histo_2D_FWED
00275 
00276 
00277 
00278 #endif // ifndef T_HISTOS_INSTANTIATED
00279 
00280 
00281 #endif
00282 


Anaphe documentation generated by Doxygen (www.doxygen.org)