#pragma once
#include "CivAssembly.h"
#include "CivInpHelperAbs.h"
#include <memory>

/**
 从数据库获取inp文件相关的类
*/
class INPDLLEXPORT CivInpDbHelper:public CivInpHelperAbs
{
public:
	explicit CivInpDbHelper(const std::string& uri);
	~CivInpDbHelper();

	bool getNode(CivNode& node)override;
	bool getPipe(CivPipe& pipe) override;
	bool getTank(CivTank& tank) override;
	bool getValve(CivValve& valve) override;
	bool getPumps(CivPumps& pump) override;
	bool getReservoirs(CivReservoirs& reservoirs) override;
	bool getCoordinates(CivCoordinates& coord) override;
	bool getQuality(CivQuality& quality) override;	
};
