OdysseyDecomp/lib/al/Library/Resource/ResourceFunction.h

64 lines
3.6 KiB
C++

#pragma once
#include <basis/seadTypes.h>
#include <prim/seadSafeString.h>
namespace sead {
class Heap;
}
namespace al {
class ActorResource;
class ActorResourceHolder;
class Resource;
class SeadAudioPlayer;
void addResourceCategory(const sead::SafeString& resourceName, s32 category, sead::Heap* heap);
bool isEmptyCategoryResource(const sead::SafeString& resourceName);
void createCategoryResourceAll(const sead::SafeString& resourceName);
void removeResourceCategory(const sead::SafeString& resourceName);
const char* getResourceName(const Resource* resource);
const char* getResourcePath(const Resource* resource);
bool isExistResGraphicsFile(const Resource* resource);
Resource* findResource(const sead::SafeString& resourceName);
Resource* findOrCreateResource(const sead::SafeString& resourceName, const char* ext);
Resource* findOrCreateResourceCategory(const sead::SafeString& resourceName,
const sead::SafeString& category, const char* ext);
Resource* findOrCreateResourceEventData(const char* eventDataName, const char* resourceName);
Resource* findOrCreateResourceSystemData(const char* systemDataName, const char* resourceName);
ActorResource* findOrCreateActorResource(ActorResourceHolder* resourceHolder,
const char* actorResourceName, const char* suffix);
ActorResource* findOrCreateActorResourceWithAnimResource(ActorResourceHolder* resourceHolder,
const char* actorResourceName,
const char* animArc, const char* suffix,
bool isMergeAnim);
bool isExistResourceYaml(const Resource* resource, const char* resourceName, const char* suffix);
bool isExistResourceYaml(const ActorResource* actorResource, const char* resourceName,
const char* suffix);
const u8* findResourceYaml(const Resource* resource, const char* resourceName, const char* suffix);
const u8* findResourceYaml(const ActorResource* actorResource, const char* resourceName,
const char* suffix);
const void* tryFindStageParameterFileDesign(const sead::SafeString& stageName,
const sead::SafeString& fileName, s32);
void loadCategoryArchiveAll(const sead::SafeString& categoryName);
void setCurrentCategoryName(const char* categoryName);
void resetCurrentCategoryName();
void setCurrentCategoryNameDefault();
const u8* getBymlFromObjectResource(const sead::SafeString& objectName,
const sead::SafeString& categoryName);
const u8* tryGetBymlFromObjectResource(const sead::SafeString& objectName,
const sead::SafeString& categoryName);
const u8* getBymlFromLayoutResource(const sead::SafeString& layoutName,
const sead::SafeString& categoryName);
const u8* tryGetBymlFromLayoutResource(const sead::SafeString& layoutName,
const sead::SafeString& categoryName);
const u8* tryGetBymlFromArcName(const sead::SafeString& archiveName,
const sead::SafeString& categoryName);
const u8* getBymlFromArcName(const sead::SafeString& archiveName,
const sead::SafeString& categoryName);
const u8* getByml(const Resource* resource, const sead::SafeString& bymlName);
const u8* tryGetByml(const Resource* resource, const sead::SafeString& bymlName);
void setAudioPlayerToResourceSystem(SeadAudioPlayer* audioPlayerA, SeadAudioPlayer* audioPlayerB);
} // namespace al