logplus/Workflow/WFEngine/ObjectModel/ObjectModelBase/src/PaiVirtualObject.cpp

56 lines
1.0 KiB
C++
Raw Normal View History

2026-01-16 17:18:41 +08:00
/**
* @file PaiVirtualObject.cpp
*/
#include "PaiVirtualObject.h"
// IMPLEMENT_PAI_OBJECT(PaiVirtualObject)
namespace pai
{
namespace objectmodel
{
// 从-10001开始-1 -10000预留
long long PaiVirtualObject::m_VirtualDBIDCounter = -10000;
PaiVirtualObject::PaiVirtualObject(PaiObject *pParent) :
PaiObject(pParent)
{
SetDBID(GenerateVirtualDBID());
SetIgnoreSyncDB(true);
}
PaiVirtualObject::~PaiVirtualObject()
{
}
long long PaiVirtualObject::GetParentDBID() const
{
PaiObject *pParent = GetParent();
if(pParent)
{
return pParent->GetDBID();
}
return 0;
}
bool PaiVirtualObject::Load(const long long /*dbid*/)
{
return true; // 虚拟对象无需加载
}
void PaiVirtualObject::Clone(const PaiObject & /*srcObject*/)
{
// 虚对象一般不许克隆,这里给出提示
// throw pai::error::io_error("Please define [Clone] function in derived class when you need!");
}
long long PaiVirtualObject::GenerateVirtualDBID()
{
return --m_VirtualDBIDCounter;
}
}
}