56 lines
1.0 KiB
C++
56 lines
1.0 KiB
C++
|
|
/**
|
|||
|
|
* @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;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|