这篇教程C++ GetDataPtr函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中GetDataPtr函数的典型用法代码示例。如果您正苦于以下问题:C++ GetDataPtr函数的具体用法?C++ GetDataPtr怎么用?C++ GetDataPtr使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了GetDataPtr函数的22个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: AllocateKString::KString(LPCTSTR pStr1, size_t szLength1, LPCTSTR pStr2, size_t szLength2){ Allocate(szLength1 + szLength2); memcpy(GetDataPtr(), pStr1, GetStreamCharsLength(szLength1)); memcpy(GetDataPtr(szLength1), pStr2, GetStreamCharsLength(szLength2));}
开发者ID:tetratec,项目名称:runescape-classic-dump,代码行数:7,
示例2: DeleteAllColumnsvoid CPageDocuments::DisplayShips(int index){ CString info; m_list.DeleteAllItems(); DeleteAllColumns(); m_list.InsertColumn(0 , "船舰名字" , LVCFMT_LEFT , 100); m_list.InsertColumn(1 , "建造金属" , LVCFMT_LEFT , 80); m_list.InsertColumn(2 , "建造晶体" , LVCFMT_LEFT , 80); m_list.InsertColumn(3 , "建造重氢" , LVCFMT_LEFT , 80); m_list.InsertColumn(4 , "建造时间" , LVCFMT_LEFT , 80); m_list.InsertColumn(5 , "攻击能力" , LVCFMT_LEFT , 80); m_list.InsertColumn(6 , "运载能力" , LVCFMT_LEFT , 80); m_list.InsertColumn(7 , "飞行速度" , LVCFMT_LEFT , 80); m_list.InsertColumn(8 , "技术需求" , LVCFMT_LEFT , 250); for(int i = 0 ; i < BOAT_MAX ; ++i) { info.Format("%s" , BOATS_NAME[i]); m_list.InsertItem(i , info); //metal info.Format("%d" , BOATS_RESOURCE_NEED_BASE[i][0] ); m_list.SetItemText(i , 1 , info); //crystal info.Format("%d" , BOATS_RESOURCE_NEED_BASE[i][1] ); m_list.SetItemText(i , 2 , info); //diplogen info.Format("%d" , BOATS_RESOURCE_NEED_BASE[i][2] ); m_list.SetItemText(i , 3 , info); //time double t = get_boat_produce_seconds( GetDataPtr()->GetBuildingLevel(FACTORY_BUILDING_BOATYARD), //shipyard level GetDataPtr()->GetBuildingLevel(FACTORY_BUILDING_NANITE), //nanitefactory level BOATS_RESOURCE_NEED_BASE[i][0] , BOATS_RESOURCE_NEED_BASE[i][1], 1.0); HighFrequencyElapsedTimer timer; timer.Init(t * 1000); m_list.SetItemText(i , 4 , timer.ToCString()); //attack force info.Format("%d" , UINT(SHIP_ATTACK_FORCE_BASE[i] * (1 + 0.1 * GetDataPtr()->GetResearchLevel(RESEARCH_WEAPON))) ); m_list.SetItemText(i , 5 , info); //transfer capacity force info.Format("%d" , SHIP_TRANSFER_CAPACITY[i] ); m_list.SetItemText(i , 6 , info); //speed info.Format("%d" , kernel_.GetShipSpeed(ITEM_TYPE(i) , 0)); m_list.SetItemText(i , 7 , info); //tech needed m_list.SetItemText(i , 8 , Boats_Entry(i)->GetTechNeeded()); }}
开发者ID:chengpenghui,项目名称:UGame,代码行数:60,
示例3: DEBUG_VERIFYsize_t KString::Find(LPCTSTR pSString, size_t szStart) const{ DEBUG_VERIFY(szStart <= GetLength()); LPCTSTR ptr = _tcsstr(GetDataPtr() + szStart, pSString); return ptr ? ptr - GetDataPtr() : UINT_MAX;}
开发者ID:tetratec,项目名称:runescape-classic-dump,代码行数:8,
示例4: assertBOOL CPageBoatyard::IsResourceEnough(int index , UINT number){ assert(index >= 0 && index < boat_keeper_->Size()); if(GetDataPtr()->GetResource(RESOURCE_METAL) >= (Boats_Entry(index)->GetProduceMinal() * number) && GetDataPtr()->GetResource(RESOURCE_CRYSTAL) >= (Boats_Entry(index)->GetProduceCrystal() * number) && GetDataPtr()->GetResource(RESOURCE_DIPLOGEN) >= (Boats_Entry(index)->GetProduceDiplogen() * number)) return TRUE; return FALSE;}
开发者ID:chengpenghui,项目名称:UGame,代码行数:9,
示例5: wcslenTWideString::TWideString(LPCWSTR pWideString){ const size_t szLength = wcslen(pWideString); AllocateAdd(szLength + 1); memcpy(GetDataPtr(), pWideString, szLength * sizeof(WCHAR)); GetDataPtr()[szLength] = 0;}
开发者ID:tetratec,项目名称:runescape-classic-dump,代码行数:10,
示例6: strlenTAnsiString::TAnsiString(LPCSTR pAnsiString){ const size_t szLength = strlen(pAnsiString); AllocateAdd(szLength + 1); memcpy(GetDataPtr(), pAnsiString, szLength * sizeof(CHAR)); GetDataPtr()[szLength] = 0;}
开发者ID:tetratec,项目名称:runescape-classic-dump,代码行数:10,
示例7: KStringKString KString::operator + (TAlignment Alignment) const{ if(Alignment == ALIGNMENT_MIN) return KString(GetDataPtr(), GetLength(), TEXT("min"), 3); if(Alignment == ALIGNMENT_MID) return KString(GetDataPtr(), GetLength(), TEXT("mid"), 3); if(Alignment == ALIGNMENT_MAX) return KString(GetDataPtr(), GetLength(), TEXT("max"), 3); INITIATE_FAILURE;}
开发者ID:tetratec,项目名称:runescape-classic-dump,代码行数:13,
示例8: _stprintfKString KString::operator + (float fValue) const{ TCHAR Buf[32]; _stprintf(Buf, TEXT("%.2f"), fValue); return KString(GetDataPtr(), GetLength(), Buf, _tcslen(Buf));};
开发者ID:tetratec,项目名称:runescape-classic-dump,代码行数:7,
示例9: WTRACEvoid* MMsgRoutingUnsubscribeDataObject::Pack(void){ WTRACE("MMsgRoutingUnsubscribeDataObject::Pack"); SetServiceType(WONMsg::MiniRoutingServer); SetMessageType(WONMsg::RoutingUnsubscribeDataObject); RoutingServerMessage::Pack(); WDBG_LL("MMsgRoutingUnsubscribeDataObject::Pack Appending message data"); // append the client/group id AppendClientOrGroupId(mLinkId); // append the datatype length followed by the datatype itself AppendByte(mDataType.size()); AppendBytes(mDataType.size(), mDataType.data()); // append the flags unsigned char aFlags = 0; if (mExactOrRecursiveFlag) aFlags |= 0x01; if (mGroupOrMembersFlag) aFlags |= 0x02; AppendByte(aFlags); return GetDataPtr();}
开发者ID:SOLARIC,项目名称:world-opponent-network,代码行数:25,
示例10: WTRACEvoid* MMsgRoutingCreateGroup::Pack(void){ WTRACE("MMsgRoutingCreateGroup::Pack"); SetServiceType(WONMsg::MiniRoutingServer); SetMessageType(WONMsg::RoutingCreateGroup); RoutingServerMessage::Pack(); WDBG_LL("MMsgRoutingCreateGroup::Pack Appending message data"); // append group name AppendGroupName(mGroupName); // append flags unsigned char aFlags = 0; if (mIsPublic) aFlags |= 0x01; if (mAnnounceGroupChanges) aFlags |= 0x02; AppendByte(aFlags); // append client count _ASSERT(mClientList.size() <= USHRT_MAX); AppendShort(mClientList.size()); // append client list std::list<unsigned short>::iterator itr = mClientList.begin(); while (itr != mClientList.end()) AppendClientId(*(itr++)); return GetDataPtr();}
开发者ID:SOLARIC,项目名称:world-opponent-network,代码行数:30,
示例11: TCPSendDataCallbackerr_tTCPSendDataCallback(struct netif *netif, struct pbuf *p, struct ip_addr *dest){ NDIS_STATUS NdisStatus; PNEIGHBOR_CACHE_ENTRY NCE; IP_PACKET Packet = { 0 }; IP_ADDRESS RemoteAddress, LocalAddress; PIPv4_HEADER Header; UINT i; struct pbuf *p1; /* The caller frees the pbuf struct */ if (((*(u8_t*)p->payload) & 0xF0) == 0x40) { Header = p->payload; LocalAddress.Type = IP_ADDRESS_V4; LocalAddress.Address.IPv4Address = Header->SrcAddr; RemoteAddress.Type = IP_ADDRESS_V4; RemoteAddress.Address.IPv4Address = Header->DstAddr; } else { return ERR_IF; } if (!(NCE = RouteGetRouteToDestination(&RemoteAddress))) { return ERR_RTE; } NdisStatus = AllocatePacketWithBuffer(&Packet.NdisPacket, NULL, p->tot_len); if (NdisStatus != NDIS_STATUS_SUCCESS) { return ERR_MEM; } GetDataPtr(Packet.NdisPacket, 0, (PCHAR*)&Packet.Header, &Packet.ContigSize); for (i = 0, p1 = p; i < p->tot_len; i += p1->len, p1 = p1->next) { ASSERT(p1); RtlCopyMemory(((PUCHAR)Packet.Header) + i, p1->payload, p1->len); } Packet.HeaderSize = sizeof(IPv4_HEADER); Packet.TotalSize = p->tot_len; Packet.SrcAddr = LocalAddress; Packet.DstAddr = RemoteAddress; if (!NT_SUCCESS(IPSendDatagram(&Packet, NCE, TCPPacketSendComplete, NULL))) { FreeNdisPacket(Packet.NdisPacket); return ERR_IF; } return 0;}
开发者ID:HBelusca,项目名称:NasuTek-Odyssey,代码行数:60,
示例12: WTRACE// TMsgDirFindServiceReply::Pack// Virtual method from TMessage. Packs data into message buffer and// sets the new message length.void*TMsgDirFindServiceReply::Pack(void){ WTRACE("TMsgDirFindServiceReply::Pack"); SetServiceType(WONMsg::DirServer); SetMessageType(WONMsg::DirFindServiceReply); TMessage::Pack(); WDBG_LL("TMsgDirFindServiceReply::Pack Appending message data"); AppendShort(static_cast<short>(mStatus)); // Service info only sent if status is ok if (mStatus == WONMsg::StatusCommon_Success) { Append_PW_STRING(mService.mPath); Append_PW_STRING(mService.mName); Append_PW_STRING(mService.mDisplayName); Append_PW_STRING(mService.mVersion); Append_PW_STRING(mService.mProtoName); Append_PW_STRING(mService.mProtoVersion); Append_PW_STRING(mService.mNetAddress); AppendLong(mService.mLifespan); AppendLong(mService.mCreated); AppendShort(mService.mBlobLen); AppendBytes(mService.mBlobLen, mService.mBlob); } return GetDataPtr();}
开发者ID:SOLARIC,项目名称:world-opponent-network,代码行数:32,
示例13: WTRACE// SMsgDirG2ModifyService::Pack// Virtual method from SmallMessage. Packs data into message buffer.void*SMsgDirG2ModifyService::Pack(void){ WTRACE("SMsgDirG2ModifyService::Pack"); SetKeyType(KT_SERVICE); SetServiceType(WONMsg::SmallDirServerG2); if (IsExtended()) { SetMessageType(WONMsg::DirG2ModifyServiceEx); SetExtended(true, true); } else SetMessageType(WONMsg::DirG2ModifyService); SMsgDirG2UpdateExtendBase::Pack(); AppendByte(mEntityFlags); PackKey(*this); Append_PW_STRING(mNewName); unsigned char aLen = mNewNetAddress.size(); AppendByte(aLen); if (aLen > 0) AppendBytes(aLen, mNewNetAddress.data()); Append_PW_STRING(mNewDisplayName); AppendLong(mNewLifespan); PackExtended(); PackPeerData(); return GetDataPtr();}
开发者ID:vgck,项目名称:opendr2,代码行数:33,
示例14: WTRACEvoid* MMsgRoutingModifyDataObject::Pack(void){ WTRACE("MMsgRoutingModifyDataObject::Pack"); SetServiceType(WONMsg::MiniRoutingServer); SetMessageType(WONMsg::RoutingModifyDataObject); RoutingServerMessage::Pack(); WDBG_LL("MMsgRoutingModifyDataObject::Pack Appending message data"); // append the client/group id AppendClientOrGroupId(mLinkId); // append the datatype, preceded by datatype length AppendByte(mDataType.size()); AppendBytes(mDataType.size(), mDataType.data()); // append the offset AppendShort(mOffset); // append the IsInsert flag AppendBool(mIsInsert); // append the data length followed by the data itself AppendShort(mData.size()); AppendBytes(mData.size(), mData.data()); return GetDataPtr();}
开发者ID:SOLARIC,项目名称:world-opponent-network,代码行数:29,
示例15: WTRACE// TMsgAuth1Complete::Pack// Virtual method from TMessage. Packs data into message buffer and// sets the new message length.void*TMsgAuth1Complete::Pack(void){ WTRACE("TMsgAuth1Complete::Pack"); SetServiceType(WONMsg::Auth1PeerToPeer); SetMessageType(WONMsg::Auth1Complete); TMsgAuthRawBufferBase::Pack(); WDBG_LL("TMsgAuth1Complete::Pack Appending message data"); AppendShort(static_cast<short>(mStatus)); // Append error info if status implies failure if (mStatus < 0) { WDBG_LL("TMsgAuth1Complete::Pack Failure status, append error info"); AppendShort(mErrList.size()); ErrorList::iterator anItr(mErrList.begin()); for (; anItr != mErrList.end(); anItr++) Append_PA_STRING(*anItr); } // Otherwise append success info else { WDBG_LL("TMsgAuth1Complete::Pack Success status, append secret and optional session"); PackRawBuf(); if (mSessionId != 0) AppendShort(mSessionId); } return GetDataPtr();}
开发者ID:SOLARIC,项目名称:world-opponent-network,代码行数:34,
示例16: WTRACEvoid* MMsgRoutingSendData::Pack(void){ WTRACE("MMsgRoutingSendData::Pack"); SetServiceType(WONMsg::MiniRoutingServer); SetMessageType(WONMsg::RoutingSendData); RoutingServerMessage::Pack(); WDBG_LL("MMsgRoutingSendData::Pack Appending message data"); // append the flags unsigned char aFlags = 0; if (mShouldSendReply) aFlags |= 0x01; if (mIncludeExcludeFlag) aFlags |= 0x02; AppendByte(aFlags); // append the message length and data _ASSERT(mData.size() <= USHRT_MAX); AppendShort(mData.size()); AppendBytes(mData.size(), mData.data()); // append the addressee list AppendAddresseeList(this); return GetDataPtr();}
开发者ID:SOLARIC,项目名称:world-opponent-network,代码行数:26,
示例17: WTRACE// SMsgDirG2ExplicitSetDataObjects::Pack// Virtual method from SmallMessage. Packs data into message buffer.void*SMsgDirG2ExplicitSetDataObjects::Pack(void){ WTRACE("SMsgDirG2ExplicitSetDataObjects::Pack"); SetServiceType(WONMsg::SmallDirServerG2); SetMessageType(mKeyType == KT_SERVICE ? WONMsg::DirG2ServiceExplicitSetDataObjects : WONMsg::DirG2DirectoryExplicitSetDataObjects); SMsgDirG2UpdateBase::Pack(); PackKey(*this); AppendShort(mObjects.size()); ExplicitDOInfoList::iterator anItr(mObjects.begin()); for (; anItr != mObjects.end(); anItr++) { AppendByte(static_cast<unsigned char>(anItr->mSetMode)); unsigned char aTypeLen = anItr->mData.GetDataType().size(); AppendByte(aTypeLen); if (aTypeLen > 0) AppendBytes(aTypeLen, anItr->mData.GetDataType().data()); unsigned short aDataLen = anItr->mData.GetData().size(); AppendShort(aDataLen); if (aDataLen > 0) AppendBytes(aDataLen, anItr->mData.GetData().data()); } PackPeerData(); return GetDataPtr();}
开发者ID:SOLARIC,项目名称:world-opponent-network,代码行数:32,
示例18: PL_ASSERT// Set all columns by value into this tuple.void Tuple::SetValue(oid_t column_offset, const common::Value &value) { PL_ASSERT(tuple_schema); PL_ASSERT(tuple_data); const common::Type::TypeId type = tuple_schema->GetType(column_offset); const bool is_inlined = tuple_schema->IsInlined(column_offset); char *value_location = GetDataPtr(column_offset); UNUSED_ATTRIBUTE int32_t column_length = tuple_schema->GetLength(column_offset); if (is_inlined == false) column_length = tuple_schema->GetVariableLength(column_offset); // const bool is_in_bytes = false; // Allocate in heap or given data pool depending on whether a pool is provided // Skip casting if type is same if (type == value.GetTypeId()) { value.SerializeTo(value_location, is_inlined, nullptr); } else { common::Value *casted_value = value.CastAs(type); casted_value->SerializeTo(value_location, is_inlined, nullptr); // Do not clean up immediately // casted_value.SetCleanUp(false); }}
开发者ID:ranxian,项目名称:peloton-1,代码行数:26,
示例19: GetDataPtrLPCWSTR CDialogItemTemplate::GetClassName() const{ const WORD* pw = GetDataPtr(); if ( *pw == 0xFFFF ) return (LPCWSTR) MAKEINTATOM(pw[1]); else return (LPCWSTR) pw;}
开发者ID:EmuxEvans,项目名称:sailing,代码行数:8,
示例20: GetDataPtrvoid CPageBoatyard::CancelCurrentProducing(){ GetDataPtr()->IncreaseResource(buff_cosume_metal , buff_cosume_cryst , buff_cosume_diplo); GetCommander()->Notify_Resource_Changed(); is_producing_ = false; SetWorkFlag(false); UpdateItemText();}
开发者ID:chengpenghui,项目名称:UGame,代码行数:8,
示例21: SetMemAlignvoid Image::Draw(float x, float y) const{ if(!m_uWidth) return; SetMemAlign(m_uWidth, FALSE); glRasterPos2f(x, y); glDrawPixels(m_uWidth, m_uHeight, GetPixelFormat(), GL_UNSIGNED_BYTE, GetDataPtr());}
开发者ID:GGyorin,项目名称:citb501,代码行数:8,
示例22: GetLengthKString& KString::operator += (const KString& SString){ if(&SString == this) { size_t szOldLength = GetLength(); Extend(GetLength()); memcpy(GetDataPtr() + szOldLength, GetDataPtr(), GetStreamCharsLength(szOldLength)); } else { Extend(SString, SString.GetLength()); } return *this;}
开发者ID:tetratec,项目名称:runescape-classic-dump,代码行数:17,
注:本文中的GetDataPtr函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ GetDataViewPeer函数代码示例 C++ GetDataNode函数代码示例 |