diff options
Diffstat (limited to 'indra/newview/llcompilequeue.h')
-rw-r--r-- | indra/newview/llcompilequeue.h | 38 |
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; }; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |