| #ifndef _RIVE_VIEW_MODEL_INSTANCE_ASSET_BLOB_HPP_ | |
| #define _RIVE_VIEW_MODEL_INSTANCE_ASSET_BLOB_HPP_ | |
| #include "rive/generated/viewmodel/viewmodel_instance_asset_blob_base.hpp" | |
| #include "rive/refcnt.hpp" | |
| #include "rive/data_bind/data_values/data_value_integer.hpp" | |
| #include "rive/assets/blob_asset.hpp" | |
| #include <stdio.h> | |
| namespace rive | |
| { | |
| class ViewModelInstanceAssetBlob : public ViewModelInstanceAssetBlobBase | |
| { | |
| protected: | |
| void propertyValueChanged() override; | |
| public: | |
| ViewModelInstanceAssetBlob(); | |
| // Directly set the blob asset (e.g. from scripts). Marks propertyValue as a | |
| // sentinel to indicate the bytes were supplied directly rather than by id. | |
| void value(BlobAsset* blob); | |
| rcp<BlobAsset> asset() { return m_blobAsset; } | |
| Core* clone() const override; | |
| void applyValue(DataValueInteger*); | |
| private: | |
| rcp<BlobAsset> m_blobAsset = nullptr; | |
| }; | |
| } // namespace rive | |
| #endif |