feat: Enhance Logging and Buffer Management in ROM and Editor Components
- Added critical logging for graphics buffer management in LoadAllGraphicsData to prevent data corruption during ROM loads. - Updated logging levels from INFO to DEBUG across various components for consistency and to reduce log verbosity. - Refactored texture creation and palette application logic to allow editors to manage their own rendering, improving flexibility and user experience. - Improved background buffer handling to ensure fresh bitmap creation only when necessary, optimizing performance. - Enhanced debugging output for canvas and performance tracking, aiding in better diagnostics during development.
This commit is contained in:
@@ -22,7 +22,7 @@ void CanvasPerformanceIntegration::Initialize(const std::string& canvas_id) {
|
||||
// Initialize performance profiler integration
|
||||
dashboard_ = &gfx::PerformanceDashboard::Get();
|
||||
|
||||
LOG_INFO("CanvasPerformance",
|
||||
LOG_DEBUG("CanvasPerformance",
|
||||
"Initialized performance integration for canvas: %s",
|
||||
canvas_id_.c_str());
|
||||
}
|
||||
@@ -34,7 +34,7 @@ void CanvasPerformanceIntegration::StartMonitoring() {
|
||||
frame_timer_active_ = true;
|
||||
frame_timer_ = std::make_unique<gfx::ScopedTimer>("canvas_frame_" + canvas_id_);
|
||||
|
||||
LOG_INFO("CanvasPerformance", "Started performance monitoring for canvas: %s",
|
||||
LOG_DEBUG("CanvasPerformance", "Started performance monitoring for canvas: %s",
|
||||
canvas_id_.c_str());
|
||||
}
|
||||
|
||||
@@ -57,7 +57,7 @@ void CanvasPerformanceIntegration::StopMonitoring() {
|
||||
frame_timer_active_ = false;
|
||||
}
|
||||
|
||||
LOG_INFO("CanvasPerformance", "Stopped performance monitoring for canvas: %s",
|
||||
LOG_DEBUG("CanvasPerformance", "Stopped performance monitoring for canvas: %s",
|
||||
canvas_id_.c_str());
|
||||
}
|
||||
|
||||
@@ -363,12 +363,12 @@ void CanvasPerformanceIntegration::AnalyzePerformance() {
|
||||
|
||||
// Log trends
|
||||
if (std::abs(frame_time_trend) > 1.0) {
|
||||
LOG_INFO("CanvasPerformance", "Canvas %s: Frame time trend: %.2f ms/sample",
|
||||
LOG_DEBUG("CanvasPerformance", "Canvas %s: Frame time trend: %.2f ms/sample",
|
||||
canvas_id_.c_str(), frame_time_trend);
|
||||
}
|
||||
|
||||
if (std::abs(memory_trend) > 1.0) {
|
||||
LOG_INFO("CanvasPerformance", "Canvas %s: Memory trend: %.2f MB/sample",
|
||||
LOG_DEBUG("CanvasPerformance", "Canvas %s: Memory trend: %.2f MB/sample",
|
||||
canvas_id_.c_str(), memory_trend);
|
||||
}
|
||||
}
|
||||
@@ -536,7 +536,7 @@ void CanvasPerformanceManager::RegisterIntegration(
|
||||
const std::string& canvas_id,
|
||||
std::shared_ptr<CanvasPerformanceIntegration> integration) {
|
||||
integrations_[canvas_id] = integration;
|
||||
LOG_INFO("CanvasPerformance",
|
||||
LOG_DEBUG("CanvasPerformance",
|
||||
"Registered performance integration for canvas: %s",
|
||||
canvas_id.c_str());
|
||||
}
|
||||
@@ -604,7 +604,7 @@ void CanvasPerformanceManager::ClearAllIntegrations() {
|
||||
integration->StopMonitoring();
|
||||
}
|
||||
integrations_.clear();
|
||||
LOG_INFO("CanvasPerformance", "Cleared all canvas performance integrations");
|
||||
LOG_DEBUG("CanvasPerformance", "Cleared all canvas performance integrations");
|
||||
}
|
||||
|
||||
} // namespace canvas
|
||||
|
||||
@@ -31,7 +31,7 @@ void CanvasUsageTracker::SetUsageMode(CanvasUsage usage) {
|
||||
// Record mode change interaction
|
||||
RecordInteraction(CanvasInteraction::kModeChange, GetUsageModeName(usage));
|
||||
|
||||
LOG_INFO("CanvasUsage", "Canvas %s: Usage mode changed to %s",
|
||||
LOG_DEBUG("CanvasUsage", "Canvas %s: Usage mode changed to %s",
|
||||
canvas_id_.c_str(), GetUsageModeName(usage).c_str());
|
||||
}
|
||||
}
|
||||
@@ -267,7 +267,7 @@ void CanvasUsageTracker::EndSession() {
|
||||
// Save final stats
|
||||
SaveCurrentStats();
|
||||
|
||||
LOG_INFO("CanvasUsage", "Canvas %s: Session ended. Duration: %s, Operations: %d",
|
||||
LOG_DEBUG("CanvasUsage", "Canvas %s: Session ended. Duration: %s, Operations: %d",
|
||||
canvas_id_.c_str(),
|
||||
FormatDuration(std::chrono::duration_cast<std::chrono::milliseconds>(
|
||||
std::chrono::steady_clock::now() - session_start_)).c_str(),
|
||||
@@ -352,7 +352,7 @@ CanvasUsageManager& CanvasUsageManager::Get() {
|
||||
void CanvasUsageManager::RegisterTracker(const std::string& canvas_id,
|
||||
std::shared_ptr<CanvasUsageTracker> tracker) {
|
||||
trackers_[canvas_id] = tracker;
|
||||
LOG_INFO("CanvasUsage", "Registered usage tracker for canvas: %s", canvas_id.c_str());
|
||||
LOG_DEBUG("CanvasUsage", "Registered usage tracker for canvas: %s", canvas_id.c_str());
|
||||
}
|
||||
|
||||
std::shared_ptr<CanvasUsageTracker> CanvasUsageManager::GetTracker(const std::string& canvas_id) {
|
||||
@@ -421,7 +421,7 @@ void CanvasUsageManager::ClearAllTrackers() {
|
||||
tracker->ClearHistory();
|
||||
}
|
||||
trackers_.clear();
|
||||
LOG_INFO("CanvasUsage", "Cleared all canvas usage trackers");
|
||||
LOG_DEBUG("CanvasUsage", "Cleared all canvas usage trackers");
|
||||
}
|
||||
|
||||
} // namespace canvas
|
||||
|
||||
@@ -85,7 +85,7 @@ bool LoadROMPaletteGroups(Rom* rom, CanvasPaletteManager& palette_manager) {
|
||||
}
|
||||
|
||||
palette_manager.palettes_loaded = true;
|
||||
LOG_INFO("Canvas", "Loaded %zu ROM palette groups",
|
||||
LOG_DEBUG("Canvas", "Loaded %zu ROM palette groups",
|
||||
palette_manager.rom_palette_groups.size());
|
||||
return true;
|
||||
|
||||
@@ -116,7 +116,7 @@ bool ApplyPaletteGroup(gfx::Bitmap* bitmap,
|
||||
}
|
||||
|
||||
Renderer::Get().UpdateBitmap(bitmap);
|
||||
LOG_INFO("Canvas", "Applied palette group %d, index %d to bitmap",
|
||||
LOG_DEBUG("Canvas", "Applied palette group %d, index %d to bitmap",
|
||||
group_index, palette_index);
|
||||
return true;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user