Files
SDL3CPlusPlus/src/services/impl/platform_service.hpp
johndoe6345789 00a359d85f refactor: Enhance service architecture by introducing IPlatformService and updating dependencies
- Removed core/platform.hpp and core/vulkan_utils.cpp, integrating their functionality into new platform_service implementations.
- Updated service registrations to utilize IPlatformService for improved modularity.
- Refactored event bus usage across services to leverage IEventBus interface.
- Enhanced buffer management in BufferService with detailed logging and error handling.
- Updated GUI rendering services to utilize buffer service for resource management.
- Cleaned up includes and improved overall code organization for better maintainability.
2026-01-04 17:43:18 +00:00

25 lines
642 B
C++

#pragma once
#include "../interfaces/i_platform_service.hpp"
#include "../interfaces/i_logger.hpp"
#include <memory>
namespace sdl3cpp::services::impl {
class PlatformService : public IPlatformService {
public:
explicit PlatformService(std::shared_ptr<ILogger> logger = nullptr);
~PlatformService() override = default;
std::optional<std::filesystem::path> GetUserConfigDirectory() const override;
std::string GetPlatformError() const override;
private:
std::shared_ptr<ILogger> logger_;
#ifdef _WIN32
std::string FormatWin32Error(unsigned long errorCode) const;
#endif
};
} // namespace sdl3cpp::services::impl