|
EvEmu
0.8.4
11 September 2021
|
#include "BubbleManager.h"


Protected Member Functions | |
| SystemBubble * | MakeBubble (SystemManager *sysMgr, GPoint pos) |
Private Attributes | |
| Timer | m_emptyTimer |
| Timer | m_wanderTimer |
| uint32 | m_bubbleID |
| std::map< uint16, uint32 > | m_spawnIDs |
| std::list< SystemBubble * > | m_bubbles |
| std::vector< SystemEntity * > | m_wanderers |
| std::map< uint32, SystemBubble * > | m_bubbleIDMap |
| std::unordered_multimap < uint32, SystemBubble * > | m_sysBubbleMap |
Additional Inherited Members | |
Static Public Member Functions inherited from Singleton< BubbleManager > | |
| static BubbleManager & | get () |
Static Protected Attributes inherited from Singleton< BubbleManager > | |
| static std::shared_ptr < BubbleManager > | mInstance |
Definition at line 46 of file BubbleManager.h.
| BubbleManager::BubbleManager | ( | ) |
Definition at line 42 of file BubbleManager.cpp.
References m_bubbleIDMap, m_bubbles, m_sysBubbleMap, and m_wanderers.
| BubbleManager::~BubbleManager | ( | ) |
Definition at line 53 of file BubbleManager.cpp.
| void BubbleManager::Add | ( | SystemEntity * | pSE, |
| bool | isPostWarp = false |
||
| ) |
Definition at line 155 of file BubbleManager.cpp.
References _log, SystemBubble::Add(), SystemEntity::DestinyMgr(), GetBubble(), SystemManager::GetID(), SystemBubble::GetID(), SystemEntity::GetID(), SystemManager::GetName(), SystemEntity::GetName(), SystemEntity::GetPosition(), SystemGPoint::GetRandPointOnPlanet(), SystemBubble::GetSystemID(), SystemEntity::GetVelocity(), SystemBubble::InBubble(), Ga::GaVec3::isZero(), NewBubbleCenter(), SystemBubble::Remove(), DestinyManager::SetPosition(), SystemEntity::SysBubble(), and SystemEntity::SystemMgr().
Referenced by CheckBubble().


| void BubbleManager::CheckBubble | ( | SystemEntity * | ent | ) |
Definition at line 121 of file BubbleManager.cpp.
References _log, Add(), SystemEntity::GetID(), SystemEntity::GetName(), SystemEntity::GetPosition(), SystemBubble::InBubble(), SystemBubble::Remove(), SystemEntity::SysBubble(), SystemBubble::x(), Ga::GaVec3::x, SystemBubble::y(), Ga::GaVec3::y, SystemBubble::z(), and Ga::GaVec3::z.
Referenced by Process().


| void BubbleManager::clear | ( | ) |
Definition at line 65 of file BubbleManager.cpp.
References m_bubbles, SafeDelete(), and sLog.

| void BubbleManager::ClearSystemBubbles | ( | uint32 | systemID | ) |
Definition at line 275 of file BubbleManager.cpp.
References m_bubbleIDMap, m_bubbles, and m_sysBubbleMap.
|
inline |
| SystemBubble * BubbleManager::FindBubble | ( | SystemEntity * | ent | ) | const |
UPDATE large items, (sun, planet, moons) are no longer in bubbles. this cuts number of bubbles drastically, dropping average to 10bbl/system, and allowing a much larger amount of bubbles per system without introducing lag from bubble processing.
NOTE: these are only used here...
Definition at line 215 of file BubbleManager.cpp.
References SystemManager::GetID(), SystemEntity::GetPosition(), and SystemEntity::SystemMgr().
Referenced by GetBubble().


| SystemBubble * BubbleManager::FindBubble | ( | uint32 | systemID, |
| const GPoint & | pos | ||
| ) | const |
Definition at line 219 of file BubbleManager.cpp.
References _log, m_sysBubbleMap, Ga::GaVec3::x, Ga::GaVec3::y, and Ga::GaVec3::z.
| SystemBubble * BubbleManager::FindBubbleByID | ( | uint16 | bubbleID | ) |
Definition at line 267 of file BubbleManager.cpp.
References m_bubbleIDMap.
| SystemBubble * BubbleManager::GetBubble | ( | SystemManager * | sysMgr, |
| const GPoint & | pos | ||
| ) |
Definition at line 234 of file BubbleManager.cpp.
References FindBubble(), SystemManager::GetID(), and MakeBubble().
Referenced by Add().


| void BubbleManager::GetBubbleCenterMarkers | ( | std::vector< CosmicSignature > & | anom | ) |
Definition at line 332 of file BubbleManager.cpp.
References AttrScanMagnetometricStrength, EVEDB::invTypes::CosmicSignature, InventoryItem::customInfo(), SystemEntity::GetID(), SystemEntity::GetName(), SystemEntity::GetOwnerID(), SystemEntity::GetPosition(), SystemEntity::GetSelf(), m_sysBubbleMap, CosmicSignature::ownerID, CosmicSignature::position, CosmicSignature::scanAttributeID, CosmicSignature::scanGroupID, CosmicSignature::sigID, CosmicSignature::sigItemID, CosmicSignature::sigName, Scanning::Group::Signature, CosmicSignature::sigStrength, and CosmicSignature::systemID.

