#pragma once
#include <string>
#include <map>
#include "CivSimuResStruct.h"

#define SIMULABSEXPORT __declspec(dllexport)
class CivConnection;

/**
 模拟结果集操作类
*/
class SIMULABSEXPORT CivSimulResHelperAbs
{
public:
	explicit CivSimulResHelperAbs();
	virtual ~CivSimulResHelperAbs();

	virtual bool insertNodes(const NodeResultItems& nodeitems);
	virtual bool insertLinks(const LinkResultItems& linkMap);
	virtual bool insertTanks(const TankResultItems& tankMap);

	virtual void getAllNodeCoords(NodeCoords& nodeCoords);
	virtual void getAllPipeCoords(PipeCoords& pipeCoords);
	virtual void getLinCodeSnMap(std::map<std::string, std::string>& map);
	virtual void getNodeCodeSnMap(std::map<std::string, std::string>& map);

protected:
	CivConnection* mConn = nullptr;
};