polish metadata definitions
All checks were successful
Intrepid/Prometeu/Runtime/pipeline/pr-master This commit looks good
All checks were successful
Intrepid/Prometeu/Runtime/pipeline/pr-master This commit looks good
This commit is contained in:
parent
a16edcb257
commit
35c138fd86
@ -182,7 +182,7 @@ impl AssetManager {
|
||||
fn decode_glyph_bank_layout(
|
||||
entry: &AssetEntry,
|
||||
) -> Result<(TileSize, usize, usize, usize), String> {
|
||||
let meta = entry.metadata_as_glyphs()?;
|
||||
let meta = entry.metadata_as_glyph_bank()?;
|
||||
|
||||
let tile_size = match meta.tile_size {
|
||||
8 => TileSize::Size8,
|
||||
@ -624,7 +624,7 @@ impl AssetManager {
|
||||
entry: &AssetEntry,
|
||||
buffer: &[u8],
|
||||
) -> Result<SoundBank, String> {
|
||||
let meta = entry.metadata_as_sounds()?;
|
||||
let meta = entry.metadata_as_sound_bank()?;
|
||||
let sample_rate = meta.sample_rate;
|
||||
|
||||
let mut data = Vec::with_capacity(buffer.len() / 2);
|
||||
@ -913,7 +913,7 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_decode_glyph_bank_unpacks_packed_pixels_and_reads_palette_colors() {
|
||||
let entry = test_glyph_asset_entry("tiles", 2, 2);
|
||||
let entry = test_glyph_asset_entry("glyphs", 2, 2);
|
||||
let mut data = vec![0x10, 0x23];
|
||||
data.extend_from_slice(&[0u8; GLYPH_BANK_PALETTE_BYTES_V1]);
|
||||
data[2] = 0x34;
|
||||
@ -928,7 +928,7 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_decode_glyph_bank_rejects_short_packed_buffer() {
|
||||
let entry = test_glyph_asset_entry("tiles", 16, 16);
|
||||
let entry = test_glyph_asset_entry("glyphs", 16, 16);
|
||||
let data = vec![0u8; expected_glyph_payload_size(16, 16) - 1];
|
||||
|
||||
let err = match AssetManager::decode_glyph_bank_from_buffer(&entry, &data) {
|
||||
@ -941,7 +941,7 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_decode_glyph_bank_requires_palette_count_64() {
|
||||
let mut entry = test_glyph_asset_entry("tiles", 16, 16);
|
||||
let mut entry = test_glyph_asset_entry("glyphs", 16, 16);
|
||||
entry.metadata["palette_count"] = serde_json::json!(32);
|
||||
|
||||
let err =
|
||||
@ -955,14 +955,14 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_op_mode_for_glyphs_none_stages_in_memory() {
|
||||
let entry = test_glyph_asset_entry("tiles", 16, 16);
|
||||
let entry = test_glyph_asset_entry("glyphs", 16, 16);
|
||||
|
||||
assert_eq!(AssetManager::op_mode_for(&entry), Ok(AssetOpMode::StageInMemory));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_op_mode_for_glyphs_none_uses_typed_codec() {
|
||||
let entry = test_glyph_asset_entry("tiles", 16, 16);
|
||||
let entry = test_glyph_asset_entry("glyphs", 16, 16);
|
||||
assert_eq!(AssetManager::op_mode_for(&entry), Ok(AssetOpMode::StageInMemory));
|
||||
}
|
||||
|
||||
@ -992,7 +992,7 @@ mod tests {
|
||||
let sound_installer = Arc::clone(&banks) as Arc<dyn SoundBankPoolInstaller>;
|
||||
|
||||
let data = test_glyph_asset_data();
|
||||
let asset_entry = test_glyph_asset_entry("test_tiles", 16, 16);
|
||||
let asset_entry = test_glyph_asset_entry("test_glyphs", 16, 16);
|
||||
|
||||
let am = AssetManager::new(
|
||||
vec![asset_entry],
|
||||
@ -1030,7 +1030,7 @@ mod tests {
|
||||
let sound_installer = Arc::clone(&banks) as Arc<dyn SoundBankPoolInstaller>;
|
||||
|
||||
let data = test_glyph_asset_data();
|
||||
let asset_entry = test_glyph_asset_entry("test_tiles", 16, 16);
|
||||
let asset_entry = test_glyph_asset_entry("test_glyphs", 16, 16);
|
||||
|
||||
let am = AssetManager::new(
|
||||
vec![asset_entry],
|
||||
@ -1160,7 +1160,7 @@ mod tests {
|
||||
let sound_installer = Arc::clone(&banks) as Arc<dyn SoundBankPoolInstaller>;
|
||||
let data = test_glyph_asset_data();
|
||||
let am = AssetManager::new(
|
||||
vec![test_glyph_asset_entry("test_tiles", 16, 16)],
|
||||
vec![test_glyph_asset_entry("test_glyphs", 16, 16)],
|
||||
AssetsPayloadSource::from_bytes(data),
|
||||
gfx_installer,
|
||||
sound_installer,
|
||||
@ -1189,7 +1189,7 @@ mod tests {
|
||||
let sound_installer = Arc::clone(&banks) as Arc<dyn SoundBankPoolInstaller>;
|
||||
let data = test_glyph_asset_data();
|
||||
let am = AssetManager::new(
|
||||
vec![test_glyph_asset_entry("test_tiles", 16, 16)],
|
||||
vec![test_glyph_asset_entry("test_glyphs", 16, 16)],
|
||||
AssetsPayloadSource::from_bytes(data),
|
||||
gfx_installer,
|
||||
sound_installer,
|
||||
|
||||
@ -31,7 +31,7 @@ pub struct AssetEntry {
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Deserialize, Serialize)]
|
||||
pub struct GlyphsMetadata {
|
||||
pub struct GlyphBankMetadata {
|
||||
pub tile_size: u32,
|
||||
pub width: u32,
|
||||
pub height: u32,
|
||||
@ -40,13 +40,13 @@ pub struct GlyphsMetadata {
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Deserialize, Serialize)]
|
||||
pub struct SoundsMetadata {
|
||||
pub struct SoundBankMetadata {
|
||||
pub sample_rate: u32,
|
||||
pub channels: u32,
|
||||
}
|
||||
|
||||
impl AssetEntry {
|
||||
pub fn metadata_as_glyphs(&self) -> Result<GlyphsMetadata, String> {
|
||||
pub fn metadata_as_glyph_bank(&self) -> Result<GlyphBankMetadata, String> {
|
||||
if self.bank_type != BankType::GLYPH {
|
||||
return Err(format!(
|
||||
"Asset {} is not a GLYPH bank (type: {:?})",
|
||||
@ -57,7 +57,7 @@ impl AssetEntry {
|
||||
.map_err(|e| format!("Invalid GLYPH metadata for asset {}: {}", self.asset_id, e))
|
||||
}
|
||||
|
||||
pub fn metadata_as_sounds(&self) -> Result<SoundsMetadata, String> {
|
||||
pub fn metadata_as_sound_bank(&self) -> Result<SoundBankMetadata, String> {
|
||||
if self.bank_type != BankType::SOUNDS {
|
||||
return Err(format!(
|
||||
"Asset {} is not a SOUNDS bank (type: {:?})",
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user