00001 #ifndef QUICK_ANA__ANA_TOOL_SELECT_INIT_H
00002 #define QUICK_ANA__ANA_TOOL_SELECT_INIT_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #include <QuickAna/Global.h>
00016
00017 #include <AthContainers/AuxElement.h>
00018 #include <QuickAna/AnaTool.h>
00019
00020 namespace ana
00021 {
00024
00025 class AnaToolSelectInit : virtual public IAnaTool, public AnaTool
00026 {
00027
00028
00029
00030
00031 ASG_TOOL_CLASS (AnaToolSelectInit, ana::IAnaTool)
00032
00033
00034
00035
00036
00037
00038
00039 public:
00040 AnaToolSelectInit (const std::string& name);
00041
00042
00044 public:
00045 virtual StatusCode
00046 setObjectType (ObjectType type, const std::string& workingPoint) override;
00047
00048
00050 public:
00051 virtual AnalysisStep step () const override;
00052
00053
00055 public:
00056 virtual unsigned inputTypes () const override;
00057
00058
00060 public:
00061 virtual unsigned outputTypes () const override;
00062
00063
00065 public:
00066 virtual StatusCode
00067 useConfiguration (const InternalConfiguration& configuration)
00068 override;
00069
00070
00072 public:
00073 virtual StatusCode execute (IEventObjects& objects) override;
00074
00075
00076
00077
00078
00079
00080
00082 private:
00083 ObjectType m_type;
00084
00086 private:
00087 std::vector<SG::AuxElement::Accessor<SelectType>> m_select;
00088 };
00089 }
00090
00091 #endif