00001 #ifndef ASG_TOOLS__UNIT_TEST_TOOL2_H
00002 #define ASG_TOOLS__UNIT_TEST_TOOL2_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #include <AsgTools/AnaToolHandle.h>
00015 #include <AsgTools/AsgTool.h>
00016 #include <AsgExampleTools/IUnitTestTool2.h>
00017
00018 namespace asg
00019 {
00024
00025 struct UnitTestTool2 : virtual public IUnitTestTool2,
00026 public AsgTool
00027 {
00028 ASG_TOOL_CLASS (UnitTestTool2, IUnitTestTool2)
00029
00030
00031 public:
00032 UnitTestTool2 (const std::string& val_name);
00033
00034 public:
00035 StatusCode initialize () override;
00036
00037 public:
00038 virtual bool
00039 toolHandleEmpty (const std::string& handleName) const override;
00040
00041 public:
00042 virtual const IUnitTestTool1 *
00043 getToolHandle (const std::string& handleName) const override;
00044
00045 public:
00046 virtual StatusCode
00047 retrieveToolHandle (const std::string& handleName) const override;
00048
00049 public:
00050 virtual bool
00051 wasUserConfigured (const std::string& handleName) const override;
00052
00053 public:
00054 ToolHandle<IUnitTestTool1> m_regPublicHandle;
00055
00056 public:
00057 ToolHandle<IUnitTestTool1> m_regPrivateHandle;
00058
00059 public:
00060 AnaToolHandle<IUnitTestTool1> m_anaPublicHandle;
00061
00062 public:
00063 AnaToolHandle<IUnitTestTool1> m_anaPrivateHandle;
00064
00065 private:
00066 bool m_wasUserConfiguredPublic = false;
00067
00068 private:
00069 bool m_wasUserConfiguredPrivate = false;
00070
00071 private:
00072 bool m_allowEmpty = false;
00073 };
00074 }
00075
00076 #endif