00001 #ifndef FWCore_Utilities_Presence_h 00002 #define FWCore_Utilities_Presence_h 00003 00004 // -*- C++ -*- 00005 00006 /* 00007 An interface class defining a presence. A presence is an object that an 00008 executable can instantiate at an early time in order to initialize 00009 various things. The destructor 00010 takes action to terminate the artifacts of the run() method. 00011 00012 The prototypical use of this is to establish the MessageServicePresence. 00013 That class appears in MessageService, which is a plugin. By using this 00014 abstract class, we can arrange that cmsRun, in Framework, has no link 00015 dependency on MessageService. Instead, the MessageServicePresence is 00016 dynamically (run-time) loaded. 00017 */ 00018 00019 namespace edm { 00020 00021 class Presence { 00022 public: 00023 Presence() {} 00024 virtual ~Presence() = 0; 00025 }; 00026 } 00027 #endif // FWCore_Utilities_Presence_h