00001 #ifndef QUICK_ANA__ANA_TOOL_RETRIEVE_H
00002 #define QUICK_ANA__ANA_TOOL_RETRIEVE_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #include <QuickAna/Global.h>
00016
00017 #include <QuickAna/AnaTool.h>
00018
00019 namespace ana
00020 {
00022
00023 class AnaToolRetrieve : virtual public IAnaTool, public AnaTool
00024 {
00025
00026
00027
00028
00029 ASG_TOOL_CLASS (AnaToolRetrieve, ana::IAnaTool)
00030
00031
00032
00033
00034
00035
00036
00037 public:
00038 AnaToolRetrieve (const std::string& name);
00039
00040
00046 public:
00047 AnaToolRetrieve (const std::string& name, const std::string& containerName);
00048
00049
00050 public:
00051 virtual StatusCode
00052 setObjectType (ObjectType type, const std::string& workingPoint) override;
00053
00054 public:
00055 virtual AnalysisStep step () const override;
00056
00057 public:
00058 virtual unsigned inputTypes () const override;
00059
00060 public:
00061 virtual unsigned outputTypes () const override;
00062
00063 public:
00064 virtual void
00065 fillEventDataSource (EventData& event) const override;
00066
00067 public:
00068 virtual StatusCode execute (IEventObjects& objects) override;
00069
00070 public:
00071 virtual StatusCode
00072 getInitialConfiguration (InternalConfiguration& conf) override;
00073
00074 public:
00075 std::string m_containerName;
00076
00077
00078
00079
00080
00081
00082
00084 private:
00085 ObjectType m_type;
00086 };
00087 }
00088
00089 #endif