/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Event/ers/ers-00-00-03/ers/FilterStream.h

Go to the documentation of this file.
00001 /*
00002  *  FilterStream.h
00003  *  ERS
00004  *
00005  *  Created by Matthias Wiesmann on 31.03.05.
00006  *  Copyright 2005 CERN. All rights reserved.
00007  *
00008  */
00009 
00010 #ifndef ERS_FILTERSTREAM 
00011 #define ERS_FILTERSTREAM
00012 
00013 #include "ers/Stream.h"
00014 
00015 namespace ers {
00016     
00038     class FilterStream : public Stream {
00039 protected:
00040         Stream *m_target_stream_ptr ;                                
00041         std::vector<std::string> m_include ;                         
00042         std::vector<std::string> m_exclude ;                         
00043         FilterStream() ; 
00044         FilterStream(const FilterStream &other);                    
00045 public:
00046         static const char *const FILTER_STREAM_TAG ;                 
00047         static const char *const INCLUDE_TAG ;                       
00048         static const char *const EXCLUDE_TAG ;                       
00049         static const char *const TARGET_TAG ;                        
00050         static const char *const SEPARATORS ;                        
00051         static FilterStream *factory(const std::string &include_str, const::std::string &exclude_str, const std::string &target_str) ; 
00052         static FilterStream *factory(const std::string &parameters); 
00053         FilterStream(Stream *target_ptr, 
00054                      const std::vector<std::string> & include_list, 
00055                      const std::vector<std::string> & exclude_list) ; 
00056         ~FilterStream() ;                                             
00057         virtual bool is_accept(const Issue* issue_ptr);               
00058         virtual void send(const Issue *issue_ptr) ;                   
00059         virtual void print_to(std::ostream& stream) const ; 
00060 
00061     } ; // FilterStream
00062     
00063 } // ers
00064 
00065 #endif

Generated on Tue Nov 29 22:58:26 2016 for BOSS_7.0.2 by  doxygen 1.4.7