Gaudi Framework, version v22r4

Home   Generated: Fri Sep 2 2011

EventSelectorDataStream.h

Go to the documentation of this file.
00001 //====================================================================
00002 //      EventSelectorDataStream.h
00003 //--------------------------------------------------------------------
00004 //
00005 //      Package    : EventSelectorDataStream  (LHCb Event Selector Package)
00006 //
00007 //      Author     : M.Frank
00008 //      Created    : 4/10/00
00009 //      Changes    : R. Lambert 2009-09-04
00010 //
00011 //====================================================================
00012 #ifndef GAUDIKERNEL_EVENTSELECTORDATASTREAM_H
00013 #define GAUDIKERNEL_EVENTSELECTORDATASTREAM_H 1
00014 
00015 // Include files
00016 #include "GaudiKernel/IEvtSelector.h"
00017 #include "GaudiKernel/Property.h"
00018 
00019 // STL include files
00020 #include <vector>
00021 #include <iostream>
00022 
00023 // Forward declarations
00024 class MsgStream;
00025 class ISvcLocator;
00026 class EventSelectorDataStream;
00027 
00045 class GAUDI_API EventSelectorDataStream: public implements1<IInterface> {
00047   friend MsgStream& operator<<(MsgStream& s, const EventSelectorDataStream& obj);
00049   friend std::ostream& operator<<(std::ostream& s, const EventSelectorDataStream& obj);
00050 public:
00051   typedef std::vector< StringProperty >  Properties;
00052 protected:
00054   std::string             m_name;
00056   std::string             m_definition;
00058   std::string             m_criteria;
00060   std::string             m_dbName;
00062   std::string             m_selectorType;
00064   IEvtSelector*           m_pSelector;
00066   ISvcLocator*            m_pSvcLocator;
00068   Properties*             m_properties;
00070   bool                    m_initialized;
00072   virtual ~EventSelectorDataStream();
00073 public:
00075   EventSelectorDataStream(const std::string& nam, const std::string& def, ISvcLocator* svcloc);
00077   virtual void setSelector(IEvtSelector* pSelector);
00079   virtual StatusCode initialize();
00081   virtual StatusCode finalize();
00083   StringProperty* property(const std::string& nam);
00085   const StringProperty* property(const std::string& nam)  const;
00087   const Properties& properties()    {
00088     return *m_properties;
00089   }
00091   const std::string& name()   const   {
00092     return m_name;
00093   }
00095   const std::string& criteria()   const   {
00096     return m_criteria;
00097   }
00099   const std::string& dbName()   const   {
00100     return m_dbName;
00101   }
00103   const std::string& selectorType()   const   {
00104     return m_selectorType;
00105   }
00107   const std::string& definition() const   {
00108     return m_definition;
00109   }
00111   IEvtSelector* selector()  const  {
00112     return m_pSelector;
00113   }
00115   bool isInitialized()  const   {
00116     return m_initialized;
00117   }
00118 };
00119 
00121 GAUDI_API MsgStream& operator<<(MsgStream& s, const EventSelectorDataStream& obj);
00123 GAUDI_API std::ostream& operator<<(std::ostream& s, const EventSelectorDataStream& obj);
00124 
00125 #endif  // GAUDIKERNEL_EVENTSELECTORDATASTREAM_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Fri Sep 2 2011 16:24:19 for Gaudi Framework, version v22r4 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004