metaforce/hecl/driver/CToolBase.hpp

30 lines
525 B
C++
Raw Normal View History

2015-05-19 21:01:32 +00:00
#ifndef CTOOL_BASE
#define CTOOL_BASE
2015-05-20 05:22:32 +00:00
#include <string>
#include <vector>
#include <HECLDatabase.hpp>
struct SToolPassInfo
{
std::string pname;
std::vector<std::string> args;
std::string output;
unsigned verbosityLevel = 0;
bool force = false;
};
class CToolBase
{
protected:
2015-05-20 05:22:32 +00:00
const SToolPassInfo& m_info;
public:
2015-05-20 05:22:32 +00:00
CToolBase(const SToolPassInfo& info)
: m_info(info) {}
virtual ~CToolBase() {}
2015-05-20 05:22:32 +00:00
virtual std::string toolName() const=0;
virtual int run()=0;
};
2015-05-19 21:01:32 +00:00
#endif // CTOOL_BASE