| void BubbleManager::GetBubbleCenterMarkers | ( | uint32 | systemID, |
| std::vector< CosmicSignature > & | anom | ||
| ) |
Definition at line 355 of file BubbleManager.cpp.
References AttrScanMagnetometricStrength, EVEDB::invTypes::CosmicSignature, InventoryItem::customInfo(), SystemEntity::GetID(), SystemEntity::GetName(), SystemEntity::GetOwnerID(), SystemEntity::GetPosition(), SystemEntity::GetSelf(), m_sysBubbleMap, CosmicSignature::ownerID, CosmicSignature::position, CosmicSignature::scanAttributeID, CosmicSignature::scanGroupID, CosmicSignature::sigID, CosmicSignature::sigItemID, CosmicSignature::sigName, Scanning::Group::Signature, CosmicSignature::sigStrength, and CosmicSignature::systemID.

Definition at line 324 of file BubbleManager.cpp.
References m_sysBubbleMap.
|
inline |
| int BubbleManager::Initialize | ( | ) |
Definition at line 56 of file BubbleManager.cpp.
References m_emptyTimer, m_wanderTimer, sLog, and Timer::Start().

|
protected |
Definition at line 243 of file BubbleManager.cpp.
References _log, BUBBLE_RADIUS_METERS, SystemManager::GetID(), SystemBubble::GetID(), m_bubbleIDMap, m_bubbles, m_sysBubbleMap, SystemBubble::MarkCenter(), Ga::GaVec3::normalize(), and sConfig.
Referenced by GetBubble().


| void BubbleManager::MarkCenters | ( | ) |
Definition at line 380 of file BubbleManager.cpp.
References m_sysBubbleMap.
| void BubbleManager::MarkCenters | ( | uint32 | systemID | ) |
Definition at line 390 of file BubbleManager.cpp.
References m_sysBubbleMap.
Definition at line 193 of file BubbleManager.cpp.
References BUBBLE_RADIUS_METERS, and Ga::GaVec3::normalize().
Referenced by Add().


| void BubbleManager::Process | ( | ) |
Definition at line 72 of file BubbleManager.cpp.
References _log, Profile::bubbles, Timer::Check(), CheckBubble(), GetTimeUSeconds(), m_bubbles, m_emptyTimer, m_wanderers, m_wanderTimer, RemoveEmpty(), sConfig, and sProfiler.

| void BubbleManager::Remove | ( | SystemEntity * | ent | ) |
Definition at line 198 of file BubbleManager.cpp.
References _log, SystemBubble::GetID(), SystemEntity::GetID(), SystemEntity::GetName(), SystemBubble::Remove(), and SystemEntity::SysBubble().

| void BubbleManager::RemoveBubble | ( | uint32 | systemID, |
| SystemBubble * | pSB | ||
| ) |
Definition at line 286 of file BubbleManager.cpp.
References SystemBubble::GetID(), m_bubbleIDMap, and m_sysBubbleMap.
Referenced by RemoveEmpty().


| void BubbleManager::RemoveEmpty | ( | ) |
Definition at line 141 of file BubbleManager.cpp.
References _log, m_bubbles, and RemoveBubble().
Referenced by Process().


| void BubbleManager::RemoveMarkers | ( | ) |
Definition at line 385 of file BubbleManager.cpp.
References m_sysBubbleMap.
| void BubbleManager::RemoveMarkers | ( | uint32 | systemID | ) |
Definition at line 396 of file BubbleManager.cpp.
References m_sysBubbleMap.
|
private |
Definition at line 106 of file BubbleManager.h.
Referenced by GetBubbleID().
|
private |
Definition at line 114 of file BubbleManager.h.
Referenced by BubbleManager(), ClearSystemBubbles(), FindBubbleByID(), MakeBubble(), and RemoveBubble().
|
private |
Definition at line 111 of file BubbleManager.h.
Referenced by BubbleManager(), clear(), ClearSystemBubbles(), Count(), MakeBubble(), Process(), and RemoveEmpty().
|
private |
Definition at line 103 of file BubbleManager.h.
Referenced by Initialize(), and Process().
Definition at line 109 of file BubbleManager.h.
Referenced by AddSpawnID(), GetBeltID(), and RemoveSpawnID().
|
private |
Definition at line 116 of file BubbleManager.h.
Referenced by BubbleManager(), ClearSystemBubbles(), FindBubble(), GetBubbleCenterMarkers(), GetBubbleCount(), MakeBubble(), MarkCenters(), RemoveBubble(), and RemoveMarkers().
|
private |
Definition at line 112 of file BubbleManager.h.
Referenced by BubbleManager(), and Process().
|
private |
Definition at line 104 of file BubbleManager.h.
Referenced by Initialize(), and Process().