metadata

package
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 13, 2026 License: GPL-3.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetRDBPath

func GetRDBPath(rdbName string) (string, error)

GetRDBPath returns the path to the RDB file for the given rdbName.

Types

type MetadataManager

type MetadataManager struct {
	// contains filtered or unexported fields
}

MetadataManager handles RDB and artwork downloads for one or more metadata variants (RDB + thumbnail repo pairs).

func NewMetadataManager

func NewMetadataManager(variants []coreif.MetadataVariant) *MetadataManager

NewMetadataManager creates a new metadata manager from the given variants.

func (*MetadataManager) DownloadRDB

func (m *MetadataManager) DownloadRDB() error

DownloadRDB downloads all variant RDB files from libretro-database. Downloads to a temp file first, then renames on success.

func (*MetadataManager) GetMD5ByCRC32

func (m *MetadataManager) GetMD5ByCRC32(crc32 uint32) string

GetMD5ByCRC32 searches all loaded RDBs for an MD5 hash matching the CRC32.

func (*MetadataManager) IsRDBLoaded

func (m *MetadataManager) IsRDBLoaded() bool

IsRDBLoaded returns true if any variant RDB is loaded.

func (*MetadataManager) LoadRDB

func (m *MetadataManager) LoadRDB() error

LoadRDB loads all variant RDB files into memory. Returns nil without error if a file doesn't exist.

func (*MetadataManager) LookupByCRC32

func (m *MetadataManager) LookupByCRC32(crc32 uint32) (*rdb.Game, int)

LookupByCRC32 looks up a game by CRC32 across all loaded RDBs. Returns the game and the variant index where it was found. Returns nil, -1 if not found or no RDB is loaded.

func (*MetadataManager) RDBExists

func (m *MetadataManager) RDBExists() bool

RDBExists checks if all variant RDB files exist on disk.

func (*MetadataManager) ResolveConsoleID

func (m *MetadataManager) ResolveConsoleID(variantIdx, defaultID int) int

ResolveConsoleID returns the console ID for a variant, falling back to defaultID when the variant has no override (zero value).

func (*MetadataManager) VariantCount

func (m *MetadataManager) VariantCount() int

VariantCount returns the number of metadata variants.

func (*MetadataManager) VariantName

func (m *MetadataManager) VariantName(idx int) string

VariantName returns the display name for a variant index.

func (*MetadataManager) VariantRDBName

func (m *MetadataManager) VariantRDBName(idx int) string

VariantRDBName returns the RDB name for a variant index.

func (*MetadataManager) VariantThumbnailRepo

func (m *MetadataManager) VariantThumbnailRepo(idx int) string

VariantThumbnailRepo returns the thumbnail repo name for a variant index.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL