ATLAS Offline Software
FilteredAlgorithm.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- C++ -*-
2 
3 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef ATHENABASECOMPS_FILTEREDALGORTITHM_H
8 #define ATHENABASECOMPS_FILTEREDALGORTITHM_H 1
9 
10 // STL include files
11 #include <memory>
12 #include <map>
13 #include <set>
14 #include <vector>
15 #include <string>
16 
17 // Required for inheritance
18 #include "GaudiKernel/IDataSelector.h"
20 #include "GaudiKernel/ClassID.h"
21 #include "Gaudi/Property.h"
22 #include "GaudiKernel/ServiceHandle.h"
23 
25 
33 {
34 
35 protected:
36 
38  StringArrayProperty m_acceptNames;
40  StringArrayProperty m_requireNames;
42  StringArrayProperty m_vetoNames;
43 
45 
46 protected:
48  FilteredAlgorithm(const std::string& name, ISvcLocator* pSvcLocator);
50  virtual ~FilteredAlgorithm();
51 
52 public:
54 
55  virtual StatusCode initialize();
56  virtual StatusCode finalize();
57  virtual StatusCode execute();
59 
61  bool isEventAccepted( ) const;
62 
63 
64  FilteredAlgorithm(); //> not implemented
65  FilteredAlgorithm (const FilteredAlgorithm&); //> not implemented
66  FilteredAlgorithm& operator= (const FilteredAlgorithm&); //> not implemented
67 };
68 
69 #endif // !ATHENABASECOMPS_FILTEREDALGORITHM_H
FilteredAlgorithm
algorithm that marks for write data objects in SG
Definition: FilteredAlgorithm.h:33
FilteredAlgorithm::finalize
virtual StatusCode finalize()
Definition: FilteredAlgorithm.cxx:115
FilteredAlgorithm::m_requireNames
StringArrayProperty m_requireNames
Vector of names of Algorithms that this stream requires.
Definition: FilteredAlgorithm.h:40
FilteredAlgorithm::initialize
virtual StatusCode initialize()
Definition: FilteredAlgorithm.cxx:46
FilteredAlgorithm::FilteredAlgorithm
FilteredAlgorithm(const FilteredAlgorithm &)
FilteredAlgorithm::isEventAccepted
bool isEventAccepted() const
Test whether this event should be output.
Definition: FilteredAlgorithm.cxx:128
AthAlgorithm.h
FilteredAlgorithm::m_vetoNames
StringArrayProperty m_vetoNames
Vector of names of Algorithms that this stream is vetoed by.
Definition: FilteredAlgorithm.h:42
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IDecisionSvc.h
AthAlgorithm
Definition: AthAlgorithm.h:47
FilteredAlgorithm::execute
virtual StatusCode execute()
Definition: FilteredAlgorithm.cxx:122
FilteredAlgorithm::m_acceptNames
StringArrayProperty m_acceptNames
Vector of names of Algorithms that this stream accepts.
Definition: FilteredAlgorithm.h:38
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
FilteredAlgorithm::operator=
FilteredAlgorithm & operator=(const FilteredAlgorithm &)
FilteredAlgorithm::FilteredAlgorithm
FilteredAlgorithm()
FilteredAlgorithm::~FilteredAlgorithm
virtual ~FilteredAlgorithm()
Standard Destructor.
Definition: FilteredAlgorithm.cxx:41
FilteredAlgorithm::m_decSvc
ServiceHandle< IDecisionSvc > m_decSvc
Definition: FilteredAlgorithm.h:44
ServiceHandle< IDecisionSvc >