28 ::ll::TypedStorage<8, 64, ::std::unordered_map<::DimensionType, ::OwnerPtr<::Dimension>>> mDimensions;
29 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IDimensionFactory>
const> mDimensionFactory;
34 mOnNewDimensionCreatedPublisher;
35 ::ll::TypedStorage<8, 24, ::std::optional<::DimensionDefinitionGroup>> mDimensionDefinitions;
45 virtual ~DimensionManager() =
default;
47 virtual ::Bedrock::PubSub::Connector<void(
::Dimension&)>& getOnNewDimensionCreatedConnector() ;
53 MCAPI DimensionManager(
54 ::Bedrock::NotNullNonOwnerPtr<::IDimensionFactory> dimensionFactory,
55 ::std::optional<::DimensionDefinitionGroup> dimensionDefinitions
58 MCAPI
void forEachDimension(::std::function<
bool(
::Dimension&)> callback);
60 MCAPI ::WeakRef<::Dimension> getOrCreateDimension(::DimensionType dimensionType);
67 ::Bedrock::NotNullNonOwnerPtr<::IDimensionFactory> dimensionFactory,
68 ::std::optional<::DimensionDefinitionGroup> dimensionDefinitions
75 MCFOLD ::Bedrock::PubSub::Connector<void(
::Dimension&)>& $getOnNewDimensionCreatedConnector();