27 using ComponentMap = ::std::unordered_map<::BlockPos, ::std::unique_ptr<::BaseCircuitComponent>>;
29 using ComponentsPerPosMap = ::std::unordered_map<::BlockPos, ::CircuitComponentList>;
31 using ComponentsPerChunkMap = ::std::unordered_map<::BlockPos, ::ChunkCircuitComponentList>;
37 ::ll::TypedStorage<8, 8, ::BaseCircuitComponent*> mRawComponentPtr;
38 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::BaseCircuitComponent>> mComponent;
39 ::ll::TypedStorage<4, 12, ::BlockPos> mPos;
58 ComponentMap mAllComponents;
59 ComponentsPerChunkMap mActiveComponentsPerChunk;
60 ComponentsPerPosMap mPowerAssociationMap;
61 ::std::unordered_map<::BlockPos, ::CircuitSceneGraph::PendingEntry> mPendingAdds;
62 ::std::unordered_map<::BlockPos, ::CircuitSceneGraph::PendingEntry> mPendingUpdates;
63 ::std::unordered_map<::BlockPos, ::std::vector<::BlockPos>> mComponentsToReEvaluate;
64 ::std::vector<::CircuitSceneGraph::PendingEntry> mPendingRemoves;
72 MCAPI
void add(
::BlockPos const& pos, ::std::unique_ptr<::BaseCircuitComponent> component);
76 MCAPI ::BaseCircuitComponent* getComponent(
::BlockPos const& pos, ::CircuitComponentType typeID);
78 MCAPI
void invalidatePos(
::BlockPos const& pos);
80 MCAPI
void preSetupPoweredBlocks(
::ChunkPos const& chunkPos);
82 MCAPI
void processPendingAdds();
84 MCAPI
void removeComponent(
::BlockPos const& pos);
86 MCAPI
void removeStaleRelationships();
Definition CircuitSceneGraph.h:33