You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nmWTAI-Platform/Include/mData/mProjectManager/DataModels/ZxDataWellBore.h

111 lines
2.7 KiB
C

#pragma once
#include "ZxDataObjectDbl.h"
// 油藏
class M_PROJECTMANAGER_EXPORT ZxDataWellBore
: public ZxDataObjectDbl
{
ZX_DECLARE_DYNAMIC
public:
ZxDataWellBore();
ZxDataWellBore(const ZxDataWellBore &other);
virtual ~ZxDataWellBore();
ZxDataWellBore &operator = (const ZxDataWellBore &other);
bool operator == (const ZxDataWellBore &other) const;
bool operator != (const ZxDataWellBore &other) const;
public:
// 接口
virtual ZxDataObject* clone();
virtual QString type() const;
// 加载保存
virtual bool _parseData(VecVariant vec, int& n); //解析
virtual bool _sumUpData(VecVariant& vec);
// 序列化
virtual void onSerialize(ZxSerializer* ser);
virtual void onDeserialize(ZxSerializer* ser);
// Icon
virtual QIcon getIcon(bool expanded) const;
// 该函数是在本对象被Append至parent之后对本对象进行一些调整。
// 比如,压力数据在被 井 appendChild 之后,把压力数据的 井号 设置一下
virtual void adjustWithParent();
public:
void setWellCode(const QString& s);
QString getWellCode() const;
void set_WellboreRadius(const double& d);
double get_WellboreRadius() const;
void set_CasingOuterRadius(const double& d);
double get_CasingOuterRadius() const;
void set_CasingInnerRadius(const double& d);
double get_CasingInnerRadius() const;
void set_TubingOuterRadius(const double& d);
double get_TubingOuterRadius() const;
void set_TubingInnerRadius(const double& d);
double get_TubingInnerRadius() const;
void set_WellboreLength(const double& d);
double get_WellboreLength() const;
void set_WellInclination(const double& d);
double get_WellInclination() const;
void set_PipeRoughness(const double& d);
double get_PipeRoughness() const;
void set_CasingInEmiss(const double& d);
double get_CasingInEmiss() const;
void set_TubingOutEmiss(const double& d);
double get_TubingOutEmiss() const;
void set_AnnulusTC(const double& d);
double get_AnnulusTC() const;
void set_CementTC(const double& d);
double get_CementTC() const;
void setBoundaryDistance(const double& d);
double getBoundaryDistance() const;
protected:
//QString m_sID;
QString m_sWellCode;
//QString m_sBoreName;
double m_dWellboreRadius;
double m_dCasingOuterRadius;
double m_dCasingInnerRadius;
double m_dTubingOuterRadius;
double m_dTubingInnerRadius;
double m_dWellboreLength;
double m_dWellInclination;
double m_dPipeRoughness;
double m_dCasingInEmiss;
double m_dTubingOutEmiss;
double m_dAnnulusTC;
double m_dCementTC;
double m_dBoundaryDistance;
};