00001 #ifndef ASG_TOOLS__UNIT_TEST_TOOL1_H 00002 #define ASG_TOOLS__UNIT_TEST_TOOL1_H 00003 00004 // Copyright Iowa State University 2016. 00005 // Author: Nils Krumnack 00006 // Distributed under the Boost Software License, Version 1.0. 00007 // (See accompanying file LICENSE_1_0.txt or copy at 00008 // http://www.boost.org/LICENSE_1_0.txt) 00009 00010 // Please feel free to contact me (nils.erik.krumnack@cern.ch) for bug 00011 // reports, feature suggestions, praise and complaints. 00012 00013 00014 #include <AsgTools/AsgTool.h> 00015 #include <AsgExampleTools/IUnitTestTool1.h> 00016 00017 namespace asg 00018 { 00023 00024 struct UnitTestTool1 : virtual public IUnitTestTool1, 00025 public AsgTool 00026 { 00027 ASG_TOOL_CLASS (UnitTestTool1, IUnitTestTool1) 00028 00029 00030 public: 00031 UnitTestTool1 (const std::string& val_name); 00032 00034 public: 00035 ~UnitTestTool1 (); 00036 00037 public: 00038 StatusCode initialize () override; 00039 00040 public: 00041 virtual std::string getPropertyString () const override; 00042 00043 public: 00044 virtual int getPropertyInt () const override; 00045 00046 public: 00047 virtual void setPropertyInt (int val_property) override; 00048 00049 public: 00050 virtual bool isInitialized () const override; 00051 00053 public: 00054 bool m_isInitialized = false; 00055 00057 public: 00058 std::string m_propertyString; 00059 00061 public: 00062 int m_propertyInt = 0; 00063 00065 public: 00066 bool m_initializeFail = false; 00067 00070 public: 00071 static int& instance_counts (const std::string& name); 00072 }; 00073 } 00074 00075 #endif