本文整理汇总了C++中NF_SHARE_PTR::GetObject方法的典型用法代码示例。如果您正苦于以下问题:C++ NF_SHARE_PTR::GetObject方法的具体用法?C++ NF_SHARE_PTR::GetObject怎么用?C++ NF_SHARE_PTR::GetObject使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NF_SHARE_PTR
的用法示例。
在下文中一共展示了NF_SHARE_PTR::GetObject方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnObjectHeroRecordEvent
int NFCHeroPropertyModule::OnObjectHeroRecordEvent(const NFGUID& self, const RECORD_EVENT_DATA& xEventData, const NFIDataList::TData& oldVar, const NFIDataList::TData& newVar)
{
std::ostringstream stream;
NF_SHARE_PTR<NFIRecord> pHeroRecord = m_pKernelModule->FindRecord(self, xEventData.strRecordName);
if (nullptr == pHeroRecord)
{
return 0;
}
switch (xEventData.nOpType)
{
case NFIRecord::RecordOptype::Add:
{
const NFGUID& xHeroGUID = pHeroRecord->GetObject(xEventData.nRow, NFrame::Player::PlayerHero::PlayerHero_GUID);
OnHeroPropertyUpdate(self, xHeroGUID);
}
break;
case NFIRecord::RecordOptype::Del:
{
}
break;
case NFIRecord::RecordOptype::Update:
{
switch (xEventData.nCol)
{
case NFrame::Player::PlayerHero::PlayerHero_Level:
case NFrame::Player::PlayerHero::PlayerHero_Star:
case NFrame::Player::PlayerHero::PlayerHero_Equip1:
case NFrame::Player::PlayerHero::PlayerHero_Equip2:
case NFrame::Player::PlayerHero::PlayerHero_Equip3:
case NFrame::Player::PlayerHero::PlayerHero_Equip4:
case NFrame::Player::PlayerHero::PlayerHero_Equip5:
case NFrame::Player::PlayerHero::PlayerHero_Equip6:
case NFrame::Player::PlayerHero::PlayerHero_Talent1:
case NFrame::Player::PlayerHero::PlayerHero_Talent2:
case NFrame::Player::PlayerHero::PlayerHero_Talent3:
case NFrame::Player::PlayerHero::PlayerHero_Talent4:
case NFrame::Player::PlayerHero::PlayerHero_Talent5:
{
const NFGUID& xHeroGUID = pHeroRecord->GetObject(xEventData.nRow, NFrame::Player::PlayerHero::PlayerHero_GUID);
OnHeroPropertyUpdate(self, xHeroGUID);
}
break;
default:
break;
}
}
break;
default:
break;
}
return 0;
}
示例2: GetOnlineMember
bool NFCGuildModule::GetOnlineMember( const NFGUID& self, const NFGUID& xGuild, NFDataList& varMemberList, NFDataList& varGameList)
{
NF_SHARE_PTR<NFIObject> pGuildObject = m_pGuildDataModule->GetGuild(xGuild);
if (!pGuildObject.get())
{
return false;
}
NF_SHARE_PTR<NFIRecord> pMemberRecord = m_pKernelModule->FindRecord(xGuild, NFrame::Guild::R_GuildMemberList());
if (!pMemberRecord.get())
{
return false;
}
for (int i = 0; i< pMemberRecord->GetRows(); i++)
{
if (!pMemberRecord->IsUsed(i))
{
continue;
}
const NFINT64 nOnline = pMemberRecord->GetInt(i, NFrame::Guild::GuildMemberList_Online);
const NFINT64 nGameID = pMemberRecord->GetInt(i, NFrame::Guild::GuildMemberList_GameID);
const NFGUID& xID = pMemberRecord->GetObject(i, NFrame::Guild::GuildMemberList_GUID);
if (nOnline > 0 && !xID.IsNull())
{
varMemberList.Add(xID);
varGameList.Add(nGameID);
}
}
return true;
}
示例3: GetMemberList
bool NFCTeamModule::GetMemberList(const NFGUID& self, const NFGUID& xTeam, std::vector<NFGUID>& xmemberList)
{
NF_SHARE_PTR<NFIRecordManager> pRecordManager = m_pCommonRedisModule->GetCacheRecordInfo(xTeam, NFrame::Team::ThisName());
if (!pRecordManager)
{
return false;
}
NF_SHARE_PTR<NFIRecord> pMemberRecord = pRecordManager->GetElement(NFrame::Team::MemberList::ThisName());
if (!pMemberRecord.get())
{
return false;
}
for (int i = 0; i < pMemberRecord->GetRows(); i++)
{
if (!pMemberRecord->IsUsed(i))
{
continue;
}
const NFINT64 nOnline = pMemberRecord->GetInt(i, NFrame::Team::MemberList::Online);
const NFINT64 nGameID = pMemberRecord->GetInt(i, NFrame::Team::MemberList::GameID);
const NFGUID& xID = pMemberRecord->GetObject(i, NFrame::Team::MemberList::GUID);
if (!xID.IsNull())
{
xmemberList.push_back(xID);
}
}
return true;
}
示例4: CheckProduceData
int NFCSLGBuildingModule::CheckProduceData( const NFGUID& self )
{
NF_SHARE_PTR<NFIRecord> pProduce = m_pKernelModule->FindRecord(self, "BuildingProduce");
if (NULL == pProduce.get())
{
m_pLogModule->LogNormal(NFILogModule::NLL_ERROR_NORMAL, self, "this is no [BuildingProduce] Record!", "", __FUNCTION__, __LINE__);
return false;
}
for (int i = 0; i < pProduce->GetRows(); i++)
{
if (!pProduce->IsUsed(i))
{
continue;
}
const int nNowTime = pPluginManager->GetNowTime();
const NFGUID xBuildID = pProduce->GetObject(i, "BuildingGUID");
const std::string strItemID = pProduce->GetString(i, "ItemID");
const int nLeftCount = pProduce->GetInt(i, "LeftCount");
const NFINT64 nLastOnceBeginTime = pProduce->GetInt(i, "OnceStartTime");
const NFINT64 nOnceTime = pProduce->GetInt(i, "OnceTime");
const int nPassTime = nNowTime - nLastOnceBeginTime;
if (nPassTime <= 0)
{
continue;
}
const int nCount = nPassTime/nOnceTime;
if (nCount >= nLeftCount)
{
//add Item
//TO ADD
pProduce->Remove(i);
}
else
{
//add Item
//TO ADD
pProduce->SetInt(i, "", nLeftCount - nCount);
//NFDataList varHeart;
//varHeart << xBuildID;
//varHeart << strItemID;
const std::string strHeartname = GetProduceHeartName(self, xBuildID, strItemID);
const int nTime = (nCount + 1) * nOnceTime - nPassTime;
m_pScheduleModule->AddSchedule(self, strHeartname, this, &NFCSLGBuildingModule::OnProduceHeartBeat, /*varHeart, */nTime, 1);
}
}
return 0;
}
示例5: GetElement
const NFGUID& NFCPropertyManager::GetPropertyObject(const std::string& strPropertyName)
{
NF_SHARE_PTR<NFIProperty> pProperty = GetElement(strPropertyName);
if (pProperty)
{
return pProperty->GetObject();
}
return NULL_OBJECT;
}
示例6: GetElement
const NFGUID& NFCRecordManager::GetRecordObject(const std::string& strRecordName, const int nRow, const std::string& strColTag)
{
NF_SHARE_PTR<NFIRecord> pRecord = GetElement(strRecordName);
if (pRecord.get())
{
return pRecord->GetObject(nRow, strColTag);
}
return NULL_OBJECT;
}
示例7: GetRecordObject
NFIDENTID NFCObject::GetRecordObject(const std::string& strRecordName, const int nRow, const std::string& strColTag)
{
NF_SHARE_PTR<NFIRecord> pRecord = GetRecordManager()->GetElement(strRecordName);
if (pRecord.get())
{
return pRecord->GetObject(nRow, strColTag);
}
return NFIDENTID();
}
示例8: GetPropertyObject
NFIDENTID NFCObject::GetPropertyObject(const std::string& strPropertyName)
{
NF_SHARE_PTR<NFIProperty> pProperty = GetPropertyManager()->GetElement(strPropertyName);
if (pProperty.get())
{
return pProperty->GetObject();
}
return NFIDENTID();
}
示例9: CheckBuildingStatusEnd
int NFCSLGBuildingModule::CheckBuildingStatusEnd( const NFGUID& self )
{
NF_SHARE_PTR<NFIRecord> pRecord = m_pKernelModule->FindRecord(self, "BuildingList");
if (NULL == pRecord.get())
{
m_pLogModule->LogNormal(NFILogModule::NLL_ERROR_NORMAL, self, "this is no [BuildingList] Record!", "", __FUNCTION__, __LINE__);
return 1;
}
const NFINT64 nNowTime = pPluginManager->GetNowTime();
for (int i= 0; i < pRecord->GetRows(); i++)
{
if (!pRecord->IsUsed(i))
{
continue;
}
const NFINT64 nEndTime = pRecord->GetInt(i, "StateEndTime");
const NFGUID& xBuildID = pRecord->GetObject(i, "BuildingGUID");
const int& nStatus = pRecord->GetInt(i, "State");
float fTime = nEndTime - nNowTime;
if (fTime <= 0.0f)
{
fTime = 0.1f;
}
if (nStatus == NFMsg::EBS_IDLE)
{
continue;
}
else if(nStatus == NFMsg::EBS_UPGRADE)
{
//NFDataList varHeart;
//varHeart << xBuildID;
m_pScheduleModule->AddSchedule(self, "OnUpgradeHeartBeat", this, &NFCSLGBuildingModule::OnUpgradeHeartBeat, /*varHeart, */fTime, 1);
}
else if(nStatus == NFMsg::EBS_BOOST)
{
//NFDataList varHeart;
//varHeart << xBuildID;
m_pScheduleModule->AddSchedule(self, "OnUpgradeHeartBeat", this, &NFCSLGBuildingModule::OnUpgradeHeartBeat, /*varHeart, */fTime, 1);
}
}
return 0;
}
示例10: CalHeroEquipProperty
bool NFCHeroPropertyModule::CalHeroEquipProperty(const NFGUID& self, const NFGUID& xHeroGUID, NFIDataList& xDataList)
{
NF_SHARE_PTR<NFIRecord> pHeroRecord = m_pKernelModule->FindRecord(self, NFrame::Player::R_PlayerHero());
if (nullptr == pHeroRecord)
{
return false;
}
NFCDataList varFind;
if (pHeroRecord->FindObject(NFrame::Player::PlayerHero_GUID, xHeroGUID, varFind) != 1)
{
return false;
}
const int nRow = varFind.Int(0);
NF_SHARE_PTR<NFIRecord> pHeroPropertyRecord = m_pKernelModule->FindRecord(self, NFrame::Player::R_HeroPropertyValue());
if (nullptr == pHeroPropertyRecord)
{
return false;
}
////////////////////Equip//////////////////////////////////////////////////////
xDataList.Clear();
for (int i = 0; i < pHeroPropertyRecord->GetCols(); ++i)
{
xDataList.AddInt(0);
}
for (int i = NFrame::Player::PlayerHero_Equip1; i <= NFrame::Player::PlayerHero_Equip6; ++i)
{
NFCDataList EquipDataList;
const NFGUID xEquipID = pHeroRecord->GetObject(nRow, i);
if (!xEquipID.IsNull() && m_pEquipPropertyModule->CalEquipProperty(self, xEquipID, EquipDataList))
{
//one equip
for (int j = 0; j < pHeroPropertyRecord->GetCols(); ++j)
{
int nOldValue = xDataList.Int(j);
int nEquipValue = EquipDataList.Int(j);
xDataList.SetInt(j, nOldValue + nEquipValue);
}
}
}
return true;
}
示例11: GetHeroGUID
NFGUID NFCHeroModule::GetHeroGUID(const NFGUID& self, const std::string& strID)
{
NF_SHARE_PTR<NFIRecord> pHeroRecord = m_pKernelModule->FindRecord(self, NFrame::Player::PlayerHero::ThisName());
if (nullptr == pHeroRecord)
{
return NFGUID();
}
int nRow = pHeroRecord->FindString(NFrame::Player::PlayerHero::ConfigID, strID);
if (nRow < 0)
{
return NFGUID();
}
return pHeroRecord->GetObject(nRow, NFrame::Player::PlayerHero::GUID);
}
示例12:
const NFGUID& NFCPackModule::CreateEquip( const NFGUID& self, const std::string& strConfigName )
{
NF_SHARE_PTR<NFIObject> pObject = m_pKernelModule->GetObject( self );
if ( NULL == pObject )
{
return NULL_OBJECT;
}
//还得确定有这个装备
bool bExist = m_pElementModule->ExistElement( strConfigName );
if ( !bExist )
{
return NULL_OBJECT;
}
int nItemType = m_pElementModule->GetPropertyInt(strConfigName, NFrame::Item::ItemType());
if ( NFMsg::EItemType::EIT_EQUIP != nItemType )
{
return NULL_OBJECT;
}
NF_SHARE_PTR<NFIRecord> pRecord = pObject->GetRecordManager()->GetElement( NFrame::Player::R_BagEquipList() );
if (!pRecord)
{
return NULL_OBJECT;
}
NFGUID ident = m_pUUIDModule->CreateGUID();
NF_SHARE_PTR<NFIDataList> var = pRecord->GetInitData();
var->SetObject(NFrame::Player::BagEquipList_GUID, ident);
var->SetString(NFrame::Player::BagEquipList_ConfigID, strConfigName.c_str());
var->SetInt(NFrame::Player::BagEquipList_Date, NFTime::GetNowTime());
int nAddRow = pRecord->AddRow(-1, *var);
if (nAddRow > 0)
{
return pRecord->GetObject(nAddRow, NFrame::Player::BagEquipList_GUID);
}
return NULL_OBJECT;
}
示例13: GetTeamInfo
bool NFCTeamModule::GetTeamInfo(const NFGUID& self, const NFGUID& xTeam, NFMsg::TeamInfo& xTeamInfo)
{
if (xTeam.IsNull())
{
return false;
}
NF_SHARE_PTR<NFIPropertyManager> pPropertyManager = m_pCommonRedisModule->GetCachePropertyInfo(xTeam, NFrame::Team::ThisName());
NF_SHARE_PTR<NFIRecordManager> pRecordManager = m_pCommonRedisModule->GetCacheRecordInfo(xTeam, NFrame::Team::ThisName());
if (!pPropertyManager)
{
return false;
}
if (!pRecordManager)
{
return false;
}
NF_SHARE_PTR<NFIRecord> pMemberRecord = pRecordManager->GetElement(NFrame::Team::MemberList::ThisName());
if (!pMemberRecord.get())
{
return false;
}
NFGUID xCaptain = pPropertyManager->GetPropertyObject(NFrame::Team::Captain());
if (!xCaptain.IsNull())
{
return false;
}
*xTeamInfo.mutable_team_id() = NFINetModule::NFToPB(xTeam);
*xTeamInfo.mutable_captain_id() = NFINetModule::NFToPB(xCaptain);
for (int i = 0; i < pMemberRecord->GetRows(); i++)
{
if (!pMemberRecord->IsUsed(i))
{
continue;
}
NFMsg::TeammemberInfo* pMemberinfo = xTeamInfo.add_teammemberinfo();
if (!pMemberinfo)
{
continue;
}
std::string strName = pMemberRecord->GetString(i, NFrame::Team::MemberList::Name);
const int nLevel = pMemberRecord->GetInt32(i, NFrame::Team::MemberList::Level);
const int nJob = pMemberRecord->GetInt32(i, NFrame::Team::MemberList::Job);
const NFGUID xPlayerID = pMemberRecord->GetObject(i, NFrame::Team::MemberList::GUID);
pMemberinfo->set_name(strName);
pMemberinfo->set_nlevel(nLevel);
pMemberinfo->set_job(nJob);
pMemberinfo->set_headicon("");
*pMemberinfo->mutable_player_id() = NFINetModule::NFToPB(xPlayerID);
}
return true;
}
示例14: ConvertPropertyManagerToPB
bool NFCCreateRoleModule::ConvertPropertyManagerToPB(const NF_SHARE_PTR<NFIPropertyManager>& pProps, NFMsg::ObjectPropertyList * pPropertyData)
{
if (pProps)
{
NF_SHARE_PTR<NFIProperty> xPropert = pProps->First();
while (xPropert)
{
if (xPropert->GetCache() || xPropert->GetSave())
{
switch (xPropert->GetType())
{
case NFDATA_TYPE::TDATA_INT:
{
NFMsg::PropertyInt* pData = pPropertyData->add_property_int_list();
pData->set_property_name(xPropert->GetKey());
pData->set_data(xPropert->GetInt());
}
break;
case NFDATA_TYPE::TDATA_FLOAT:
{
NFMsg::PropertyFloat* pData = pPropertyData->add_property_float_list();
pData->set_property_name(xPropert->GetKey());
pData->set_data(xPropert->GetFloat());
}
break;
case NFDATA_TYPE::TDATA_OBJECT:
{
NFMsg::PropertyObject* pData = pPropertyData->add_property_object_list();
pData->set_property_name(xPropert->GetKey());
*(pData->mutable_data()) = NFINetModule::NFToPB(xPropert->GetObject());
}
break;
case NFDATA_TYPE::TDATA_STRING:
{
NFMsg::PropertyString* pData = pPropertyData->add_property_string_list();
pData->set_property_name(xPropert->GetKey());
pData->set_data(xPropert->GetString());
std::cout << xPropert->GetKey() << " " << xPropert->GetString() << std::endl;
}
break;
case NFDATA_TYPE::TDATA_VECTOR2:
{
NFMsg::PropertyVector2* pData = pPropertyData->add_property_vector2_list();
pData->set_property_name(xPropert->GetKey());
*(pData->mutable_data()) = NFINetModule::NFToPB(xPropert->GetVector2());
}
break;
case NFDATA_TYPE::TDATA_VECTOR3:
{
NFMsg::PropertyVector3* pData = pPropertyData->add_property_vector3_list();
pData->set_property_name(xPropert->GetKey());
*(pData->mutable_data()) = NFINetModule::NFToPB(xPropert->GetVector3());
}
break;
default:
break;
}
}
xPropert = pProps->Next();
}
}
return false;
}
示例15: ConvertRecordToPB
bool NFCCreateRoleModule::ConvertRecordToPB(const NF_SHARE_PTR<NFIRecord>& pRecord, NFMsg::ObjectRecordBase * pRecordData)
{
pRecordData->set_record_name(pRecord->GetName());
for (int iRow = 0; iRow < pRecord->GetRows(); iRow++)
{
if (!pRecord->IsUsed(iRow))
{
continue;
}
NFMsg::RecordAddRowStruct* pRowData = pRecordData->add_row_struct();
if (!pRowData)
{
continue;
}
pRowData->set_row(iRow);
for (int iCol = 0; iCol < pRecord->GetCols(); iCol++)
{
const int nType = pRecord->GetColType(iCol);
switch (nType)
{
case TDATA_INT:
{
NFMsg::RecordInt* pPropertyData = pRowData->add_record_int_list();
const NFINT64 xPropertyValue = pRecord->GetInt(iRow, iCol);
if (pPropertyData)
{
pPropertyData->set_col(iCol);
pPropertyData->set_row(iRow);
pPropertyData->set_data(xPropertyValue);
}
}
break;
case TDATA_FLOAT:
{
NFMsg::RecordFloat* pPropertyData = pRowData->add_record_float_list();
const double xPropertyValue = pRecord->GetFloat(iRow, iCol);
if (pPropertyData)
{
pPropertyData->set_col(iCol);
pPropertyData->set_row(iRow);
pPropertyData->set_data(xPropertyValue);
}
}
break;
case TDATA_STRING:
{
NFMsg::RecordString* pPropertyData = pRowData->add_record_string_list();
const std::string& xPropertyValue = pRecord->GetString(iRow, iCol);
if (pPropertyData)
{
pPropertyData->set_col(iCol);
pPropertyData->set_row(iRow);
pPropertyData->set_data(xPropertyValue);
}
}
break;
case TDATA_OBJECT:
{
NFMsg::RecordObject* pPropertyData = pRowData->add_record_object_list();
const NFGUID xPropertyValue = pRecord->GetObject(iRow, iCol);
if (pPropertyData)
{
pPropertyData->set_col(iCol);
pPropertyData->set_row(iRow);
*pPropertyData->mutable_data() = NFINetModule::NFToPB(xPropertyValue);
}
}
break;
case TDATA_VECTOR2:
{
NFMsg::RecordVector2* pPropertyData = pRowData->add_record_vector2_list();
const NFVector2 xPropertyValue = pRecord->GetVector2(iRow, iCol);
if (pPropertyData)
{
pPropertyData->set_col(iCol);
pPropertyData->set_row(iRow);
NFMsg::Vector2* pVec = pPropertyData->mutable_data();
pVec->set_x(xPropertyValue.X());
pVec->set_y(xPropertyValue.Y());
}
}
break;
case TDATA_VECTOR3:
{
NFMsg::RecordVector3* pPropertyData = pRowData->add_record_vector3_list();
const NFVector3 xPropertyValue = pRecord->GetVector3(iRow, iCol);
if (pPropertyData)
{
//.........这里部分代码省略.........