这篇教程C++ GetComponent函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中GetComponent函数的典型用法代码示例。如果您正苦于以下问题:C++ GetComponent函数的具体用法?C++ GetComponent怎么用?C++ GetComponent使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了GetComponent函数的24个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: sprintf//=====================================================================================// Window for WIND//=====================================================================================CFuiWind::CFuiWind(Tag idn, const char *filename):CFuiWindow(idn,filename,0,0,0){ char erm[128]; sprintf(erm,"Incorrect TEMPLATE file: %",filename); //---Locate components ------------------------------------ layW = (CFuiList*) GetComponent('layr'); if (0 == layW) gtfo(erm); errW = (CFuiLabel*) GetComponent('eror'); if (0 == layW) gtfo(erm); popW = (CFuiPopupMenu*) GetComponent('popm'); if (0 == popW) gtfo(erm); skyW = (CFuiTextField*) GetComponent('ceil'); if (0 == skyW) gtfo(erm); //-- Init menu ------------------------------------------- popW->CreatePage(&cMEN,coverMENU); layer = globals->wtm->GetCloudLayer(); popW->SetButtonText((char*)cMEN.aText[layer]); //-- Init cloud ceil ------------------------------------- ceil = globals->wtm->GetCloudCeil(); ChangeCeil(0); //-- Init list box --------------------------------------- U_INT type = LIST_HAS_TITLE + LIST_NOHSCROLL; windBOX.SetParameters(this,'layr',type); windBOX.Display(); Select();}
开发者ID:FlySimvol,项目名称:FlyLegacy,代码行数:29,
示例2: Split2Components// Splits the calling object into its components.global func Split2Components(){ // Safety: can only be called from object context. if (!this || GetType(this) != C4V_C4Object) return FatalError(Format("Split2Components must be called from object context and not from %v", this)); // Transfer all contents to container. var ctr = Contained(); while (Contents()) if (!ctr || !Contents()->Enter(ctr)) Contents()->Exit(); // Split components. for (var i = 0, compid; compid = GetComponent(nil, i); ++i) for (var j = 0; j < GetComponent(compid); ++j) { var comp = CreateObjectAbove(compid, nil, nil, GetOwner()); if (OnFire()) comp->Incinerate(); if (!ctr || !comp->Enter(ctr)) { comp->SetR(Random(360)); comp->SetXDir(Random(3) - 1); comp->SetYDir(Random(3) - 1); comp->SetRDir(Random(3) - 1); } } return RemoveObject();}
开发者ID:TheBlackJokerDevil,项目名称:openclonk,代码行数:29,
示例3: //=====================================================================================//=====================================================================================// Weather overview//=====================================================================================CFuiWeatherView::CFuiWeatherView(Tag idn, const char *filename):CFuiWindow(idn,filename,0,0,0){ char *erm = "Invalid template %s"; //---Get window components ------------------------------- datW = (CFuiLabel*)GetComponent('date'); if (0 == datW) gtfo(erm,filename); timW = (CFuiLabel*)GetComponent('time'); if (0 == datW) gtfo(erm,filename); utcW = (CFuiLabel*)GetComponent('utc_'); if (0 == utcW) gtfo(erm,filename); disW = (CFuiLabel*)GetComponent('dist'); if (0 == disW) gtfo(erm,filename); locW = (CFuiLabel*)GetComponent('loca'); if (0 == locW) gtfo(erm,filename); winW = (CFuiLabel*)GetComponent('wind'); if (0 == winW) gtfo(erm,filename); altW = (CFuiLabel*)GetComponent('alti'); if (0 == altW) gtfo(erm,filename); tmpW = (CFuiLabel*)GetComponent('temp'); if (0 == tmpW) gtfo(erm,filename); barW = (CFuiLabel*)GetComponent('baro'); if (0 == barW) gtfo(erm,filename); cldW = (CFuiLabel*)GetComponent('clod'); if (0 == cldW) gtfo(erm,filename); //--------------------------------------------------------- Apt = 0; Req.SetWindow(this);}
开发者ID:PierrotG,项目名称:FlyLegacy,代码行数:32,
示例4: DeSerialize/////////////////////////////// DeSerialize// -Translate the data in the buffer into relevant data for this objectvoid Player::DeSerialize(char * _buffer){ Transform * playerT = (Transform*)GetComponent(C_TRANSFORM); InputController * playerI = (InputController*)GetComponent(C_INPUT); // Read ID unsigned int id = 0; memcpy(&id, &_buffer[0], sizeof(id)); m_uiID = id; // Read X int x = 0; memcpy(&x, &_buffer[4], sizeof(x)); playerT->SetX(x); // Read Y int y = 0; memcpy(&y, &_buffer[8], sizeof(y)); playerT->SetY(y); // Read input controller's ID unsigned int inputID = 0;// playerI->GetID(); memcpy(&inputID, &_buffer[12], sizeof(inputID)); playerI->SetID(inputID); m_pGame->SetRefresh(true);}
开发者ID:Msciortino17,项目名称:RakNetDungeon,代码行数:30,
示例5: BaseEnemystd::unique_ptr<Entity> EntityFactory::CreateFlyingEnemy(int x, int y, Entity *target){ auto e = BaseEnemy(x, y); e->AddComponent(ComponentType::AI, std::unique_ptr<FlyingAiComponent>(new FlyingAiComponent(target))); auto g = static_cast<GraphicsComponent *>(e->GetComponent(ComponentType::GRAPHICS)); auto c = static_cast<CollisionComponent *>(e->GetComponent(ComponentType::COLLISION)); g->AddFrame(0, 200028, 5); g->AddFrame(0, 200032, 5); c->AddHitbox(0,0,70,35, HitboxType::SOLID); c->AddHitbox(0,0,70,35, HitboxType::TRIGGER); std::unique_ptr<SoundComponent> sound(new SoundComponent()); sound->AddSoundEffect(SoundEffectType::DEATH, SOUND_MONSTER_DEATH); e->AddComponent(ComponentType::SOUND, std::move(sound)); auto spawnHealthPickupOnDeathScript = Compiler::Compile("data/scripts/SpawnHealthPickupOnDeathScript.txt"); RegisterNativeBindings(spawnHealthPickupOnDeathScript); e->AddVmScript(std::move(spawnHealthPickupOnDeathScript)); return e;}
开发者ID:Valtis,项目名称:Peliprojekti-2013,代码行数:28,
示例6: Update/////////////////////////////// Update// -Main loopvoid Player::Update(){ Transform * playerT = (Transform*)GetComponent(C_TRANSFORM); InputController * input = (InputController*)GetComponent(C_INPUT); bool changedInput = false; if (input->GetKeyDown('W')) { playerT->SetY(playerT->GetY() - 1); changedInput = true; } if (input->GetKeyDown('A')) { playerT->SetX(playerT->GetX() - 1); changedInput = true; } if (input->GetKeyDown('S')) { playerT->SetY(playerT->GetY() + 1); changedInput = true; } if (input->GetKeyDown('D')) { playerT->SetX(playerT->GetX() + 1); changedInput = true; } if (changedInput) { NetworkView * nwView = (NetworkView*)GetComponent(C_NETWORK); nwView->UpdatePositionMessage(playerT->GetX(), playerT->GetY()); } UpdateComponents();}
开发者ID:Msciortino17,项目名称:RakNetDungeon,代码行数:38,
示例7: TimeRepTimeRep :: TimeRep( const string & s ) : mSecs( 0 ) { vector <string> tmp; ALib::Split( s, ':', tmp ); if ( tmp.size() != 3 ) { throw Exception( "Invalid time format: " + s ); } int hrs = GetComponent( tmp[0], 24 ); int mins = GetComponent( tmp[1], 60 ); int secs = GetComponent( tmp[2], 60 ); mSecs = hrs * 60 * 60 + mins * 60 + secs;}
开发者ID:akki9c,项目名称:csvtest,代码行数:11,
示例8: Stepbool OMXClock::Step(int steps, bool lock){ if (!GetComponent()) return false; if (lock) Lock(); OMX_ERRORTYPE omxErr = OMX_ErrorNone; OMX_PARAM_U32TYPE param; OMX_INIT_STRUCTURE(param); param.nPortIndex = OMX_ALL; param.nU32 = steps; omxErr = SetConfig(OMX_IndexConfigSingleStep, ¶m); if (omxErr != OMX_ErrorNone) { if (lock) Unlock(); return false; } m_lastMediaTime = 0.0f; if (lock) Unlock(); return true;}
开发者ID:VRocker,项目名称:DashPi,代码行数:30,
示例9: Startbool OMXClock::Start(bool lock){ if (!GetComponent()) return false; if (lock) Lock(); OMX_ERRORTYPE omxErr = OMX_ErrorNone; OMX_TIME_CONFIG_CLOCKSTATETYPE clock; OMX_INIT_STRUCTURE(clock); clock.eState = OMX_TIME_ClockStateRunning; omxErr = SetConfig(OMX_IndexConfigTimeClockState, &clock); if (omxErr != OMX_ErrorNone) { if (lock) Unlock(); return false; } m_eState = clock.eState; m_lastMediaTime = 0.0f; if (lock) Unlock(); return true;}
开发者ID:VRocker,项目名称:DashPi,代码行数:32,
示例10: Stopbool OMXClock::Stop(bool lock){ if (!GetComponent()) return false; if (lock) Lock(); OMX_ERRORTYPE omxErr = OMX_ErrorNone; OMX_TIME_CONFIG_CLOCKSTATETYPE clock; OMX_INIT_STRUCTURE(clock); clock.eState = OMX_TIME_ClockStateStopped; clock.nOffset = ToOMXTime(-1000LL * OMX_PRE_ROLL); omxErr = SetConfig(OMX_IndexConfigTimeClockState, &clock); if (omxErr != OMX_ErrorNone) { if (lock) Unlock(); return false; } m_eState = clock.eState; m_lastMediaTime = 0.0f; if (lock) Unlock(); return true;}
开发者ID:VRocker,项目名称:DashPi,代码行数:33,
示例11: GetComponent bool MapSystem::OnEntityChangedUniqueId(EntityId id, const std::string& oldUniqueId, const std::string& newUniqueId) { if(oldUniqueId == newUniqueId) { return true; } typedef std::map<std::string, EntityId> UIMap; MapComponent* comp = GetComponent(id); assert(comp != NULL); UIMap::iterator j = mEntitiesByUniqueId.find(newUniqueId); if(j != mEntitiesByUniqueId.end()) { return false; } UIMap::iterator i = mEntitiesByUniqueId.find(oldUniqueId); if(i != mEntitiesByUniqueId.end()) { mEntitiesByUniqueId.erase(i); } mEntitiesByUniqueId[newUniqueId] = id; EntityNameUpdatedMessage msg; msg.SetAboutEntityId(id); msg.SetEntityName(comp->GetEntityName()); msg.SetUniqueId(newUniqueId); GetEntityManager().EmitMessage(msg); return true; }
开发者ID:flyskyosg,项目名称:dtentity,代码行数:33,
示例12: CS_ASSERT //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ void GridLayout::SetNumCols(u32 in_numCols) { CS_ASSERT(in_numCols > 0, "Cannot create a grid with 0 columns"); m_numCols = in_numCols; GetComponent()->OnLayoutChanged(); }
开发者ID:Carlos-Artesano,项目名称:ChilliSource,代码行数:9,
示例13: StateExecutebool OMXClock::StateExecute(bool lock){ if (!GetComponent()) return false; if (lock) Lock(); OMX_ERRORTYPE omxErr = OMX_ErrorNone; if (GetState() != OMX_StateExecuting) { StateIdle(false); omxErr = SetStateForComponent(OMX_StateExecuting); if (omxErr != OMX_ErrorNone) { if (lock) Unlock(); return false; } } m_lastMediaTime = 0.0f; if (lock) Unlock(); return true;}
开发者ID:VRocker,项目名称:DashPi,代码行数:30,
示例14: ClockAdjustmentdouble OMXClock::ClockAdjustment(bool lock){ if (!GetComponent()) return 0.0; if (lock) Lock(); OMX_ERRORTYPE omxErr = OMX_ErrorNone; double pts = 0.0; OMX_TIME_CONFIG_TIMESTAMPTYPE timestamp; OMX_INIT_STRUCTURE(timestamp); timestamp.nPortIndex = GetInputPort(); omxErr = GetConfig(OMX_IndexConfigClockAdjustment, ×tamp); if (omxErr != OMX_ErrorNone) { if (lock) Unlock(); return 0.0; } pts = (double)FromOMXTime(timestamp.nTimestamp); if (lock) Unlock(); return pts;}
开发者ID:VRocker,项目名称:DashPi,代码行数:32,
示例15: Assert/**** Draw formatted text with variable value.**** @param unit unit with variable to show.** @param defaultfont default font if no specific font in extra data.**** @note text is limited to 256 chars. (enough?)** @note text must have exactly 1 %d.** @bug if text format is incorrect.*//* virtual */ void CContentTypeFormattedText::Draw(const CUnit &unit, CFont *defaultfont) const{ char buf[256]; UStrInt usi1; CFont &font = this->Font ? *this->Font : *defaultfont; Assert(&font); //Wyrmgus start// CLabel label(font); CLabel label(font, this->TextColor, this->HighlightColor); //Wyrmgus end Assert((unsigned int) this->Index < UnitTypeVar.GetNumberVariable()); usi1 = GetComponent(unit, this->Index, this->Component, 0); if (usi1.type == USTRINT_STR) { snprintf(buf, sizeof(buf), this->Format.c_str(), _(usi1.s)); } else { snprintf(buf, sizeof(buf), this->Format.c_str(), usi1.i); } char *pos; if ((pos = strstr(buf, "~|")) != NULL) { std::string buf2(buf); label.Draw(this->Pos.x - font.getWidth(buf2.substr(0, pos - buf)), this->Pos.y, buf); } else if (this->Centered) { label.DrawCentered(this->Pos.x, this->Pos.y, buf); } else { label.Draw(this->Pos.x, this->Pos.y, buf); }}
开发者ID:KroArtem,项目名称:Wyrmgus,代码行数:41,
示例16: BackSubCoreDP_light_updatestatic PyObject * BackSubCoreDP_light_update(BackSubCoreDP * self, PyObject * args){ // Extract the 3 parameters... float mult[3]; if (!PyArg_ParseTuple(args, "fff", &mult[0], &mult[1], &mult[2])) return NULL; // Iterate every single component and update the effective mean, taking the offset into account... int y,x,c,col; for (y=0;y<self->height;y++) { for (x=0;x<self->width;x++) { for (c=0;c<self->component_cap;c++) { Component * com = GetComponent(self,y,x,c); for (col=0;col<3;col++) { float est = (com->mu[col] + self->prior_mu[col]) * mult[col]; if (est>1.0) est = 1.0; // No point in exceding the dynamic range - this seems to happen to skys a lot due to them being oversaturated. com->mu[col] = est - self->prior_mu[col]; } } } } Py_INCREF(Py_None); return Py_None;}
开发者ID:PeterZhouSZ,项目名称:helit,代码行数:28,
示例17: BackSubCoreDP_backgroundstatic PyObject * BackSubCoreDP_background(BackSubCoreDP * self, PyObject * args){ // Get the output numpy array... PyArrayObject * image; if (!PyArg_ParseTuple(args, "O!", &PyArray_Type, &image)) return NULL; // Iterate the pixels and write the mode into each... int y,x,c,i; for (y=0;y<self->height;y++) { for (x=0;x<self->width;x++) { float * rgb = (float*)(image->data + y*image->strides[0] + x*image->strides[1]); float best = 0.0; for (c=0;c<self->component_cap;c++) { Component * com = GetComponent(self,y,x,c); if (com->count>best) { best = com->count; for (i=0;i<3;i++) rgb[i] = self->prior_mu[i] + com->mu[i]; } } if (best<1e-3) { for (i=0;i<3;i++) rgb[i] = self->prior_mu[i]; } } } Py_INCREF(Py_None); return Py_None;}
开发者ID:PeterZhouSZ,项目名称:helit,代码行数:35,
示例18: GetComponent ComponentPtr Entity::GetOrCreateComponent(uint type_hash, const QString &name, AttributeChange::Type change) { ComponentPtr new_comp = GetComponent(type_hash, name); if (new_comp) return new_comp; return CreateComponent(type_hash, name, change); }
开发者ID:A-K,项目名称:naali,代码行数:8,
示例19: GetComponentComponent* Node::GetOrCreateComponent(ShortStringHash type, CreateMode mode){ Component* oldComponent = GetComponent(type); if (oldComponent) return oldComponent; else return CreateComponent(type, mode);}
开发者ID:acremean,项目名称:urho3d,代码行数:8,
示例20: UNREFERENCED_PARAMETER void Bullet::BulletDeath(WorldState & worldState) { //MarkForDestroy(worldState); UNREFERENCED_PARAMETER(worldState); mIsDead = true; GetComponent(CircleColliderComponent::TypeName())->AssertiveAs<CircleColliderComponent>()->SetEnabled(false); }
开发者ID:Nihav-Jain,项目名称:GeometryWars,代码行数:8,
|