summaryrefslogtreecommitdiff
path: root/indra/newview/llmeshrepository.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llmeshrepository.h')
-rw-r--r--indra/newview/llmeshrepository.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/indra/newview/llmeshrepository.h b/indra/newview/llmeshrepository.h
index 8687ac750b..5b770994a8 100644
--- a/indra/newview/llmeshrepository.h
+++ b/indra/newview/llmeshrepository.h
@@ -157,6 +157,7 @@ public:
{
public:
//input params
+ S32* mDecompID;
std::string mStage;
std::vector<LLVector3> mPositions;
std::vector<U16> mIndices;
@@ -167,8 +168,12 @@ public:
std::vector<LLPointer<LLVertexBuffer> > mHullMesh;
LLModel::convex_hull_decomposition mHull;
+ //status message callback, called from decomposition thread
virtual S32 statusCallback(const char* status, S32 p1, S32 p2) = 0;
+
+ //completed callback, called from the main thread
virtual void completed() = 0;
+
virtual void setStatusMessage(const std::string& msg);
};
@@ -193,6 +198,9 @@ public:
void doDecompositionSingleHull();
virtual void run();
+
+ void completeCurrent();
+ void notifyCompleted();
std::map<std::string, S32> mStageID;
@@ -201,6 +209,8 @@ public:
LLPointer<Request> mCurRequest;
+ std::queue<LLPointer<Request> > mCompletedQ;
+
};
class LLMeshRepoThread : public LLThread