chore: auto-commit (799 archivos)
- .claude/CLAUDE.md - .claude/commands/subagentes.md - .claude/rules/INDEX.md - .mcp.json - bash/functions/cybersecurity/analyze_dns.md - bash/functions/cybersecurity/audit_http_headers.md - bash/functions/cybersecurity/audit_ssh_config.md - bash/functions/cybersecurity/check_firewall.md - bash/functions/cybersecurity/detect_suspicious_users.md - bash/functions/cybersecurity/encrypt_file.md - ... Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "bool fn_ui::app_menubar(const fn_ui::PanelToggle* panels, size_t count, fn_ui::LayoutCallbacks* layouts_cb)"
|
||||
description: "MainMenuBar ImGui completa con menu View (toggles de paneles) y menu Layouts (guardar/aplicar layouts persistentes). Punto de entrada unificado para la menubar de cualquier app fn_ui."
|
||||
tags: [imgui, ui, menu, panels, layouts, dockspace, menubar]
|
||||
tags: [imgui, ui, menu, panels, layouts, dockspace, menubar, pendiente-usar]
|
||||
uses_functions: ["app_about_cpp_core", "app_settings_cpp_core", "layouts_menu_cpp_core", "panel_menu_cpp_core", "log_window_cpp_core"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "bool fn::bezier_editor(const char* id, fn::BezierCurve& curve, ImVec2 size = {200,200}, bool lock_endpoints = true) + float fn::bezier_eval(const BezierCurve&, float t)"
|
||||
description: "Editor visual de una curva Bezier cubica (4 puntos de control). Permite diseñar easing curves custom arrastrando p1 y p2 (p0 y p3 fijos en (0,0) y (1,1)). Evaluacion via De Casteljau + sampling. Render en canvas ImGui usando tokens (primary, surface, border)."
|
||||
tags: [imgui, bezier, animation, easing, editor, canvas]
|
||||
tags: [imgui, bezier, animation, easing, editor, canvas, pendiente-usar]
|
||||
uses_functions:
|
||||
- tokens_cpp_core
|
||||
uses_types: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "ImGuiID docking_layout(DockPreset preset = DockPreset::Default)"
|
||||
description: "Configura un docking space con presets de layout predefinidos para dashboards"
|
||||
tags: [imgui, docking, layout, dashboard]
|
||||
tags: [imgui, docking, layout, dashboard, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "void fps_overlay()"
|
||||
description: "Renderiza un overlay de FPS y frametime en la esquina superior derecha, con soporte opcional de Tracy"
|
||||
tags: [imgui, fps, overlay, profiling, debug]
|
||||
tags: [imgui, fps, overlay, profiling, debug, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "void fn_ui::load_default_fonts(float size_px = 13.0f)"
|
||||
description: "Carga Karla-Regular (texto vectorial) + mergea Tabler Icons al mismo tamaño en el atlas de ImGui. Tras esta llamada los TI_* (icons_tabler.h) renderizan inline con el texto."
|
||||
tags: [imgui, fonts, icons, tabler, atlas, init]
|
||||
tags: [imgui, fonts, icons, tabler, atlas, init, pendiente-usar]
|
||||
uses_functions: ["app_settings_cpp_core"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.1.0"
|
||||
purity: impure
|
||||
signature: "fn_ui::LayoutStorage* layout_storage_open(const char*); void layout_storage_close(LayoutStorage*); std::vector<std::string> layout_storage_list(LayoutStorage*); bool layout_storage_save(LayoutStorage*, const std::string&); bool layout_storage_apply(LayoutStorage*, const std::string&); std::string layout_storage_apply_pending(LayoutStorage*); bool layout_storage_delete(LayoutStorage*, const std::string&); bool layout_storage_set_last_active(LayoutStorage*, const std::string&); std::string layout_storage_get_last_active(LayoutStorage*); void layout_storage_make_callbacks(LayoutStorage*, LayoutCallbacks&)"
|
||||
description: "Persistencia de layouts ImGui en SQLite con handle opaco. Una app abre el storage con un path, obtiene un LayoutCallbacks listo para pasar al menu de layouts (app_menubar/layouts_menu_items) y solo necesita llamar a layout_storage_apply_pending() al inicio de cada frame para activar layouts cargados. Persiste tambien el ultimo layout activo (tabla layout_meta) para restore-on-open."
|
||||
tags: [imgui, sqlite, layouts, persistence, dockspace, public-api]
|
||||
tags: [imgui, sqlite, layouts, persistence, dockspace, public-api, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "bool fn_ui::layout_storage_init(sqlite3* db); std::vector<std::string> fn_ui::layout_storage_list(sqlite3* db); bool fn_ui::layout_storage_save(sqlite3* db, const std::string& name, const std::string& blob); std::string fn_ui::layout_storage_load_blob(sqlite3* db, const std::string& name); bool fn_ui::layout_storage_delete(sqlite3* db, const std::string& name); bool fn_ui::layout_storage_exists(sqlite3* db, const std::string& name)"
|
||||
description: "Primitivas CRUD de bajo nivel para persistir layouts de ImGui (blobs INI) en una tabla SQLite 'ui_layouts'. La app construye el LayoutCallbacks de layouts_menu envolviendo estas primitivas junto a ImGui::Save/LoadIniSettingsToMemory."
|
||||
tags: [imgui, sqlite, layouts, persistence, crud, dockspace]
|
||||
tags: [imgui, sqlite, layouts, persistence, crud, dockspace, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "void memory_overlay()"
|
||||
description: "Renderiza un overlay de estadisticas de memoria (RSS, peak, vsize) en la esquina inferior derecha"
|
||||
tags: [imgui, memory, overlay, debug, dashboard, profiling]
|
||||
tags: [imgui, memory, overlay, debug, dashboard, profiling, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "ThreadPool::ThreadPool(int n_threads = 0); void ThreadPool::parallel_for(size_t begin, size_t end, fn(i)); void ThreadPool::parallel_for_chunks(size_t begin, size_t end, fn(tid, lo, hi))"
|
||||
description: "Pool de threads reutilizable con parallel_for por indice y parallel_for_chunks para acumulado por thread. Reparte rango contiguo por hw concurrency. Captura excepciones del worker y las relanza en el caller. Para Monte Carlo CPU multi-core."
|
||||
tags: [thread, parallel, concurrency, montecarlo, core]
|
||||
tags: [thread, parallel, concurrency, montecarlo, core, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "void plot_theme_dark() / void plot_theme_light() / void plot_theme_high_contrast() / void plot_theme_apply(const PlotTheme& theme)"
|
||||
description: "Gestiona temas y paletas de colores para ImPlot e ImGui, con presets dark/light/high-contrast y soporte para temas custom"
|
||||
tags: [theme, colors, palette, styling, dashboard]
|
||||
tags: [theme, colors, palette, styling, dashboard, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -8,7 +8,7 @@ version: 1.0.0
|
||||
purity: pure
|
||||
signature: "void fn_ui::selectable_text_wrapped(const char* text)"
|
||||
description: "Texto seleccionable y copiable (drag-to-select + Ctrl+C) para ventanas ImGui. Drop-in de ImGui::Text/TextWrapped cuando se quiere permitir copia. Tambien expone variantes ligeras con right-click → Copy."
|
||||
tags: [imgui, text, selectable, clipboard, copy, accessibility]
|
||||
tags: [imgui, text, selectable, clipboard, copy, accessibility, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "bool sidebar_begin(const char* title, bool* open, float width = 250.0f)"
|
||||
description: "Panel lateral colapsable para filtros y controles de dashboard"
|
||||
tags: [imgui, sidebar, panel, layout, dashboard, controls]
|
||||
tags: [imgui, sidebar, panel, layout, dashboard, controls, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "bool slider_float(const char* label, float* v, float min, float max, const char* fmt); bool slider_float_log(...); bool slider_int(const char* label, int* v, int min, int max, const char* fmt); bool slider_double(const char* label, double* v, double min, double max, const char* fmt)"
|
||||
description: "Slider ImGui con label muted arriba, estilo acorde con fn_tokens (radius, border, primary grab). Variantes float, float_log (logaritmico), int, double. Equivalente al <Slider> de Mantine / fn_library."
|
||||
tags: [imgui, slider, ui, tokens, mantine, core]
|
||||
tags: [imgui, slider, ui, tokens, mantine, core, pendiente-usar]
|
||||
uses_functions: ["tokens_cpp_core"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "void fn::sql_workbench(const char* id, sqlite3* db, fn::SqlWorkbenchState& state, ImVec2 size); bool fn::sql_workbench_run_query(sqlite3*, const char*, fn::SqlWorkbenchState&); void fn::sql_workbench_load_schema(sqlite3*, fn::SqlWorkbenchState&); void fn::sql_workbench_destroy(fn::SqlWorkbenchState&)"
|
||||
description: "Workbench SQL embebido en ImGui: editor con highlighting (text_editor + CodeLang::SQL), tabla de resultados (table_view), sidebar de schema (sqlite_master) e historial. Ejecuta queries contra una sqlite3* del caller (no abre/cierra la DB)."
|
||||
tags: [imgui, sql, sqlite, editor, table, dashboard, registry, debug]
|
||||
tags: [imgui, sql, sqlite, editor, table, dashboard, registry, debug, pendiente-usar]
|
||||
uses_functions: ["button_cpp_core", "sql_parse_cpp_core", "table_view_cpp_viz", "text_editor_cpp_core", "tokens_cpp_core"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "bool tab_container_begin(const char* id)"
|
||||
description: "Contenedor de tabs para organizar vistas multiples en un dashboard"
|
||||
tags: [imgui, tabs, container, layout, dashboard]
|
||||
tags: [imgui, tabs, container, layout, dashboard, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "TimeSeriesBuffer(size_t capacity)"
|
||||
description: "Ring buffer circular para datos de series temporales, optimizado para streaming de metricas en dashboards en tiempo real"
|
||||
tags: [buffer, timeseries, streaming, dashboard, data]
|
||||
tags: [buffer, timeseries, streaming, dashboard, data, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "bool fn::timeline_widget(const char* id, fn::TimelineState&, ImVec2 size = {-1,200}) + float fn::track_value_at(const Track&, float t) + void fn::timeline_update(TimelineState&, float dt)"
|
||||
description: "Widget tipo DAW: tracks horizontales con keyframes draggable, scrub, play/pause/loop, evaluacion track_value_at(time) interpolando entre keyframes con la Ease de cada keyframe destino. Estado puro (TimelineState) + render con tokens."
|
||||
tags: [imgui, timeline, animation, keyframes, daw, tween]
|
||||
tags: [imgui, timeline, animation, keyframes, daw, tween, pendiente-usar]
|
||||
uses_functions:
|
||||
- tokens_cpp_core
|
||||
- tween_curves_cpp_core
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "FN_ZONE(name) / FN_ZONE_COLOR(name, color) / FN_FRAME_MARK / FN_PLOT(name, val)"
|
||||
description: "Macros y constantes de conveniencia para Tracy profiling zones, compilables sin Tracy"
|
||||
tags: [tracy, profiling, debug, performance, raii]
|
||||
tags: [tracy, profiling, debug, performance, raii, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "double lgamma_lanczos(double x); double log_beta(double a, double b); double beta_pdf(double x, double a, double b); double beta_cdf(double x, double a, double b); double beta_quantile(double p, double a, double b); double beta_mean(double a, double b); double beta_variance(double a, double b); double beta_std(double a, double b)"
|
||||
description: "Distribucion Beta(a,b) completa: log-Gamma (Lanczos), log B(a,b), pdf, cdf (incomplete beta via continued fraction), quantile (bisection), mean/var/std. Para inferencia Bayesiana Beta-Binomial (mcmc-bayes / mcmc-full)."
|
||||
tags: [beta, distribution, bayesian, lgamma, incomplete_beta, datascience]
|
||||
tags: [beta, distribution, bayesian, lgamma, incomplete_beta, datascience, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "DrawdownResult drawdown_max(const double* equity, size_t n); void drawdown_series(const double* equity, size_t n, double* out)"
|
||||
description: "Max drawdown sobre serie de equity/balance: peak-to-trough absoluto y porcentual + indices del peak y trough relevantes. drawdown_series llena un array con el underwater chart (peak_so_far - equity[i] en cada punto)."
|
||||
tags: [drawdown, equity, finance, underwater, montecarlo, datascience]
|
||||
tags: [drawdown, equity, finance, underwater, montecarlo, datascience, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "McMetropolisHastingsGpu mc_mh_gpu_create(int m_chains, int n_samples_per_run, const std::string& target_log_pdf_glsl); void mc_mh_gpu_reset(...); void mc_mh_gpu_run(...); void mc_mh_gpu_readback_chains(...); void mc_mh_gpu_readback_accepts(...); void mc_mh_gpu_destroy(...)"
|
||||
description: "Metropolis-Hastings 1D paralelo en GPU: M cadenas independientes (1 thread = 1 chain). Target log-pdf inyectable como string GLSL (igual patron que gl_shader). Soporta u_user[16] para parametros sin recompilar."
|
||||
tags: [montecarlo, mcmc, metropolis, gpu, sampling, datascience]
|
||||
tags: [montecarlo, mcmc, metropolis, gpu, sampling, datascience, pendiente-usar]
|
||||
uses_functions: ["gl_loader_cpp_gfx", "gpu_ssbo_cpp_gfx", "gpu_compute_program_cpp_gfx", "gpu_dispatch_cpp_gfx", "gpu_rng_glsl_cpp_gfx"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "McRandomWalk2DGpu mc_rw2d_gpu_create(int m_walkers, int n_steps_per_run, const std::string& target_log_pdf_glsl); void mc_rw2d_gpu_reset(...); void mc_rw2d_gpu_run(...); void mc_rw2d_gpu_readback_trace(...); void mc_rw2d_gpu_readback_accepts(...); const Ssbo& mc_rw2d_gpu_trace_ssbo(const McRandomWalk2DGpu&); void mc_rw2d_gpu_destroy(...)"
|
||||
description: "Random walk 2D MH paralelo en GPU. Cada thread es un walker independiente; trace_xy se almacena como float[2*N] xy-interleaved compatible directamente con gpu_histogram_2d. Para mcmc-visualizer y joint posteriors."
|
||||
tags: [montecarlo, mcmc, random_walk, 2d, gpu, datascience]
|
||||
tags: [montecarlo, mcmc, random_walk, 2d, gpu, datascience, pendiente-usar]
|
||||
uses_functions: ["gl_loader_cpp_gfx", "gpu_ssbo_cpp_gfx", "gpu_compute_program_cpp_gfx", "gpu_dispatch_cpp_gfx", "gpu_rng_glsl_cpp_gfx"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "McSessionSim mc_session_sim_create(int n_sessions, int max_tiers); void mc_session_sim_reseed(McSessionSim&, uint64 seed); void mc_session_sim_run(McSessionSim&, const McSessionParams&); void mc_session_sim_readback_summary(const McSessionSim&, float* out); void mc_session_sim_readback_tier_counts(const McSessionSim&, unsigned int* out); void mc_session_sim_destroy(McSessionSim&)"
|
||||
description: "N sesiones independientes de K spins en paralelo en GPU (1 thread = 1 sesion). Implementa el modelo variable-ratio escalonado de vr_tiered_lab: tiers (q, m), modes Pure/Pity/Streak, miss_streak, drawdown. Output SSBOs: summary[N*8] + tier_counts[N*max_tiers]."
|
||||
tags: [montecarlo, gpu, simulation, vr_tiered, sessions, datascience]
|
||||
tags: [montecarlo, gpu, simulation, vr_tiered, sessions, datascience, pendiente-usar]
|
||||
uses_functions: ["gl_loader_cpp_gfx", "gpu_ssbo_cpp_gfx", "gpu_compute_program_cpp_gfx", "gpu_dispatch_cpp_gfx", "gpu_rng_glsl_cpp_gfx"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "MHResult mh_run_1d(const std::function<double(double)>& log_pdf, double x0, double sigma, size_t n, double* out, Rng&); MHResult mh_run_nd(const std::function<double(const double*)>& log_pdf, const double* x0, const double* sigma, int d, size_t n, double* out, Rng&)"
|
||||
description: "Metropolis-Hastings 1D y d-dimensional con proposal Gaussian symmetric. Target log-pdf inyectable via std::function (no necesita normalizarse). Devuelve cadena en out[] y accept rate. Pareja CPU del mc_metropolis_hastings_gpu."
|
||||
tags: [mcmc, metropolis, hastings, sampling, bayesian, datascience]
|
||||
tags: [mcmc, metropolis, hastings, sampling, bayesian, datascience, pendiente-usar]
|
||||
uses_functions: ["rng_cpp_datascience"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "double rhat(const double* chains, size_t m, size_t n); double rhat_split(const double* chains, size_t m, size_t n); double ess_basic(const double* chains, size_t m, size_t n, size_t max_lag, double cutoff)"
|
||||
description: "Diagnosticos multi-chain MCMC: Gelman-Rubin R-hat (clasico y split), y Effective Sample Size basico. Cadenas en layout row-major chains[j*n + i]. Convergencia tipica R_hat < 1.01."
|
||||
tags: [mcmc, rhat, ess, gelman_rubin, convergence, datascience]
|
||||
tags: [mcmc, rhat, ess, gelman_rubin, convergence, datascience, pendiente-usar]
|
||||
uses_functions: ["autocorr_cpp_datascience"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "void samples_to_grid_2d_counts(const double* x, const double* y, size_t n, double xmin, double xmax, double ymin, double ymax, int nx, int ny, unsigned int* out_counts); void samples_to_grid_2d_density(...float* out_density); void counts_to_density(const unsigned int* counts, int nx, int ny, float* out_density)"
|
||||
description: "Binning 2D CPU para alimentar heatmap_cpp_viz / contour_cpp_viz / surface_plot_3d desde un set de samples (x[], y[]). Variante counts (uint, acumulable) y density (float [0,1] normalizado a max). Pareja CPU del gpu_histogram_2d."
|
||||
tags: [binning, histogram_2d, density, heatmap, contour, datascience]
|
||||
tags: [binning, histogram_2d, density, heatmap, contour, datascience, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "double stats_sum(const double*, size_t); double stats_mean(const double*, size_t); double stats_min(const double*, size_t); double stats_max(const double*, size_t); double stats_variance(const double*, size_t, bool sample=true); double stats_std(const double*, size_t, bool sample=true); double stats_quantile(const double*, size_t, double p); double stats_quantile_sorted(const double*, size_t, double p); double stats_percentile(const double*, size_t, double pct); void stats_sort(const double*, size_t, double* out)"
|
||||
description: "Estadistica descriptiva pura sobre arrays double: sum (Kahan), mean, min, max, variance/std (Welford one-pass, sample/poblacional), quantile (R type-7) y percentile. stats_sort externalizable para evitar copias en queries multiples."
|
||||
tags: [stats, mean, variance, std, quantile, percentile, welford, datascience]
|
||||
tags: [stats, mean, variance, std, quantile, percentile, welford, datascience, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "GlTexture gl_texture_load(const char* path, bool flip_y, bool srgb)"
|
||||
description: "Carga PNG/JPG/BMP/TGA/HDR desde disco (o memoria) a una textura OpenGL lista para usar como sampler2D. Vendorea stb_image. Soporta sRGB (GL_SRGB8_ALPHA8) y HDR (GL_RGBA16F via stbi_loadf). Genera mipmaps automaticamente. flip_y=true por defecto coincide con la convencion UV de OpenGL."
|
||||
tags: [opengl, texture, image, png, jpg, hdr, stb_image, gfx]
|
||||
tags: [opengl, texture, image, png, jpg, hdr, stb_image, gfx, pendiente-usar]
|
||||
uses_functions: ["gl_loader_cpp_gfx"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "bool fn_gfx::gpu_check_caps(GpuCaps& out)"
|
||||
description: "Rellena GpuCaps con las capacidades del contexto OpenGL activo: vendor, renderer, version, limites de compute workgroup, flags has_compute_shader/has_storage_buffer, y version CUDA runtime (deteccion en compile-time via CUDART_VERSION). Requiere contexto GL activo. Retorna false si el contexto no esta disponible."
|
||||
tags: [gpu, opengl, cuda, caps, hardware, probe, gfx, compute, infra]
|
||||
tags: [gpu, opengl, cuda, caps, hardware, probe, gfx, compute, infra, pendiente-usar]
|
||||
uses_functions: ["gl_loader_cpp_gfx"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "GpuHistogram1D gpu_histogram_1d_create(int nbins); void gpu_histogram_1d_clear(GpuHistogram1D&); void gpu_histogram_1d_accumulate(GpuHistogram1D&, const Ssbo& samples, int count, float min, float max); void gpu_histogram_1d_readback(const GpuHistogram1D&, unsigned int* out); void gpu_histogram_1d_destroy(GpuHistogram1D&)"
|
||||
description: "Binner GPU 1D: SSBO float[N] -> SSBO uint[nbins] via atomicAdd en compute shader. Output listo para histogram_cpp_viz. Reusable across dispatches con clear/accumulate/readback."
|
||||
tags: [opengl, compute, histogram, atomic, gpu, gfx, montecarlo]
|
||||
tags: [opengl, compute, histogram, atomic, gpu, gfx, montecarlo, pendiente-usar]
|
||||
uses_functions: ["gl_loader_cpp_gfx", "gpu_ssbo_cpp_gfx", "gpu_compute_program_cpp_gfx", "gpu_dispatch_cpp_gfx"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "GpuHistogram2D gpu_histogram_2d_create(int nx, int ny); void gpu_histogram_2d_clear(GpuHistogram2D&); void gpu_histogram_2d_accumulate(GpuHistogram2D&, const Ssbo& samples_xy, int count, float xmin, float xmax, float ymin, float ymax); void gpu_histogram_2d_readback(const GpuHistogram2D&, unsigned int* out); void gpu_histogram_2d_to_density(const unsigned int* counts, int nx, int ny, float* out); void gpu_histogram_2d_destroy(GpuHistogram2D&)"
|
||||
description: "Binner GPU 2D: SSBO float[2*N] xy-interleaved -> SSBO uint[nx*ny] row-major via atomicAdd. Output normalizable a float[] para alimentar heatmap_cpp_viz / contour_cpp_viz."
|
||||
tags: [opengl, compute, histogram, atomic, gpu, gfx, heatmap, montecarlo]
|
||||
tags: [opengl, compute, histogram, atomic, gpu, gfx, heatmap, montecarlo, pendiente-usar]
|
||||
uses_functions: ["gl_loader_cpp_gfx", "gpu_ssbo_cpp_gfx", "gpu_compute_program_cpp_gfx", "gpu_dispatch_cpp_gfx"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "GpuReduce gpu_reduce_create(int max_n_samples); float gpu_reduce_run(GpuReduce&, ReduceOp op, const Ssbo& samples, int count); float gpu_reduce_mean(GpuReduce&, const Ssbo& samples, int count); void gpu_reduce_destroy(GpuReduce&)"
|
||||
description: "Reduccion paralela sobre SSBO float[]: sum, min, max, mean. Workgroup-shared tree reduction (local 256). Cada workgroup escribe un partial; reduccion final CPU-side sobre N/256 partials."
|
||||
tags: [opengl, compute, reduce, parallel, gpu, gfx]
|
||||
tags: [opengl, compute, reduce, parallel, gpu, gfx, pendiente-usar]
|
||||
uses_functions: ["gl_loader_cpp_gfx", "gpu_ssbo_cpp_gfx", "gpu_compute_program_cpp_gfx", "gpu_dispatch_cpp_gfx"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "std::string fn::cache_sha256::path_for(const std::string& root, const std::string& key, const std::string& suffix = \"\"); bool fn::cache_sha256::ensure_dir(const std::string& root, const std::string& key); bool fn::cache_sha256::read(const std::string& root, const std::string& key, const std::string& suffix, std::string* out); bool fn::cache_sha256::write(const std::string& root, const std::string& key, const std::string& suffix, const std::string& bytes); bool fn::cache_sha256::exists(const std::string& root, const std::string& key, const std::string& suffix)"
|
||||
description: "Cache addressable con layout '<root>/<key[0:2]>/<key><suffix>'. El caller hashea (tipicamente SHA-256 hex), esta funcion gestiona path + I/O. Suffix opcional permite multiples blobs por key (.html, .md, .json). Pieza extraida del jobs system de graph_explorer (issue 0026/0027) para reuso entre apps C++ que recolectan datos online."
|
||||
tags: [cache, sha256, addressable, jobs, fs, scraping]
|
||||
tags: [cache, sha256, addressable, jobs, fs, scraping, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "void candlestick(const char* title, const double* dates, const double* opens, const double* closes, const double* lows, const double* highs, int count, float width_percent = 0.25f, bool tooltip = true)"
|
||||
description: "Renderiza un grafico de velas OHLC usando ImPlot custom rendering. Verde para velas alcistas (close >= open), rojo para bajistas."
|
||||
tags: [implot, chart, visualization, gpu, candlestick, ohlc, finance]
|
||||
tags: [implot, chart, visualization, gpu, candlestick, ohlc, finance, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "void chord(const char* id, const float* matrix, int n, const char* const* labels, ImVec2 size)"
|
||||
description: "Chord diagram para matrices NxN de relaciones. Arcos circulares proporcionales a sum(row) + bandas curvas internas (bezier cubico) entre arcos."
|
||||
tags: [imgui, drawlist, chart, visualization, chord, matrix, relations]
|
||||
tags: [imgui, drawlist, chart, visualization, chord, matrix, relations, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "void contour(const char* id, const float* grid, int nx, int ny, const float* levels, int n_levels, ImVec2 size)"
|
||||
description: "Contour plot 2D usando marching squares clasico (16 casos) con interpolacion lineal entre celdas. Layout puro separado del render."
|
||||
tags: [imgui, drawlist, chart, visualization, contour, marching-squares, scalar-field]
|
||||
tags: [imgui, drawlist, chart, visualization, contour, marching-squares, scalar-field, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "void gauge(const char* label, float value, float min_val, float max_val, float radius = 60.0f)"
|
||||
description: "Renderiza un indicador circular tipo gauge/velocimetro usando ImGui draw primitives"
|
||||
tags: [imgui, visualization, gauge, kpi, dashboard]
|
||||
tags: [imgui, visualization, gauge, kpi, dashboard, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.1.0"
|
||||
purity: pure
|
||||
signature: "void histogram(const char* title, const float* values, int count, int bins = -1, float height = 200.0f)"
|
||||
description: "Histograma con bins automaticos, ejes lock (con AutoFit para bins dinamicos) y altura explicita"
|
||||
tags: [implot, chart, visualization, gpu, histogram, distribution, locked-axes]
|
||||
tags: [implot, chart, visualization, gpu, histogram, distribution, locked-axes, pendiente-usar]
|
||||
uses_functions: ["plot_static_cpp_viz"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: impure
|
||||
signature: "void mesh_viewer(const char* id, const MeshViewerConfig& cfg)"
|
||||
description: "Renderiza un MeshGpu (3D) en un FBO interno cacheado por id, con orbit camera, iluminacion Lambert headlight, opcion wireframe. Drag/wheel del mouse mueven la camara."
|
||||
tags: [imgui, opengl, mesh, 3d, viewer, viz, fbo]
|
||||
tags: [imgui, opengl, mesh, 3d, viewer, viz, fbo, pendiente-usar]
|
||||
uses_functions: ["gl_framebuffer_cpp_gfx", "gl_loader_cpp_gfx", "gl_shader_cpp_gfx", "mesh_gpu_cpp_gfx", "orbit_camera_cpp_core"]
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "void sankey(const char* id, const std::vector<SankeyNode>& nodes, const std::vector<SankeyLink>& links, ImVec2 size)"
|
||||
description: "Sankey diagram para flujos source -> target con magnitudes. BFS topologico para columnas, bandas curvas (bezier cubico) para los links."
|
||||
tags: [imgui, drawlist, chart, visualization, sankey, flow, dag]
|
||||
tags: [imgui, drawlist, chart, visualization, sankey, flow, dag, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "void scatter_3d(const char* title, const fn::Scatter3DConfig& cfg)"
|
||||
description: "Scatter 3D ImPlot3D con tamano y color opcional por punto, orbit/zoom/pan nativos"
|
||||
tags: [implot3d, chart, visualization, gpu, scatter, 3d, points]
|
||||
tags: [implot3d, chart, visualization, gpu, scatter, 3d, points, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "2.0.0"
|
||||
purity: pure
|
||||
signature: "void surface_plot_3d(const char* title, const fn::SurfacePlot3DConfig& cfg)"
|
||||
description: "Superficie 3D ImPlot3D — malla z[nx*ny] row-major + ranges X/Y, eje rotatorio drag-to-orbit"
|
||||
tags: [implot3d, chart, visualization, gpu, surface, 3d]
|
||||
tags: [implot3d, chart, visualization, gpu, surface, 3d, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "void treemap(const char* id, const std::vector<TreemapItem>& items, ImVec2 size)"
|
||||
description: "Squarified treemap (Bruls, Huijbrechts, van Wijk) para jerarquias planas con valores. Layout puro separado del render."
|
||||
tags: [imgui, drawlist, chart, visualization, treemap, hierarchy, squarified]
|
||||
tags: [imgui, drawlist, chart, visualization, treemap, hierarchy, squarified, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
@@ -7,7 +7,7 @@ version: "1.0.0"
|
||||
purity: pure
|
||||
signature: "void voronoi(const char* id, const ImVec2* seeds, int n, const ImU32* colors, ImVec2 size)"
|
||||
description: "Diagrama de Voronoi via raster brute-force (MVP). Para cada tile 4x4 px encontrar seed mas cercano y rellenar con su color."
|
||||
tags: [imgui, drawlist, chart, visualization, voronoi, raster]
|
||||
tags: [imgui, drawlist, chart, visualization, voronoi, raster, pendiente-usar]
|
||||
uses_functions: []
|
||||
uses_types: []
|
||||
returns: []
|
||||
|
||||
Reference in New Issue
Block a user