Gaudi Framework, version v21r4

Home   Generated: 7 Sep 2009

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 //
00010 //====================================================================
00011 #ifndef GAUDIKERNEL_EVENTSELECTORDATASTREAM_H
00012 #define GAUDIKERNEL_EVENTSELECTORDATASTREAM_H 1
00013 
00014 // Include files
00015 #include "GaudiKernel/IEvtSelector.h"
00016 #include "GaudiKernel/Property.h"
00017 
00018 // STL include files
00019 #include <vector>
00020 #include <iostream>
00021 
00022 // Forward declarations
00023 class MsgStream;
00024 class ISvcLocator;
00025 class EventSelectorDataStream;
00026 
00041 class GAUDI_API EventSelectorDataStream: public implements1<IInterface> {
00043   friend MsgStream& operator<<(MsgStream& s, const EventSelectorDataStream& obj);
00045   friend std::ostream& operator<<(std::ostream& s, const EventSelectorDataStream& obj);
00046 public:
00047   typedef std::vector< StringProperty >  Properties;
00048 protected:
00050   std::string             m_name;
00052   std::string             m_definition;
00054   std::string             m_criteria;
00056   std::string             m_selectorType;
00058   IEvtSelector*           m_pSelector;
00060   ISvcLocator*            m_pSvcLocator;
00062   Properties*             m_properties;
00064   bool                    m_initialized;
00066   virtual ~EventSelectorDataStream();
00067 public:
00069   EventSelectorDataStream(const std::string& nam, const std::string& def, ISvcLocator* svcloc);
00071   virtual void setSelector(IEvtSelector* pSelector);
00073   virtual StatusCode initialize();
00075   virtual StatusCode finalize();
00077   StringProperty* property(const std::string& nam);
00079   const StringProperty* property(const std::string& nam)  const;
00081   const Properties& properties()    {
00082     return *m_properties;
00083   }
00085   const std::string& name()   const   {
00086     return m_name;
00087   }
00089   const std::string& criteria()   const   {
00090     return m_criteria;
00091   }
00093   const std::string& selectorType()   const   {
00094     return m_selectorType;
00095   }
00097   const std::string& definition() const   {
00098     return m_definition;
00099   }
00101   IEvtSelector* selector()  const  {
00102     return m_pSelector;
00103   }
00105   bool isInitialized()  const   {
00106     return m_initialized;
00107   }
00108 };
00109 
00111 GAUDI_API MsgStream& operator<<(MsgStream& s, const EventSelectorDataStream& obj);
00113 GAUDI_API std::ostream& operator<<(std::ostream& s, const EventSelectorDataStream& obj);
00114 
00115 #endif  // GAUDIKERNEL_EVENTSELECTORDATASTREAM_H

Generated at Mon Sep 7 18:05:37 2009 for Gaudi Framework, version v21r4 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004