Files
Cesarus85--ringfall-mjolnir-vr/source/cache/texture_cache.h
T
Jonas VolmanandClaude Opus 5.5 6eef02f1b1 R2 batch 1a: admit xbox_texture_cache (first-party names, HCEX bitmap_data fields, owner headers)
- symbols.json: IDirect3DDevice8_IsBusy/KickPushBuffer and IDirect3DBaseTexture8_IsBusy
  are static (D3DINLINE is static __forceinline; none is a cachebeta public).
- Three invented static names replaced by first-party names from the 2001-09-25
  cachebeta-xbe linker map (atlas 7eacac85, re-anchored on 20 named symbols):
  texture_cache_name_block_proc, compare (also January atlas exact tier) and
  texture_cache_initialize_hardware_format.
- bitmap_group.h (shared, 45 includers): struct bitmap_data fields per HCEX
  (mipmap_pad, long pixels_offset/pixels_size/tag_index/cache_block_index);
  bink_playback.c and bitmaps.c adopt the names. The TU-local bitmap_data view
  and raw tag_get('bitm') prefix view in xbox_texture_cache.c are gone.
- texture_cache.h declares texture_cache_debug_render (render_debug.c had no
  prototype in scope). The Xbox-only public format mappers get the object's own
  header cache/xbox_texture_cache.h. Adding them to texture_cache.h regresses
  declaration-count-sensitive consumers (decals); this is disclosed in the header.
- Reviewer amendment: the invented pad member reserved006[2] in the TU-private
  texture struct is removed (natural alignment; HCEX texture_datum has no pad).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-24 15:12:09 -07:00

45 lines
757 B
C

/*
TEXTURE_CACHE.H
header included in hcex build.
*/
#ifndef __TEXTURE_CACHE_H
#define __TEXTURE_CACHE_H
#pragma once
/* ---------- constants */
/* ---------- macros */
/* ---------- structures */
struct bitmap_data;
/* ---------- prototypes/TEXTURE_CACHE.C */
void *_texture_cache_bitmap_get_hardware_format(
struct bitmap_data *bitmap,
boolean block,
boolean load);
void *texture_cache_bitmap_load(
struct bitmap_data *bitmap);
void texture_cache_new(
void);
void texture_cache_delete(
void);
void texture_cache_idle(
void);
void texture_cache_return_memory(
void);
void *texture_cache_steal_memory(
long size);
void texture_cache_debug_render(
void);
/* ---------- globals */
/* ---------- public code */
#endif // __TEXTURE_CACHE_H