CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_3/src/FWCore/MessageLogger/interface/ConfigurationHandshake.h

Go to the documentation of this file.
00001 #ifndef FWCore_MessageLogger_ConfigurationHandshake_h
00002 #define FWCore_MessageLogger_ConfigurationHandshake_h
00003 
00004 #include "FWCore/Utilities/interface/EDMException.h"
00005 
00006 #include "boost/thread/condition.hpp"
00007 #include "boost/thread/mutex.hpp"
00008 
00009 namespace edm {
00010   class ParameterSet;
00011 
00012   typedef boost::shared_ptr<edm::Exception> Pointer_to_new_exception_on_heap;
00013   typedef boost::shared_ptr<Pointer_to_new_exception_on_heap> Place_for_passing_exception_ptr;
00014 
00015   struct ConfigurationHandshake {
00016     void* p;
00017     boost::mutex m;
00018     boost::condition c;
00019     edm::Place_for_passing_exception_ptr epp;
00020     explicit ConfigurationHandshake 
00021       (void* p_in, Place_for_passing_exception_ptr epp_in) : 
00022                               p(p_in), m(), c(), epp(epp_in) {}   
00023   };  
00024 }  // namespace edm
00025 #endif  // FWCore_MessageLogger_ConfigurationHandshake_h