2 #ifndef _YI_ASSET_DECODER_H_ 3 #define _YI_ASSET_DECODER_H_ 62 virtual std::shared_ptr<CYIAsset>
DecodeAsset(
const uint8_t *pData, uint32_t nDataSize,
const CYIAssetLoadParams *pDecodeParams =
nullptr) = 0;
69 virtual bool DecodeAsset(
const std::shared_ptr<CYIAsset> &pAsset) = 0;
75 virtual bool DecodeAsset(
const std::shared_ptr<CYIAsset> &pAsset,
const uint8_t *pData, uint32_t uDataSize) = 0;
100 #endif // _YI_ASSET_DECODER_H_
CYIString GetExtension() const
#define YI_DISALLOW_COPY_AND_ASSIGN(TypeName)
Delete the copy constructor and assignment operator (and consequently the move constructor as well) ...
Definition: YiPredef.h:114
Container class for Unicode strings. Conceptually, a CYIString object is a sequence of Unicode charac...
Definition: YiString.h:35
virtual bool SupportsParams(const CYIAssetLoadParams *pDecodeParams)
#define YI_TYPE_BASES(...)
Definition: YiRtti.h:350
CYIAssetDecoder(const CYIRuntimeTypeInfo &assetType)
virtual std::shared_ptr< CYIAsset > DecodeAsset(const CYIString &path, const CYIAssetLoadParams *pDecodeParams=nullptr)=0
virtual bool IsExtensionSupported(const CYIString &extension)
const std::vector< CYIString > & GetExtensions() const
Base class for decoders which can accept specialized parameter objects.
Definition: YiAssetLoadParams.h:16
const CYIRuntimeTypeInfo & m_AssetType
Definition: YiAssetDecoder.h:90
virtual bool SupportsType(const CYIRuntimeTypeInfo &assetType)
The abstract runtime representation of a C++ type.
Definition: YiRtti.h:48
std::vector< CYIString > m_SupportedExtensions
Definition: YiAssetDecoder.h:88
virtual bool IsFormatSupported(const uint8_t *pData, uint32_t nDataSize)=0
Base class for all specialized decoders.
Definition: YiAssetDecoder.h:22
virtual ~CYIAssetDecoder()