summaryrefslogtreecommitdiff
path: root/indra/newview/llcompilequeue.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llcompilequeue.h')
-rw-r--r--indra/newview/llcompilequeue.h38
1 files changed, 30 insertions, 8 deletions
diff --git a/indra/newview/llcompilequeue.h b/indra/newview/llcompilequeue.h
index be7bbd5ceb..68e9a27266 100644
--- a/indra/newview/llcompilequeue.h
+++ b/indra/newview/llcompilequeue.h
@@ -64,6 +64,9 @@ public:
// start() returns TRUE if the queue has started, otherwise FALSE.
BOOL start();
+ // find an instance by ID. Return NULL if it does not exist.
+ static LLFloaterScriptQueue* findInstance(const LLUUID& id);
+
protected:
LLFloaterScriptQueue(const std::string& name, const LLRect& rect,
const std::string& title, const std::string& start_string);
@@ -92,9 +95,6 @@ protected:
// Get this instances ID.
const LLUUID& getID() const { return mID; }
-
- // find an instance by ID. Return NULL if it does not exist.
- static LLFloaterScriptQueue* findInstance(const LLUUID& id);
protected:
// UI
@@ -118,12 +118,29 @@ protected:
// This script queue will recompile each script.
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+struct LLCompileQueueData
+{
+ LLUUID mQueueID;
+ LLUUID mItemId;
+ LLCompileQueueData(const LLUUID& q_id, const LLUUID& item_id) :
+ mQueueID(q_id), mItemId(item_id) {}
+};
+
+class LLAssetUploadQueue;
+
class LLFloaterCompileQueue : public LLFloaterScriptQueue
{
public:
// Use this method to create a compile queue. Once created, it
// will be responsible for it's own destruction.
- static LLFloaterCompileQueue* create();
+ static LLFloaterCompileQueue* create(BOOL mono);
+
+ static void onSaveBytecodeComplete(const LLUUID& asset_id,
+ void* user_data,
+ S32 status);
+
+ // remove any object in mScriptScripts with the matching uuid.
+ void removeItemByItemID(const LLUUID& item_id);
protected:
LLFloaterCompileQueue(const std::string& name, const LLRect& rect);
@@ -139,6 +156,7 @@ protected:
void* user_data, S32 status, LLExtStat ext_status);
static void onSaveTextComplete(const LLUUID& asset_id, void* user_data, S32 status, LLExtStat ext_status);
+
static void onSaveBytecodeComplete(const LLUUID& asset_id,
void* user_data,
S32 status, LLExtStat ext_status);
@@ -149,14 +167,18 @@ protected:
// remove any object in mScriptScripts with the matching uuid.
void removeItemByAssetID(const LLUUID& asset_id);
- // save the items indicatd by the asset id.
- void saveItemByAssetID(const LLUUID& asset_id);
+ // save the items indicated by the item id.
+ void saveItemByItemID(const LLUUID& item_id);
- // find old_asst_id, and set the asset id to new_asset_id
- void updateAssetID(const LLUUID& old_asset_id, const LLUUID& new_asset_id);
+ // find InventoryItem given item id.
+ const LLInventoryItem* findItemByItemID(const LLUUID& item_id) const;
protected:
LLViewerInventoryItem::item_array_t mCurrentScripts;
+
+private:
+ BOOL mMono; // Compile to mono.
+ LLAssetUploadQueue* mUploadQueue;
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~