CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch12/src/DQM/CSCMonitorModule/interface/CSCDQM_HistoNames.h

Go to the documentation of this file.
00001 /*
00002  * =====================================================================================
00003  *
00004  *       Filename:  HistoNames.h
00005  *
00006  *    Description:  Histogram names for Global DQM 
00007  *
00008  *        Version:  1.0
00009  *        Created:  10/03/2008 11:54:31 AM
00010  *       Revision:  none
00011  *       Compiler:  gcc
00012  *
00013  *         Author:  Valdas Rapsevicius (VR), Valdas.Rapsevicius@cern.ch
00014  *        Company:  CERN, CH
00015  *
00016  * =====================================================================================
00017  */
00018 
00019 #ifndef CSCDQM_HistoNames_H
00020 #define CSCDQM_HistoNames_H 
00021 
00022 #include <boost/preprocessor/tuple/elem.hpp>
00023 #include <boost/preprocessor/seq/for_each_i.hpp>
00024 #include <boost/preprocessor/control/if.hpp>
00025 #include <boost/preprocessor/comparison/less.hpp>
00026 #include <boost/preprocessor/punctuation/comma_if.hpp>
00027 #include <boost/preprocessor/arithmetic/add.hpp>
00028 #include <boost/preprocessor/arithmetic/inc.hpp>
00029 #include <boost/preprocessor/slot/slot.hpp>
00030 #include <boost/preprocessor/stringize.hpp>
00031 
00032 namespace h {
00033 
00043 #define CONFIG_HISTONAMES_SEQ_01 \
00044   \
00045   (( CSC_ACTUAL_DMB_CFEB_DAV_FREQUENCY, "Actual_DMB_CFEB_DAV_Frequency" )) \
00046   (( CSC_ACTUAL_DMB_CFEB_DAV_MULTIPLICITY_FREQUENCY, "Actual_DMB_CFEB_DAV_multiplicity_Frequency" )) \
00047   (( CSC_ACTUAL_DMB_CFEB_DAV_MULTIPLICITY_RATE, "Actual_DMB_CFEB_DAV_multiplicity_Rate" )) \
00048   (( CSC_ACTUAL_DMB_CFEB_DAV_RATE, "Actual_DMB_CFEB_DAV_Rate" )) \
00049   (( CSC_ACTUAL_DMB_FEB_COMBINATIONS_DAV_FREQUENCY, "Actual_DMB_FEB_Combinations_DAV_Frequency" )) \
00050   (( CSC_ACTUAL_DMB_FEB_COMBINATIONS_DAV_RATE, "Actual_DMB_FEB_Combinations_DAV_Rate" )) \
00051   (( CSC_ACTUAL_DMB_FEB_DAV_FREQUENCY, "Actual_DMB_FEB_DAV_Frequency" )) \
00052   (( CSC_ACTUAL_DMB_FEB_DAV_RATE, "Actual_DMB_FEB_DAV_Rate" )) \
00053   (( CSC_ALCT1_VS_ALCT0_KEYWG, "ALCT1_vs_ALCT0_KeyWG" )) \
00054   (( CSC_ALCTTIME_LYXX, "ALCTTime_Ly%d" )) \
00055   (( CSC_ALCTTIME_LYXX_PROFILE, "ALCTTime_Ly%d_Profile" )) \
00056   (( CSC_ALCTXX_BXN, "ALCT%d_BXN" )) \
00057   (( CSC_ALCTXX_DTIME, "ALCT%d_dTime" )) \
00058   (( CSC_ALCTXX_DTIME_PROFILE, "ALCT%d_dTime_Profile" )) \
00059   (( CSC_ALCTXX_DTIME_VS_KEYWG, "ALCT%d_dTime_vs_KeyWG" )) \
00060   (( CSC_ALCTXX_KEYWG, "ALCT%d_KeyWG" )) \
00061   (( CSC_ALCTXX_PATTERN, "ALCT%d_Pattern" )) \
00062   (( CSC_ALCTXX_PATTERN_DISTR, "ALCT%d_Pattern_Distr" )) \
00063   (( CSC_ALCTXX_QUALITY, "ALCT%d_Quality" )) \
00064   (( CSC_ALCTXX_QUALITY_DISTR, "ALCT%d_Quality_Distr" )) \
00065   (( CSC_ALCTXX_QUALITY_PROFILE, "ALCT%d_Quality_Profile" )) \
00066   (( CSC_ALCT_BXN, "ALCT_BXN" )) \
00067   (( CSC_ALCT_BXN_VS_DMB_BXN, "ALCT_BXN_vs_DMB_BXN" )) \
00068   (( CSC_ALCT_DMB_BXN_DIFF, "ALCT_DMB_BXN_diff" )) \
00069   (( CSC_ALCT_DMB_L1A_DIFF, "ALCT_DMB_L1A_diff" )) \
00070   (( CSC_ALCT_L1A, "ALCT_L1A" )) \
00071   (( CSC_ALCT_LYXX_EFFICIENCY, "ALCT_Ly%d_Efficiency" )) \
00072   (( CSC_ALCT_LYXX_RATE, "ALCT_Ly%d_Rate" )) \
00073   (( CSC_ALCT_MATCH_TIME, "ALCT_Match_Time" )) \
00074   (( CSC_ALCT_NUMBER_EFFICIENCY, "ALCT_Number_Efficiency" )) \
00075   (( CSC_ALCT_NUMBER_OF_LAYERS_WITH_HITS, "ALCT_Number_Of_Layers_With_Hits" )) \
00076   (( CSC_ALCT_NUMBER_OF_WIREGROUPS_WITH_HITS, "ALCT_Number_Of_WireGroups_With_Hits" )) \
00077   (( CSC_ALCT_NUMBER_RATE, "ALCT_Number_Rate" )) \
00078   (( CSC_ALCT_WORD_COUNT, "ALCT_Word_Count" )) \
00079   (( CSC_BINCHECK_DATAFLOW_PROBLEMS_FREQUENCY, "BinCheck_DataFlow_Problems_Frequency" )) \
00080   (( CSC_BINCHECK_DATAFLOW_PROBLEMS_TABLE, "BinCheck_DataFlow_Problems_Table" )) \
00081   (( CSC_BINCHECK_ERRORSTAT_TABLE, "BinCheck_ErrorStat_Table" )) \
00082   (( CSC_BINCHECK_ERRORS_FREQUENCY, "BinCheck_Errors_Frequency" )) \
00083   (( CSC_EVENT_DISPLAY_NOXX, "Chamber_Event_Display_No%d" )) \
00084   (( CSC_CFEBXX_DMB_L1A_DIFF, "CFEB%d_DMB_L1A_diff" )) \
00085   (( CSC_CFEBXX_FREE_SCA_CELLS, "CFEB%d_Free_SCA_Cells" )) \
00086   (( CSC_CFEBXX_L1A_SYNC_TIME, "CFEB%d_L1A_Sync_Time" )) \
00087   (( CSC_CFEBXX_L1A_SYNC_TIME_DMB_DIFF, "CFEB%d_L1A_Sync_Time_DMB_diff" )) \
00088   (( CSC_CFEBXX_L1A_SYNC_TIME_VS_DMB, "CFEB%d_L1A_Sync_Time_vs_DMB" )) \
00089   (( CSC_CFEBXX_LCT_PHASE_VS_L1A_PHASE, "CFEB%d_LCT_PHASE_vs_L1A_PHASE" )) \
00090   (( CSC_CFEBXX_SCA_BLOCKS_LOCKED_BY_LCTS, "CFEB%d_SCA_Blocks_Locked_by_LCTs" )) \
00091   (( CSC_CFEBXX_SCA_BLOCKS_LOCKED_BY_LCTXL1, "CFEB%d_SCA_Blocks_Locked_by_LCTxL1" )) \
00092   (( CSC_CFEBXX_SCA_BLOCK_OCCUPANCY, "CFEB%d_SCA_Block_Occupancy" )) \
00093   (( CSC_CFEB_ACTIVESTRIPS_LYXX, "CFEB_ActiveStrips_Ly%d" )) \
00094   (( CSC_CFEB_ACTIVE_SAMPLES_VS_STRIP_LYXX, "CFEB_Active_Samples_vs_Strip_Ly%d" )) \
00095   (( CSC_CFEB_ACTIVE_SAMPLES_VS_STRIP_LYXX_PROFILE, "CFEB_Active_Samples_vs_Strip_Ly%d_Profile" )) \
00096   (( CSC_CFEB_AFEB_RAWHITS_TIMEBINS, "AFEB_RawHits_TimeBins" )) \
00097   (( CSC_CFEB_CLUSTERS_CHARGE_LY_XX, "CFEB_Clusters_Charge_Ly_%d" )) \
00098   (( CSC_CFEB_CLUSTER_DURATION_LY_XX, "CFEB_Cluster_Duration_Ly_%d" )) \
00099   (( CSC_CFEB_NUMBER_OF_CLUSTERS_LY_XX, "CFEB_Number_of_Clusters_Ly_%d" )) \
00100   (( CSC_CFEB_OUT_OFF_RANGE_STRIPS_LYXX, "CFEB_Out_Off_Range_Strips_Ly%d" )) \
00101   (( CSC_CFEB_PEDESTALRMS_SAMPLE_01_LYXX, "CFEB_PedestalRMS_Sample_01_Ly%d" )) \
00102   (( CSC_CFEB_PEDESTAL_WITHEMV_SAMPLE_01_LYXX, "CFEB_Pedestal_withEMV_Sample_01_Ly%d" )) \
00103   (( CSC_CFEB_PEDESTAL_WITHRMS_SAMPLE_01_LYXX, "CFEB_Pedestal_withRMS_Sample_01_Ly%d" )) \
00104   (( CSC_CFEB_PEDESTAL__WITHEMV__SAMPLE_01_LYXX, "CFEB_Pedestal(withEMV)_Sample_01_Ly%d" )) \
00105   (( CSC_CFEB_PEDESTAL__WITHRMS__SAMPLE_01_LYXX, "CFEB_Pedestal(withRMS)_Sample_01_Ly%d" )) \
00106   (( CSC_CFEB_SCA_CELL_PEAK_LY_XX, "CFEB_SCA_Cell_Peak_Ly_%d" )) \
00107   (( CSC_CFEB_WIDTH_OF_CLUSTERS_LY_XX, "CFEB_Width_of_Clusters_Ly_%d" )) \
00108   (( CSC_CLCT0_CLCT1_CLSSIFICATION, "CLCT0_CLCT1_Clssification" )) \
00109   (( CSC_CLCT0_CLSSIFICATION, "CLCT0_Clssification" )) \
00110   (( CSC_CLCT0_KEYDISTRIP_VS_ALCT0_KEYWIREGROUP, "CLCT0_KeyDiStrip_vs_ALCT0_KeyWiregroup" )) \
00111   (( CSC_CLCT1_VS_CLCT0_KEY_STRIP, "CLCT1_vs_CLCT0_Key_Strip" )) \
00112   (( CSC_CLCTTIME_LYXX, "CLCTTime_Ly%d" )) \
00113   (( CSC_CLCTTIME_LYXX_PROFILE, "CLCTTime_Ly%d_Profile" )) \
00114   (( CSC_CLCTXX_BXN, "CLCT%d_BXN" )) \
00115   (( CSC_CLCTXX_DISTRIP_PATTERN, "CLCT%d_DiStrip_Pattern" )) \
00116   (( CSC_CLCTXX_DISTRIP_QUALITY, "CLCT%d_DiStrip_Quality" )) \
00117   (( CSC_CLCTXX_DISTRIP_QUALITY_PROFILE, "CLCT%d_DiStrip_Quality_Profile" )) \
00118   (( CSC_CLCTXX_DTIME, "CLCT%d_dTime" )) \
00119   (( CSC_CLCTXX_DTIME_PROFILE, "CLCT%d_dTime_Profile" )) \
00120   (( CSC_CLCTXX_DTIME_VS_DISTRIP, "CLCT%d_dTime_vs_DiStrip" )) \
00121   (( CSC_CLCTXX_DTIME_VS_HALF_STRIP, "CLCT%d_dTime_vs_Half_Strip" )) \
00122   (( CSC_CLCTXX_HALF_STRIP_PATTERN, "CLCT%d_Half_Strip_Pattern" )) \
00123   (( CSC_CLCTXX_HALF_STRIP_QUALITY, "CLCT%d_Half_Strip_Quality" )) \
00124   (( CSC_CLCTXX_HALF_STRIP_QUALITY_DISTR, "CLCT%d_Half_Strip_Quality_Distr" )) \
00125   (( CSC_CLCTXX_HALF_STRIP_QUALITY_PROFILE, "CLCT%d_Half_Strip_Quality_Profile" )) \
00126   (( CSC_CLCTXX_KEYDISTRIP, "CLCT%d_KeyDiStrip" )) \
00127   (( CSC_CLCTXX_KEYHALFSTRIP, "CLCT%d_KeyHalfStrip" )) \
00128   (( CSC_CLCT_BXN, "CLCT_BXN" )) \
00129   (( CSC_CLCT_BXN_VS_DMB_BXN, "CLCT_BXN_vs_DMB_BXN" )) \
00130   (( CSC_CLCT_DMB_BXN_DIFF, "CLCT_DMB_BXN_diff" )) \
00131   (( CSC_CLCT_DMB_L1A_DIFF, "CLCT_DMB_L1A_diff" )) \
00132   (( CSC_CLCT_HALF_STRIP_PATTERN_DISTR, "CLCT%d_Half_Strip_Pattern_Distr" )) \
00133   (( CSC_CLCT_L1A, "CLCT_L1A" )) \
00134   (( CSC_CLCT_LYXX_EFFICIENCY, "CLCT_Ly%d_Efficiency" )) \
00135   (( CSC_CLCT_LYXX_RATE, "CLCT_Ly%d_Rate" )) \
00136   (( CSC_CLCT_NUMBER, "CLCT_Number" )) \
00137   (( CSC_CLCT_NUMBER_OF_HALFSTRIPS_WITH_HITS, "CLCT_Number_Of_HalfStrips_With_Hits" )) \
00138   (( CSC_CLCT_NUMBER_OF_LAYERS_WITH_HITS, "CLCT_Number_Of_Layers_With_Hits" )) \
00139   (( CSC_CLCT_NUMBER_RATE, "CLCT_Number_Rate" )) \
00140   (( CSC_CSC_EFFICIENCY, "CSC_Efficiency" )) \
00141   (( CSC_CSC_RATE, "CSC_Rate" )) \
00142   (( CSC_DMB_BXN_DISTRIB, "DMB_BXN_Distrib" )) \
00143   (( CSC_DMB_BXN_VS_DDU_BXN, "DMB_BXN_vs_DDU_BXN" )) \
00144   (( CSC_DMB_CFEB_ACTIVE, "DMB_CFEB_Active" )) \
00145   (( CSC_DMB_CFEB_ACTIVE_VS_DAV, "DMB_CFEB_Active_vs_DAV" )) \
00146   (( CSC_DMB_CFEB_DAV, "DMB_CFEB_DAV" )) \
00147   (( CSC_DMB_CFEB_DAV_MULTIPLICITY, "DMB_CFEB_DAV_multiplicity" )) \
00148   (( CSC_DMB_CFEB_DAV_MULTIPLICITY_UNPACKING_INEFFICIENCY, "DMB_CFEB_DAV_multiplicity_Unpacking_Inefficiency" )) \
00149   (( CSC_DMB_CFEB_DAV_UNPACKING_INEFFICIENCY, "DMB_CFEB_DAV_Unpacking_Inefficiency" )) \
00150   (( CSC_DMB_CFEB_MOVLP, "DMB_CFEB_MOVLP" )) \
00151   (( CSC_DMB_CFEB_SYNC, "DMB_CFEB_Sync" )) \
00152   (( CSC_DMB_DDU_BXN_DIFF, "DMB_DDU_BXN_diff" )) \
00153   (( CSC_DMB_DDU_L1A_DIFF, "DMB_DDU_L1A_diff" )) \
00154   (( CSC_DMB_FEB_COMBINATIONS_DAV_EFFICIENCY, "DMB_FEB_Combinations_DAV_Efficiency" )) \
00155   (( CSC_DMB_FEB_COMBINATIONS_DAV_RATE, "DMB_FEB_Combinations_DAV_Rate" )) \
00156   (( CSC_DMB_FEB_COMBINATIONS_DAV_UNPACKING_INEFFICIENCY, "DMB_FEB_Combinations_DAV_Unpacking_Inefficiency" )) \
00157   (( CSC_DMB_FEB_COMBINATIONS_UNPACKED_VS_DAV, "DMB_FEB_Combinations_Unpacked_vs_DAV" )) \
00158   (( CSC_DMB_FEB_DAV_EFFICIENCY, "DMB_FEB_DAV_Efficiency" )) \
00159   (( CSC_DMB_FEB_DAV_RATE, "DMB_FEB_DAV_Rate" )) \
00160   (( CSC_DMB_FEB_DAV_UNPACKING_INEFFICIENCY, "DMB_FEB_DAV_Unpacking_Inefficiency" )) \
00161   (( CSC_DMB_FEB_TIMEOUTS, "DMB_FEB_Timeouts" )) \
00162   (( CSC_DMB_FEB_UNPACKED_VS_DAV, "DMB_FEB_Unpacked_vs_DAV" )) \
00163   (( CSC_DMB_FIFO_STATS, "DMB_FIFO_stats" )) \
00164   (( CSC_DMB_L1A_DISTRIB, "DMB_L1A_Distrib" )) \
00165   (( CSC_DMB_L1A_VS_ALCT_L1A, "DMB_L1A_vs_ALCT_L1A" )) \
00166   (( CSC_DMB_L1A_VS_CLCT_L1A, "DMB_L1A_vs_CLCT_L1A" )) \
00167   (( CSC_DMB_L1A_VS_DDU_L1A, "DMB_L1A_vs_DDU_L1A" )) \
00168   (( CSC_DMB_L1_PIPE, "DMB_L1_Pipe" )) \
00169   (( CSC_LCT0_MATCH_BXN_DIFFERENCE, "LCT0_Match_BXN_Difference" )) \
00170   (( CSC_LCT1_MATCH_BXN_DIFFERENCE, "LCT1_Match_BXN_Difference" )) \
00171   (( CSC_LCT_MATCH_STATUS, "LCT_Match_Status" )) \
00172   (( CSC_TMB_ALCT_BXN_DIFF, "TMB_ALCT_BXN_diff" )) \
00173   (( CSC_TMB_ALCT_L1A_DIFF, "TMB_ALCT_L1A_diff" )) \
00174   (( CSC_TMB_BXN_VS_ALCT_BXN, "TMB_BXN_vs_ALCT_BXN" )) \
00175   (( CSC_TMB_L1A_VS_ALCT_L1A, "TMB_L1A_vs_ALCT_L1A" )) \
00176   (( CSC_TMB_WORD_COUNT, "TMB_Word_Count" )) \
00177   (( CSC_CFEB_COMPARATORS_TIMESAMPLES, "CFEB_Comparators_TimeSamples" )) \
00178   (( DDU_BUFFER_SIZE, "Buffer_Size" )) \
00179   (( DDU_BXN, "BXN" )) \
00180   (( DDU_CSC_ERRORS, "CSC_Errors" )) \
00181   (( DDU_CSC_ERRORS_RATE, "CSC_Errors_Rate" )) \
00182   (( DDU_CSC_WARNINGS, "CSC_Warnings" )) \
00183   (( DDU_CSC_WARNINGS_RATE, "CSC_Warnings_Rate" )) \
00184   (( DDU_DMB_ACTIVE_HEADER_COUNT, "DMB_Active_Header_Count" )) \
00185   (( DDU_DMB_CONNECTED_INPUTS, "DMB_Connected_Inputs" )) \
00186   (( DDU_DMB_CONNECTED_INPUTS_RATE, "DMB_Connected_Inputs_Rate" )) \
00187   (( DDU_DMB_DAV_HEADER_COUNT_VS_DMB_ACTIVE_HEADER_COUNT, "DMB_DAV_Header_Count_vs_DMB_Active_Header_Count" )) \
00188   (( DDU_DMB_DAV_HEADER_OCCUPANCY, "DMB_DAV_Header_Occupancy" )) \
00189   (( DDU_DMB_DAV_HEADER_OCCUPANCY_RATE, "DMB_DAV_Header_Occupancy_Rate" )) \
00190   (( DDU_DMB_UNPACKED_VS_DAV, "DMB_unpacked_vs_DAV" )) \
00191   (( DDU_L1A_INCREMENT, "L1A_Increment" )) \
00192   (( DDU_READOUT_ERRORS, "Readout_Errors" )) \
00193   (( DDU_TRAILER_ERRORSTAT_FREQUENCY, "Trailer_ErrorStat_Frequency" )) \
00194   (( DDU_TRAILER_ERRORSTAT_RATE, "Trailer_ErrorStat_Rate" )) \
00195   (( DDU_TRAILER_ERRORSTAT_TABLE, "Trailer_ErrorStat_Table" )) \
00196   (( DDU_WORD_COUNT, "Word_Count" )) \
00197   (( EMU_ALL_DDUS_AVERAGE_EVENT_SIZE, "All_DDUs_Average_Event_Size" )) \
00198   (( EMU_ALL_DDUS_AVERAGE_INPUTS_WITH_DATA, "All_DDUs_Average_Inputs_with_Data" )) \
00199   (( EMU_ALL_DDUS_AVERAGE_LIVE_INPUTS, "All_DDUs_Average_Live_Inputs" )) \
00200   (( EMU_ALL_DDUS_EVENT_SIZE, "All_DDUs_Event_Size" )) \
00201   (( EMU_ALL_DDUS_FORMAT_ERRORS, "All_DDUs_Format_Errors" )) \
00202   (( EMU_ALL_DDUS_INPUTS_ERRORS, "All_DDUs_Inputs_Errors" )) \
00203   (( EMU_ALL_DDUS_INPUTS_WARNINGS, "All_DDUs_Inputs_Warnings" )) \
00204   (( EMU_ALL_DDUS_INPUTS_WITH_DATA, "All_DDUs_Inputs_with_Data" )) \
00205   (( EMU_ALL_DDUS_IN_READOUT, "All_DDUs_in_Readout" )) \
00206   (( EMU_ALL_DDUS_L1A_INCREMENT, "All_DDUs_L1A_Increment" )) \
00207   (( EMU_ALL_DDUS_LIVE_INPUTS, "All_DDUs_Live_Inputs" )) \
00208   (( EMU_ALL_DDUS_TRAILER_ERRORS, "All_DDUs_Trailer_Errors" )) \
00209   (( EMU_ALL_READOUT_ERRORS, "All_Readout_Errors" )) \
00210   (( EMU_CSC_AFEB_ENDCAP_MINUS_RAWHITS_TIME, "Minus_endcap_AFEB_RawHits_Time" )) \
00211   (( EMU_CSC_AFEB_ENDCAP_PLUS_RAWHITS_TIME, "Plus_endcap_AFEB_RawHits_Time" )) \
00212   (( EMU_CSC_AFEB_RAWHITS_TIME_MEAN, "CSC_AFEB_RawHits_Time_mean" )) \
00213   (( EMU_CSC_AFEB_RAWHITS_TIME_RMS, "CSC_AFEB_RawHits_Time_rms" )) \
00214   (( EMU_CSC_ALCT0_BXN_MEAN, "CSC_ALCT0_BXN_mean" )) \
00215   (( EMU_CSC_ALCT0_BXN_RMS, "CSC_ALCT0_BXN_rms" )) \
00216   (( EMU_CSC_ALCT0_ENDCAP_MINUS_DTIME, "Minus_endcap_ALCT0_dTime" )) \
00217   (( EMU_CSC_ALCT0_ENDCAP_PLUS_DTIME, "Plus_endcap_ALCT0_dTime" )) \
00218   (( EMU_CSC_ALCT0_QUALITY, "CSC_ALCT0_Quality" )) \
00219   (( EMU_CSC_ALCT_CLCT_MATCH_MEAN, "CSC_ALCT_CLCT_Match_mean" )) \
00220   (( EMU_CSC_ALCT_CLCT_MATCH_RMS, "CSC_ALCT_CLCT_Match_rms" )) \
00221   (( EMU_CSC_ALCT_PLANES_WITH_HITS, "CSC_ALCT_Planes_with_Hits" )) \
00222   (( EMU_CSC_CLCT0_BXN_MEAN, "CSC_CLCT0_BXN_mean" )) \
00223   (( EMU_CSC_CLCT0_QUALITY, "CSC_CLCT0_Quality" )) \
00224   (( EMU_CSC_CLCT_PLANES_WITH_HITS, "CSC_CLCT_Planes_with_Hits" )) \
00225   (( EMU_CSC_DMB_INPUT_FIFO_FULL, "CSC_DMB_input_fifo_full" )) \
00226   (( EMU_CSC_DMB_INPUT_FIFO_FULL_FRACT, "CSC_DMB_input_fifo_full_Fract" )) \
00227   (( EMU_CSC_DMB_INPUT_TIMEOUT, "CSC_DMB_input_timeout" )) \
00228   (( EMU_CSC_DMB_INPUT_TIMEOUT_FRACT, "CSC_DMB_input_timeout_Fract" )) \
00229   (( EMU_CSC_ENDCAP_MINUS_ALCT_CLCT_MATCH_TIME, "Minus_endcap_ALCT_CLCT_Match_Time" )) \
00230   (( EMU_CSC_ENDCAP_MINUS_CLCT0_DTIME, "Minus_endcap_CLCT0_dTime" )) \
00231   (( EMU_CSC_ENDCAP_PLUS_ALCT_CLCT_MATCH_TIME, "Plus_endcap_ALCT_CLCT_Match_Time" )) \
00232   (( EMU_CSC_ENDCAP_PLUS_CLCT0_DTIME, "Plus_endcap_CLCT0_dTime" )) \
00233   (( EMU_CSC_ENDCAP_PLUS_CFEB_COMPARATORS_TIME, "Plus_endcap_CFEB_Comparators_Time" )) \
00234   (( EMU_CSC_ENDCAP_MINUS_CFEB_COMPARATORS_TIME, "Minus_endcap_CFEB_Comparators_Time" )) \
00235   (( EMU_CSC_CFEB_COMPARATORS_TIME_MEAN, "CSC_CFEB_Comparators_Time_mean" )) \
00236   (( EMU_CSC_CFEB_COMPARATORS_TIME_RMS, "CSC_CFEB_Comparators_Time_rms" )) \
00237   (( EMU_CSC_FORMAT_ERRORS, "CSC_Format_Errors" )) \
00238   (( EMU_CSC_FORMAT_ERRORS_FRACT, "CSC_Format_Errors_Fract" )) \
00239   (( EMU_CSC_FORMAT_WARNINGS, "CSC_Format_Warnings" )) \
00240   (( EMU_CSC_FORMAT_WARNINGS_FRACT, "CSC_Format_Warnings_Fract" )) \
00241   (( EMU_CSC_L1A_OUT_OF_SYNC, "CSC_L1A_out_of_sync" )) \
00242   (( EMU_CSC_L1A_OUT_OF_SYNC_FRACT, "CSC_L1A_out_of_sync_Fract" )) \
00243   (( EMU_CSC_REPORTING, "CSC_Reporting" )) \
00244   (( EMU_CSC_STATS_CFEB_BWORDS, "CSC_STATS_cfeb_bwords" )) \
00245   (( EMU_CSC_STATS_FIFOFULL_ERR, "CSC_STATS_fifofull_err" )) \
00246   (( EMU_CSC_STATS_FORMAT_ERR, "CSC_STATS_format_err" )) \
00247   (( EMU_CSC_STATS_INPUTTO_ERR, "CSC_STATS_inputto_err" )) \
00248   (( EMU_CSC_STATS_L1SYNC_ERR, "CSC_STATS_l1sync_err" )) \
00249   (( EMU_CSC_STATS_OCCUPANCY, "CSC_STATS_occupancy" )) \
00250   (( EMU_CSC_STATS_SUMMARY, "CSC_STATS_summary" )) \
00251   (( EMU_CSC_STATS_WO_ALCT, "CSC_STATS_wo_alct" )) \
00252   (( EMU_CSC_STATS_WO_CFEB, "CSC_STATS_wo_cfeb" )) \
00253   (( EMU_CSC_STATS_WO_CLCT, "CSC_STATS_wo_clct" )) \
00254   (( EMU_CSC_UNPACKED, "CSC_Unpacked" )) \
00255   (( CSC_CFEB_SCA_CELLPEAK_TIME, "CFEB_SCA_CellPeak_Time" )) \
00256   (( EMU_CSC_PLUS_ENDCAP_CFEB_SCA_CELLPEAK_TIME, "Plus_endcap_CFEB_SCA_CellPeak_Time" )) \
00257   (( EMU_CSC_MINUS_ENDCAP_CFEB_SCA_CELLPEAK_TIME, "Minus_endcap_CFEB_SCA_CellPeak_Time" )) \
00258   (( EMU_CSC_CFEB_SCA_CELLPEAK_TIME_MEAN, "CSC_CFEB_SCA_CellPeak_Time_mean" )) \
00259   (( EMU_CSC_CFEB_SCA_CELLPEAK_TIME_RMS, "CSC_CFEB_SCA_CellPeak_Time_rms" )) \
00260   (( EMU_CSC_UNPACKED_FRACT, "CSC_Unpacked_Fract" )) \
00261   (( EMU_CSC_UNPACKED_WITH_ERRORS, "CSC_Unpacked_with_errors" )) \
00262   (( EMU_CSC_WO_ALCT, "CSC_wo_ALCT" )) \
00263   (( EMU_CSC_STANDBY, "CSC_standby" )) \
00264   (( EMU_CSC_WO_ALCT_FRACT, "CSC_wo_ALCT_Fract" )) \
00265   (( EMU_CSC_WO_CFEB, "CSC_wo_CFEB" )) \
00266   (( EMU_CSC_WO_CFEB_FRACT, "CSC_wo_CFEB_Fract" )) \
00267   (( EMU_CSC_WO_CLCT, "CSC_wo_CLCT" )) \
00268   (( EMU_CSC_WO_CLCT_FRACT, "CSC_wo_CLCT_Fract" )) \
00269   (( EMU_DDU_BXN, "All_DDUs_BXNs" )) \
00270   (( EMU_DMB_FORMAT_ERRORS, "DMB_Format_Errors" )) \
00271   (( EMU_DMB_FORMAT_ERRORS_FRACT, "DMB_Format_Errors_Fract" )) \
00272   (( EMU_DMB_FORMAT_WARNINGS, "DMB_Format_Warnings" )) \
00273   (( EMU_DMB_FORMAT_WARNINGS_FRACT, "DMB_Format_Warnings_Fract" )) \
00274   (( EMU_DMB_INPUT_FIFO_FULL, "DMB_input_fifo_full" )) \
00275   (( EMU_DMB_INPUT_FIFO_FULL_FRACT, "DMB_input_fifo_full_Fract" )) \
00276   (( EMU_DMB_INPUT_TIMEOUT, "DMB_input_timeout" )) \
00277   (( EMU_DMB_INPUT_TIMEOUT_FRACT, "DMB_input_timeout_Fract" )) \
00278   (( EMU_DMB_L1A_OUT_OF_SYNC, "DMB_L1A_out_of_sync" )) \
00279   (( EMU_DMB_L1A_OUT_OF_SYNC_FRACT, "DMB_L1A_out_of_sync_Fract" )) \
00280   (( EMU_DMB_REPORTING, "DMB_Reporting" )) \
00281   (( EMU_DMB_UNPACKED, "DMB_Unpacked" )) \
00282   (( EMU_DMB_UNPACKED_FRACT, "DMB_Unpacked_Fract" )) \
00283   (( EMU_DMB_UNPACKED_WITH_ERRORS, "DMB_Unpacked_with_errors" )) \
00284   (( EMU_DMB_WO_ALCT, "DMB_wo_ALCT" )) \
00285   (( EMU_DMB_WO_ALCT_FRACT, "DMB_wo_ALCT_Fract" )) \
00286   (( EMU_DMB_WO_CFEB, "DMB_wo_CFEB" )) \
00287   (( EMU_DMB_WO_CFEB_FRACT, "DMB_wo_CFEB_Fract" )) \
00288   (( EMU_DMB_WO_CLCT, "DMB_wo_CLCT" )) \
00289   (( EMU_DMB_WO_CLCT_FRACT, "DMB_wo_CLCT_Fract" )) \
00290   (( EMU_FED_ENTRIES, "FEDEntries" )) \
00291   (( EMU_FED_FATAL, "FEDFatal" )) \
00292   (( EMU_FED_FORMAT_FATAL, "FEDFormatFatal" )) \
00293   (( EMU_FED_NONFATAL, "FEDNonFatal" )) \
00294   (( EMU_PHYSICS_EMU, "Physics_EMU" )) \
00295   (( EMU_PHYSICS_ME1, "Physics_ME1" )) \
00296   (( EMU_PHYSICS_ME2, "Physics_ME2" )) \
00297   (( EMU_PHYSICS_ME3, "Physics_ME3" )) \
00298   (( EMU_PHYSICS_ME4, "Physics_ME4" ))
00299 
00300 #define CONFIG_HISTONAMES_SEQ_02 \
00301   \
00302   (( EMU_EVENT_DISPLAY_ANODE, "Event_Display_Anode" )) \
00303   (( EMU_EVENT_DISPLAY_CATHODE, "Event_Display_Cathode" )) \
00304   (( EMU_EVENT_DISPLAY_XY, "Event_Display_XY" )) \
00305   (( PAR_REPORT_SUMMARY, "reportSummary" )) \
00306   (( PAR_CSC_SIDEMINUS, "CSC_SideMinus" )) \
00307   (( PAR_CSC_SIDEMINUS_STATION01, "CSC_SideMinus_Station01" )) \
00308   (( PAR_CSC_SIDEMINUS_STATION01_RING01, "CSC_SideMinus_Station01_Ring01" )) \
00309   (( PAR_CSC_SIDEMINUS_STATION01_RING02, "CSC_SideMinus_Station01_Ring02" )) \
00310   (( PAR_CSC_SIDEMINUS_STATION01_RING03, "CSC_SideMinus_Station01_Ring03" )) \
00311   (( PAR_CSC_SIDEMINUS_STATION02, "CSC_SideMinus_Station02" )) \
00312   (( PAR_CSC_SIDEMINUS_STATION02_RING01, "CSC_SideMinus_Station02_Ring01" )) \
00313   (( PAR_CSC_SIDEMINUS_STATION02_RING02, "CSC_SideMinus_Station02_Ring02" )) \
00314   (( PAR_CSC_SIDEMINUS_STATION03, "CSC_SideMinus_Station03" )) \
00315   (( PAR_CSC_SIDEMINUS_STATION03_RING01, "CSC_SideMinus_Station03_Ring01" )) \
00316   (( PAR_CSC_SIDEMINUS_STATION03_RING02, "CSC_SideMinus_Station03_Ring02" )) \
00317   (( PAR_CSC_SIDEMINUS_STATION04, "CSC_SideMinus_Station04" )) \
00318   (( PAR_CSC_SIDEMINUS_STATION04_RING01, "CSC_SideMinus_Station04_Ring01" )) \
00319   (( PAR_CSC_SIDEMINUS_STATION04_RING02, "CSC_SideMinus_Station04_Ring02" )) \
00320   (( PAR_CSC_SIDEPLUS, "CSC_SidePlus" )) \
00321   (( PAR_CSC_SIDEPLUS_STATION01, "CSC_SidePlus_Station01" )) \
00322   (( PAR_CSC_SIDEPLUS_STATION01_RING01, "CSC_SidePlus_Station01_Ring01" )) \
00323   (( PAR_CSC_SIDEPLUS_STATION01_RING02, "CSC_SidePlus_Station01_Ring02" )) \
00324   (( PAR_CSC_SIDEPLUS_STATION01_RING03, "CSC_SidePlus_Station01_Ring03" )) \
00325   (( PAR_CSC_SIDEPLUS_STATION02, "CSC_SidePlus_Station02" )) \
00326   (( PAR_CSC_SIDEPLUS_STATION02_RING01, "CSC_SidePlus_Station02_Ring01" )) \
00327   (( PAR_CSC_SIDEPLUS_STATION02_RING02, "CSC_SidePlus_Station02_Ring02" )) \
00328   (( PAR_CSC_SIDEPLUS_STATION03, "CSC_SidePlus_Station03" )) \
00329   (( PAR_CSC_SIDEPLUS_STATION03_RING01, "CSC_SidePlus_Station03_Ring01" )) \
00330   (( PAR_CSC_SIDEPLUS_STATION03_RING02, "CSC_SidePlus_Station03_Ring02" )) \
00331   (( PAR_CSC_SIDEPLUS_STATION04, "CSC_SidePlus_Station04" )) \
00332   (( PAR_CSC_SIDEPLUS_STATION04_RING01, "CSC_SidePlus_Station04_Ring01" )) \
00333   (( PAR_CSC_SIDEPLUS_STATION04_RING02, "CSC_SidePlus_Station04_Ring02" )) \
00334   (( PAR_CRT_SUMMARY, "CertificationSummary" )) \
00335   (( PAR_CRT_SIDEMINUS, "CSC_SideMinus" )) \
00336   (( PAR_CRT_SIDEMINUS_STATION01, "CSC_SideMinus_Station01" )) \
00337   (( PAR_CRT_SIDEMINUS_STATION01_RING01, "CSC_SideMinus_Station01_Ring01" )) \
00338   (( PAR_CRT_SIDEMINUS_STATION01_RING02, "CSC_SideMinus_Station01_Ring02" )) \
00339   (( PAR_CRT_SIDEMINUS_STATION01_RING03, "CSC_SideMinus_Station01_Ring03" )) \
00340   (( PAR_CRT_SIDEMINUS_STATION02, "CSC_SideMinus_Station02" )) \
00341   (( PAR_CRT_SIDEMINUS_STATION02_RING01, "CSC_SideMinus_Station02_Ring01" )) \
00342   (( PAR_CRT_SIDEMINUS_STATION02_RING02, "CSC_SideMinus_Station02_Ring02" )) \
00343   (( PAR_CRT_SIDEMINUS_STATION03, "CSC_SideMinus_Station03" )) \
00344   (( PAR_CRT_SIDEMINUS_STATION03_RING01, "CSC_SideMinus_Station03_Ring01" )) \
00345   (( PAR_CRT_SIDEMINUS_STATION03_RING02, "CSC_SideMinus_Station03_Ring02" )) \
00346   (( PAR_CRT_SIDEMINUS_STATION04, "CSC_SideMinus_Station04" )) \
00347   (( PAR_CRT_SIDEMINUS_STATION04_RING01, "CSC_SideMinus_Station04_Ring01" )) \
00348   (( PAR_CRT_SIDEMINUS_STATION04_RING02, "CSC_SideMinus_Station04_Ring02" )) \
00349   (( PAR_CRT_SIDEPLUS, "CSC_SidePlus" )) \
00350   (( PAR_CRT_SIDEPLUS_STATION01, "CSC_SidePlus_Station01" )) \
00351   (( PAR_CRT_SIDEPLUS_STATION01_RING01, "CSC_SidePlus_Station01_Ring01" )) \
00352   (( PAR_CRT_SIDEPLUS_STATION01_RING02, "CSC_SidePlus_Station01_Ring02" )) \
00353   (( PAR_CRT_SIDEPLUS_STATION01_RING03, "CSC_SidePlus_Station01_Ring03" )) \
00354   (( PAR_CRT_SIDEPLUS_STATION02, "CSC_SidePlus_Station02" )) \
00355   (( PAR_CRT_SIDEPLUS_STATION02_RING01, "CSC_SidePlus_Station02_Ring01" )) \
00356   (( PAR_CRT_SIDEPLUS_STATION02_RING02, "CSC_SidePlus_Station02_Ring02" )) \
00357   (( PAR_CRT_SIDEPLUS_STATION03, "CSC_SidePlus_Station03" )) \
00358   (( PAR_CRT_SIDEPLUS_STATION03_RING01, "CSC_SidePlus_Station03_Ring01" )) \
00359   (( PAR_CRT_SIDEPLUS_STATION03_RING02, "CSC_SidePlus_Station03_Ring02" )) \
00360   (( PAR_CRT_SIDEPLUS_STATION04, "CSC_SidePlus_Station04" )) \
00361   (( PAR_CRT_SIDEPLUS_STATION04_RING01, "CSC_SidePlus_Station04_Ring01" )) \
00362   (( PAR_CRT_SIDEPLUS_STATION04_RING02, "CSC_SidePlus_Station04_Ring02" )) \
00363   (( PAR_DAQ_SUMMARY, "DAQSummary" )) \
00364   (( PAR_DAQ_SIDEMINUS, "CSC_SideMinus" )) \
00365   (( PAR_DAQ_SIDEMINUS_STATION01, "CSC_SideMinus_Station01" )) \
00366   (( PAR_DAQ_SIDEMINUS_STATION01_RING01, "CSC_SideMinus_Station01_Ring01" )) \
00367   (( PAR_DAQ_SIDEMINUS_STATION01_RING02, "CSC_SideMinus_Station01_Ring02" )) \
00368   (( PAR_DAQ_SIDEMINUS_STATION01_RING03, "CSC_SideMinus_Station01_Ring03" )) \
00369   (( PAR_DAQ_SIDEMINUS_STATION02, "CSC_SideMinus_Station02" )) \
00370   (( PAR_DAQ_SIDEMINUS_STATION02_RING01, "CSC_SideMinus_Station02_Ring01" )) \
00371   (( PAR_DAQ_SIDEMINUS_STATION02_RING02, "CSC_SideMinus_Station02_Ring02" )) \
00372   (( PAR_DAQ_SIDEMINUS_STATION03, "CSC_SideMinus_Station03" )) \
00373   (( PAR_DAQ_SIDEMINUS_STATION03_RING01, "CSC_SideMinus_Station03_Ring01" )) \
00374   (( PAR_DAQ_SIDEMINUS_STATION03_RING02, "CSC_SideMinus_Station03_Ring02" )) \
00375   (( PAR_DAQ_SIDEMINUS_STATION04, "CSC_SideMinus_Station04" )) \
00376   (( PAR_DAQ_SIDEMINUS_STATION04_RING01, "CSC_SideMinus_Station04_Ring01" )) \
00377   (( PAR_DAQ_SIDEMINUS_STATION04_RING02, "CSC_SideMinus_Station04_Ring02" )) \
00378   (( PAR_DAQ_SIDEPLUS, "CSC_SidePlus" )) \
00379   (( PAR_DAQ_SIDEPLUS_STATION01, "CSC_SidePlus_Station01" )) \
00380   (( PAR_DAQ_SIDEPLUS_STATION01_RING01, "CSC_SidePlus_Station01_Ring01" )) \
00381   (( PAR_DAQ_SIDEPLUS_STATION01_RING02, "CSC_SidePlus_Station01_Ring02" )) \
00382   (( PAR_DAQ_SIDEPLUS_STATION01_RING03, "CSC_SidePlus_Station01_Ring03" )) \
00383   (( PAR_DAQ_SIDEPLUS_STATION02, "CSC_SidePlus_Station02" )) \
00384   (( PAR_DAQ_SIDEPLUS_STATION02_RING01, "CSC_SidePlus_Station02_Ring01" )) \
00385   (( PAR_DAQ_SIDEPLUS_STATION02_RING02, "CSC_SidePlus_Station02_Ring02" )) \
00386   (( PAR_DAQ_SIDEPLUS_STATION03, "CSC_SidePlus_Station03" )) \
00387   (( PAR_DAQ_SIDEPLUS_STATION03_RING01, "CSC_SidePlus_Station03_Ring01" )) \
00388   (( PAR_DAQ_SIDEPLUS_STATION03_RING02, "CSC_SidePlus_Station03_Ring02" )) \
00389   (( PAR_DAQ_SIDEPLUS_STATION04, "CSC_SidePlus_Station04" )) \
00390   (( PAR_DAQ_SIDEPLUS_STATION04_RING01, "CSC_SidePlus_Station04_Ring01" )) \
00391   (( PAR_DAQ_SIDEPLUS_STATION04_RING02, "CSC_SidePlus_Station04_Ring02" )) \
00392   (( PAR_DCS_SUMMARY, "DCSSummary" )) \
00393   (( PAR_DCS_SIDEMINUS, "CSC_SideMinus" )) \
00394   (( PAR_DCS_SIDEMINUS_STATION01, "CSC_SideMinus_Station01" )) \
00395   (( PAR_DCS_SIDEMINUS_STATION01_RING01, "CSC_SideMinus_Station01_Ring01" )) \
00396   (( PAR_DCS_SIDEMINUS_STATION01_RING02, "CSC_SideMinus_Station01_Ring02" )) \
00397   (( PAR_DCS_SIDEMINUS_STATION01_RING03, "CSC_SideMinus_Station01_Ring03" )) \
00398   (( PAR_DCS_SIDEMINUS_STATION02, "CSC_SideMinus_Station02" )) \
00399   (( PAR_DCS_SIDEMINUS_STATION02_RING01, "CSC_SideMinus_Station02_Ring01" )) \
00400   (( PAR_DCS_SIDEMINUS_STATION02_RING02, "CSC_SideMinus_Station02_Ring02" )) \
00401   (( PAR_DCS_SIDEMINUS_STATION03, "CSC_SideMinus_Station03" )) \
00402   (( PAR_DCS_SIDEMINUS_STATION03_RING01, "CSC_SideMinus_Station03_Ring01" )) \
00403   (( PAR_DCS_SIDEMINUS_STATION03_RING02, "CSC_SideMinus_Station03_Ring02" )) \
00404   (( PAR_DCS_SIDEMINUS_STATION04, "CSC_SideMinus_Station04" )) \
00405   (( PAR_DCS_SIDEMINUS_STATION04_RING01, "CSC_SideMinus_Station04_Ring01" )) \
00406   (( PAR_DCS_SIDEMINUS_STATION04_RING02, "CSC_SideMinus_Station04_Ring02" )) \
00407   (( PAR_DCS_SIDEPLUS, "CSC_SidePlus" )) \
00408   (( PAR_DCS_SIDEPLUS_STATION01, "CSC_SidePlus_Station01" )) \
00409   (( PAR_DCS_SIDEPLUS_STATION01_RING01, "CSC_SidePlus_Station01_Ring01" )) \
00410   (( PAR_DCS_SIDEPLUS_STATION01_RING02, "CSC_SidePlus_Station01_Ring02" )) \
00411   (( PAR_DCS_SIDEPLUS_STATION01_RING03, "CSC_SidePlus_Station01_Ring03" )) \
00412   (( PAR_DCS_SIDEPLUS_STATION02, "CSC_SidePlus_Station02" )) \
00413   (( PAR_DCS_SIDEPLUS_STATION02_RING01, "CSC_SidePlus_Station02_Ring01" )) \
00414   (( PAR_DCS_SIDEPLUS_STATION02_RING02, "CSC_SidePlus_Station02_Ring02" )) \
00415   (( PAR_DCS_SIDEPLUS_STATION03, "CSC_SidePlus_Station03" )) \
00416   (( PAR_DCS_SIDEPLUS_STATION03_RING01, "CSC_SidePlus_Station03_Ring01" )) \
00417   (( PAR_DCS_SIDEPLUS_STATION03_RING02, "CSC_SidePlus_Station03_Ring02" )) \
00418   (( PAR_DCS_SIDEPLUS_STATION04, "CSC_SidePlus_Station04" )) \
00419   (( PAR_DCS_SIDEPLUS_STATION04_RING01, "CSC_SidePlus_Station04_Ring01" )) \
00420   (( PAR_DCS_SIDEPLUS_STATION04_RING02, "CSC_SidePlus_Station04_Ring02" )) \
00421   \
00422   \
00423 
00424 #define BOOST_PP_VALUE BOOST_PP_SEQ_SIZE(CONFIG_HISTONAMES_SEQ_01) + BOOST_PP_SEQ_SIZE(CONFIG_HISTONAMES_SEQ_02)
00425 #include BOOST_PP_ASSIGN_SLOT(1)
00426 
00428 #define CONFIG_MACRO_ID(r, data, i, elem) \
00429   const HistoId BOOST_PP_TUPLE_ELEM(2, 0, elem) = data + i;
00430 
00432 #define CONFIG_MACRO_NAME(r, data, i, elem) \
00433   BOOST_PP_TUPLE_ELEM(2, 1, elem)\
00434   BOOST_PP_COMMA_IF(BOOST_PP_LESS(BOOST_PP_INC(i), data))
00435 
00437 #define CONFIG_MACRO_KEY(r, data, i, elem) \
00438   BOOST_PP_STRINGIZE(BOOST_PP_TUPLE_ELEM(2, 0, elem))\
00439   BOOST_PP_COMMA_IF(BOOST_PP_LESS(BOOST_PP_INC(i), data))
00440 
00442   BOOST_PP_SEQ_FOR_EACH_I(CONFIG_MACRO_ID, 0, CONFIG_HISTONAMES_SEQ_01)
00443   BOOST_PP_SEQ_FOR_EACH_I(CONFIG_MACRO_ID, BOOST_PP_SEQ_SIZE(CONFIG_HISTONAMES_SEQ_01), CONFIG_HISTONAMES_SEQ_02)
00444 
00446   static const HistoName names[] = {
00447     BOOST_PP_SEQ_FOR_EACH_I(CONFIG_MACRO_NAME, BOOST_PP_SEQ_SIZE(CONFIG_HISTONAMES_SEQ_01), CONFIG_HISTONAMES_SEQ_01),
00448     BOOST_PP_SEQ_FOR_EACH_I(CONFIG_MACRO_NAME, BOOST_PP_SEQ_SIZE(CONFIG_HISTONAMES_SEQ_02), CONFIG_HISTONAMES_SEQ_02)
00449   };
00450 
00452   static const HistoName keys[] = {
00453     BOOST_PP_SEQ_FOR_EACH_I(CONFIG_MACRO_KEY, BOOST_PP_SEQ_SIZE(CONFIG_HISTONAMES_SEQ_01), CONFIG_HISTONAMES_SEQ_01),
00454     BOOST_PP_SEQ_FOR_EACH_I(CONFIG_MACRO_KEY, BOOST_PP_SEQ_SIZE(CONFIG_HISTONAMES_SEQ_02), CONFIG_HISTONAMES_SEQ_02)
00455   };
00456 
00458   static const unsigned int namesSize = BOOST_PP_SLOT(1);
00459 
00460 }
00461 
00462 #undef CONFIG_HISTONAMES_SEQ
00463 #undef CONFIG_MACRO_ID
00464 #undef CONFIG_MACRO_NAME
00465 
00466 #endif
00467