113 lines
2.8 KiB
C++
113 lines
2.8 KiB
C++
#include "stdafx.h"
|
|
#include "DbWaterAllot.h"
|
|
|
|
ACRX_DXF_DEFINE_MEMBERS(ATSWaterAllot, ATSHDbEquipment, AcDb::kDHL_CURRENT,
|
|
AcDb::kMReleaseCurrent, 1, ATS_WATERALLOT,
|
|
"ATS_WATERALLOT图形无法解析, 请下载上华软件|网址: www.shanghuasoft.com");
|
|
IMPLEMENT_TENTBASE(TDbWaterAllot);
|
|
|
|
const Adesk::UInt8 TDbWaterAllot::g_nVersion = 1;
|
|
|
|
|
|
TDbWaterAllot::TDbWaterAllot():
|
|
m_dTrunkDiameter(0),m_dBranchDiameter(0),m_dPotDiameter(0),
|
|
m_dWaterLoad(0), m_nBranchNum(2), m_useKind(UseKind::kHeat)
|
|
{
|
|
}
|
|
|
|
void TDbWaterAllot::CopyPropertiesFrom(AcDbEntity* pSrc, unsigned gMatchFlag)
|
|
{
|
|
assertWriteEnabled();
|
|
THDbEquipment::CopyPropertiesFrom(pSrc, gMatchFlag);
|
|
TDbWaterAllot *pCoil = TDbWaterAllot::cast(pSrc);
|
|
if (pCoil != NULL) {
|
|
;
|
|
}
|
|
}
|
|
|
|
Acad::ErrorStatus TDbWaterAllot::subGetClassID(CLSID* pClsid) const
|
|
{
|
|
return Acad::eOk;
|
|
}
|
|
|
|
Acad::ErrorStatus TDbWaterAllot::dwgInFields(AcDbDwgFiler* pFiler)
|
|
{
|
|
assertWriteEnabled();
|
|
Acad::ErrorStatus es = THDbEquipment::dwgInFields(pFiler);
|
|
if (es != Acad::eOk)
|
|
return es;
|
|
|
|
Adesk::UInt8 nVer;
|
|
pFiler->readItem(&nVer);
|
|
if (nVer>g_nVersion) // Version is too new
|
|
return Acad::eMakeMeProxy;
|
|
|
|
Adesk::UInt8 nTemp = 0;
|
|
pFiler->readItem(&nTemp);
|
|
m_useKind = (UseKind)nTemp;
|
|
pFiler->readItem(&m_dTrunkDiameter);
|
|
pFiler->readItem(&m_dBranchDiameter);
|
|
pFiler->readItem(&m_dPotDiameter);
|
|
pFiler->readItem(&m_dWaterLoad);
|
|
pFiler->readItem(&m_nBranchNum);
|
|
return pFiler->filerStatus();
|
|
}
|
|
|
|
Acad::ErrorStatus TDbWaterAllot::dwgOutFields(AcDbDwgFiler* pFiler) const
|
|
{
|
|
assertReadEnabled();
|
|
Acad::ErrorStatus es = THDbEquipment::dwgOutFields(pFiler);
|
|
if (es != Acad::eOk)
|
|
return es;
|
|
pFiler->writeItem(g_nVersion);
|
|
pFiler->writeItem((Adesk::UInt8)(m_useKind));
|
|
pFiler->writeItem(m_dTrunkDiameter);
|
|
pFiler->writeItem(m_dBranchDiameter);
|
|
pFiler->writeItem(m_dPotDiameter);
|
|
pFiler->writeItem(m_dWaterLoad);
|
|
pFiler->writeItem(m_nBranchNum);
|
|
return pFiler->filerStatus();
|
|
}
|
|
|
|
Acad::ErrorStatus TDbWaterAllot::dxfInFields(AcDbDxfFiler* pFiler)
|
|
{
|
|
assertWriteEnabled();
|
|
Acad::ErrorStatus es = THDbEquipment::dxfInFields(pFiler);
|
|
if (es != Acad::eOk)
|
|
return es;
|
|
|
|
if (!pFiler->atSubclassData(_T("TDbWaterAllot")))
|
|
return Acad::eBadDxfSequence;
|
|
return pFiler->filerStatus();
|
|
}
|
|
|
|
Acad::ErrorStatus TDbWaterAllot::dxfOutFields(AcDbDxfFiler* pFiler) const
|
|
{
|
|
Acad::ErrorStatus es = THDbEquipment::dxfOutFields(pFiler);
|
|
assert(es == Acad::eOk);
|
|
es = pFiler->writeItem(AcDb::kDxfSubclass,_T("TDbWaterAllot"));
|
|
assert(es == Acad::eOk);
|
|
return es;
|
|
}
|
|
|
|
void TDbWaterAllot::GetTips(DList<TObjInfoUnit> &info) const
|
|
{
|
|
info.Append(new TObjInfoUnit(_T("对象类型"), _T("分集水器")));
|
|
THDbEquipment::GetTips(info);
|
|
}
|
|
|
|
void InitTDbWaterAllot(BOOL bTrue)
|
|
{
|
|
if (bTrue) {
|
|
TDbWaterAllot::rxInit();
|
|
TDbWaterAllot::InitMatchProtocol(TRUE);
|
|
}
|
|
else {
|
|
TDbWaterAllot::InitMatchProtocol(FALSE);
|
|
deleteAcRxClass(TDbWaterAllot::desc());
|
|
}
|
|
}
|
|
|
|
|
|
|