00001 #ifndef Services_CPU_h 00002 #define Services_CPU_h 00003 // -*- C++ -*- 00004 // 00005 // Package: Services 00006 // Class : CPU 00007 // 00008 // 00009 // Original Author: Natalia Garcia 00010 // CPU.h: v 1.0 2009/01/08 11:27:50 00011 // 00012 00013 namespace edm { 00014 class ActivityRegistry; 00015 class Event; 00016 class EventSetup; 00017 class ParameterSet; 00018 class ConfigurationDescriptions; 00019 00020 namespace service { 00021 class CPU { 00022 public: 00023 CPU(ParameterSet const&, ActivityRegistry&); 00024 ~CPU(); 00025 00026 static void fillDescriptions(ConfigurationDescriptions& descriptions); 00027 00028 private: 00029 int totalNumberCPUs_; 00030 double averageCoreSpeed_; 00031 bool reportCPUProperties_; 00032 00033 void postEndJob(); 00034 }; 00035 00036 inline 00037 bool isProcessWideService(CPU const*) { 00038 return true; 00039 } 00040 } 00041 } 00042 #endif