Files
envi-code/SourceCode/Code2026/tg_shs/shs_pipewire/DbWaterAllot.cpp
T
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

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());
}
}