12 #ifndef hifi_BakeAssetTask_h
13 #define hifi_BakeAssetTask_h
17 #include <QtCore/QDebug>
18 #include <QtCore/QObject>
19 #include <QtCore/QRunnable>
23 #include <AssetUtils.h>
25 class BakeAssetTask :
public QObject,
public QRunnable {
28 BakeAssetTask(
const AssetUtils::AssetHash& assetHash,
const AssetUtils::AssetPath& assetPath,
const QString& filePath);
31 bool isBaking() {
return _isBaking.load(); }
32 bool wasAborted()
const {
return _wasAborted.load(); }
40 void bakeComplete(QString assetHash, QString assetPath, QString tempOutputDir);
41 void bakeFailed(QString assetHash, QString assetPath, QString errors);
42 void bakeAborted(QString assetHash, QString assetPath);
45 std::atomic<bool> _isBaking {
false };
46 AssetUtils::AssetHash _assetHash;
47 AssetUtils::AssetPath _assetPath;
49 std::unique_ptr<QProcess> _ovenProcess {
nullptr };
50 std::atomic<bool> _wasAborted {
false };